Hulp nodig bij het begrijpen van de output van het bouwen van een classificatie boom

stemmen
0

Ik ben het beoefenen van het nemen van beslissingen bomen met behulp van het pakket genaamd 'boom'.

#install.packages(ISLR)
set.seed(666)
library(ISLR)
index=sample(1:nrow(OJ),800,replace=F)
OJtrain=OJ[index,]
OJtest=OJ[-index,]
#install.packages(tree)
library(tree)
OJtraintree=tree(Purchase~.,data=OJtrain)
OJtraintree

De output van deze is:

node), split, n, deviance, yval, (yprob)
      * denotes terminal node

1) root 800 1073.00 CH ( 0.60625 0.39375 )  
   2) LoyalCH < 0.508643 353  415.10 MM ( 0.27479 0.72521 )  
     4) LoyalCH < 0.277977 161  112.80 MM ( 0.11180 0.88820 )  
       8) LoyalCH < 0.035047 55    0.00 MM ( 0.00000 1.00000 ) *
       9) LoyalCH > 0.035047 106   96.58 MM ( 0.16981 0.83019 ) *
     5) LoyalCH > 0.277977 192  260.10 MM ( 0.41146 0.58854 )  
      10) PriceDiff < 0.195 84   84.62 MM ( 0.20238 0.79762 )  
        20) SpecialCH < 0.5 67   49.01 MM ( 0.11940 0.88060 ) *
        21) SpecialCH > 0.5 17   23.51 CH ( 0.52941 0.47059 ) *
      11) PriceDiff > 0.195 108  147.30 CH ( 0.57407 0.42593 ) *
   3) LoyalCH > 0.508643 447  348.80 CH ( 0.86801 0.13199 )  
     6) LoyalCH < 0.764572 189  214.20 CH ( 0.74603 0.25397 )  
      12) PriceDiff < -0.165 33   43.26 MM ( 0.36364 0.63636 ) *
      13) PriceDiff > -0.165 156  143.70 CH ( 0.82692 0.17308 )  
        26) PriceDiff < 0.265 86   99.88 CH ( 0.73256 0.26744 ) *
        27) PriceDiff > 0.265 70   30.66 CH ( 0.94286 0.05714 ) *
     7) LoyalCH > 0.764572 258   90.94 CH ( 0.95736 0.04264 ) *

Ik begrijp dat de rijen met sterretjes aan de boom zijn terminal knooppunten. Ik heb moeite om de andere dingen te volgen. Gebruik rij 7 als voorbeeld, ik weet dat LoyalCH> 0,764572 'is waar de beslissingsboom splitst en takken naar de eindknoop, en CH de kwalitatieve waarde van de eindknoop waar klanten groter is dan 76,4572% trouw CH (het data wordt voorgeladen met de islr pakket, CH is een sap merk). Ik ga ervan uit 258 wordt verondersteld om het aantal data punten die de wind in die terminal node. Ik weet dat 90,94 wordt verondersteld om goedheid van fit te beschrijven aan het model, maar ik ben een beetje verward over het concept van afwijkend gedrag. Is een hogere waarde van afwijking slecht? Does 90.94 geven aan dat het een zwakkere fit? Wat betreft de cijfers tussen haakjes, ik ben te begrijpen dat 0,95736 is de waarschijnlijkheid van elk gegevenspunt in deze branche kiezen CH?

De vraag is gesteld op 19/03/2020 om 22:06
bron van user
In andere talen...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more