Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Ylisovittamisen Estäminen Päätöspuissa | Päätöspuu
Luokittelu Pythonilla

Ylisovittamisen Estäminen Päätöspuissa

Pyyhkäise näyttääksesi valikon

Ennen kuin siirrytään Decision Treen toteuttamiseen Pythonilla, on tärkeää käsitellä aihetta: ylisovittaminen – Decision Treen keskeinen haaste.

meme+friends

Alla on esimerkki siitä, miten Decision Tree sovittaa aineiston. Huomaa, kuinka malli mukautuu opetusaineistoon, tunnistaen sen rakenteet ja yksityiskohdat:

DecisionBoundaryTree

Vaikka malli sovittaa täydellisesti opetusjoukon ilman yhtään virheellistä luokitusta, ongelmana on, että päätösrajat ovat liian monimutkaisia. Tämän seurauksena testijoukon (tai ristiinvalidoinnin) tarkkuus on huomattavasti alhaisempi kuin opetusjoukon tarkkuus, mikä osoittaa, että malli ylisovittaa.

Tämä johtuu siitä, että malli tekee niin monta jakoa kuin tarvitaan sovittaakseen opetusdatan täydellisesti.

Onneksi päätöspuu on erittäin muokattavissa, joten voimme säätää sen hyperparametreja ylisovittamisen minimoimiseksi.

Puun maksimisyvyys

Solmun syvyys on pystysuora etäisyys solmusta juurisolmuun.

Puun syvyys

Voimme rajoittaa päätöspuun enimmäissyvyyttä, jolloin puusta tulee pienempi ja ylisovittamisen riski pienenee. Tämä tehdään muuttamalla enimmäissyvyyden päätössolmut lehtisolmuiksi.

Puun syvyysanimaatio

Tässä on myös gif-animaatio, joka näyttää, miten päätösraja muuttuu eri maksimisyvyyksillä:

DecisionBoundaryTreeAnimation

Vähimmäismäärä havaintoja

Toinen tapa rajoittaa puuta on asettaa vähimmäismäärä havaintoja lehtisolmuille. Tämä tekee mallista yksinkertaisemman ja kestävämmän poikkeaville arvoille.

TreeDepthAnimationLeaf

Tässä näkyy, miten tämä hyperparametri vaikuttaa päätösrajapintaan:

DecisionBoundaryTreeLeaf

Molemmat näistä hyperparametreista ovat käytettävissä scikit-learnin Decision Tree -toteutuksessa.
Oletuksena puu on rajoittamaton: max_depth on asetettu arvoon None, eli syvyydelle ei ole rajoitusta, ja min_samples_leaf on asetettu arvoon 1.

question mark

Valitse VÄÄRÄ väittämä.

Valitse oikea vastaus

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 3

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 3. Luku 3
some-alt