Hvordan et tre predikerer
Tenk deg en nettbutikk som vil vite om et besøk ender i kjøp. En erfaren selger kunne sagt: «Kunder over 30 kjøper nesten alltid. For de yngre kommer det an på om de har vært innom flere ganger før.» Et beslutningstre lærer slike regler fra data i stedet for at noen skriver dem for hånd.
Treet består av noder. Hver indre beslutningsnode stiller ett spørsmål av formen : er feature mindre enn eller lik terskelen ? Valget av feature og terskel kalles en split. Ja-svar går til venstre og nei-svar til høyre, helt til observasjonen havner i en bladnode. For å predikere følger vi én sti fra roten og ned. Det regnes ingen vektet sum og ingen avstand, vi sammenligner bare tall med terskler.
Hva står i bladet? Under treningen havnet en gruppe treningspunkter i hvert blad. I klassifikasjon predikerer bladet majoritetsklassen blant dem, og predict_proba rapporterer klasseandelene. I regresjon predikerer bladet gjennomsnittet av målverdiene, som du ser i steg 4.
Hvilke terskler kan treet teste? For en numerisk feature sorterer algoritmen verdiene i noden og prøver midtpunktene mellom naboverdier som er ulike. Med verdiene er kandidatene og . En terskel på ville gitt nøyaktig samme inndeling som , så den trenger ikke testes. Hver split deler rommet med en linje parallelt med en akse, og beslutningsgrensen til et tre blir derfor alltid en trapp av akseparallelle biter.
Reglene koden skriver ut, er de samme som i figuren.
Et tre med to nivåer på kundedata
Prøv: Dra dybde ned til 1 og se hvilket spørsmål treet stiller alene, og dra alder for å følge «sti for den nye kunden» og «P(kjøp)».
RegneeksempelFølg to kunder gjennom treet i figuren og les av prediksjonen og sannsynligheten.Vis løsningSkjul løsning
Steg 1. Kunde A er 24 år og har 1 tidligere besøk. Roten spør «alder ≤ 30?»: ja, gå til venstre. Neste node spør «besøk ≤ 3?»: ja, gå til venstre igjen.
Steg 2. Dette bladet fikk 7 treningskunder, 6 uten kjøp og 1 med kjøp. Prediksjonen er majoritetsklassen «ikke kjøp», og sannsynligheten er .
Steg 3. Kunde B er 45 år og har 0 besøk. Roten sender henne til høyre, rett i et blad der alle 6 treningskundene kjøpte. Prediksjonen er «kjøp» med .
Steg 4. Legg merke til at treet aldri spurte om besøk for kunde B. Antall besøk betyr noe bare for de unge. Det er en vekselvirkning mellom alder og besøk, og treet fanget den uten at vi ba om det.
Featuren temperatur har verdiene og i en node. Hvilke terskler er det naturlig at treet tester?
Et blad i et klassifikasjonstre inneholdt 9 treningspunkter: 6 i klassen «godkjent» og 3 i klassen «avvist». Hvilken sannsynlighet for «godkjent» rapporterer treet for et nytt punkt som havner i dette bladet? Oppgi svaret med to desimaler.