Deling av noder
Under opplæring må vi finne det beste delingspunktet ved hver beslutningsnode. Når vi deler dataene inn i to noder, er målet at ulike klasser havner i separate noder.
- Beste tilfelle: alle datapunkter i en node tilhører samme klasse;
- Verste tilfelle: like mange datapunkter for hver klasse.
Gini-impuritet
For å måle hvor god en deling er, kan vi beregne Gini-impuritet. Dette er sannsynligheten for at hvis vi tilfeldig trekker to punkter fra en node (med tilbakelegging), vil de tilhøre forskjellige klasser. Jo lavere denne sannsynligheten (impuriteten) er, desto bedre er delingen.
Du kan beregne Gini-impuritet for binær klassifisering ved å bruke følgende formel:
gini=1−p02−p12=1−(mm0)2−(mm1)2Hvor
- mi – antall forekomster av klasse i i en node;
- m – antall forekomster i en node;
- pi=mmi – sannsynlighet for å velge klasse i.
Og for multiklasse-klassifisering er formelen:
gini=1−i=0∑Cpi2=1−i=0∑C(mmi)2Hvor
- C – antall klasser.
Kvaliteten på delingen kan måles ved å ta vektet sum av Gini-verdier for begge nodene som oppnås etter en deling. Dette er verdien vi ønsker å minimere.
For å dele en beslutningsnode må vi finne en egenskap å dele på og terskelen:
Ved et beslutningspunkt finner algoritmen grådig den beste terskelen for hver egenskap. Deretter velger den delingen med lavest Gini-impuritet blant alle egenskaper (ved likhet velges tilfeldig).
Entropi
Entropi er et annet mål på impuritet. For et binært klassifiseringsproblem beregnes entropien H til en node med formelen:
H(p)=−plog2(p)−(1−p)log2(1−p)hvor:
- p er andelen positive eksempler (klasse 1);
- 1−p er andelen negative eksempler (klasse 0).
For et multiklasse-klassifiseringsproblem beregnes entropien H til en node med formelen:
H(p1,p2,…,pk)=−i=1∑kpilog2(pi)hvor:
- k er antall klasser;
- pi er andelen eksempler som tilhører klasse i i noden.
På samme måte som for Gini-impuritet kan vi måle hvor god en deling er ved å beregne vektet sum av entropiverdier for barne-nodene som oppstår etter delingen. Dette er verdien vi ønsker å minimere for å maksimere informasjonsgevinsten.
Entropien er maksimal når alle klasser er likt representert. Den er minimal (0) når alle eksempler tilhører én klasse (rent node).
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 4.17
Deling av noder
Sveip for å vise menyen
Under opplæring må vi finne det beste delingspunktet ved hver beslutningsnode. Når vi deler dataene inn i to noder, er målet at ulike klasser havner i separate noder.
- Beste tilfelle: alle datapunkter i en node tilhører samme klasse;
- Verste tilfelle: like mange datapunkter for hver klasse.
Gini-impuritet
For å måle hvor god en deling er, kan vi beregne Gini-impuritet. Dette er sannsynligheten for at hvis vi tilfeldig trekker to punkter fra en node (med tilbakelegging), vil de tilhøre forskjellige klasser. Jo lavere denne sannsynligheten (impuriteten) er, desto bedre er delingen.
Du kan beregne Gini-impuritet for binær klassifisering ved å bruke følgende formel:
gini=1−p02−p12=1−(mm0)2−(mm1)2Hvor
- mi – antall forekomster av klasse i i en node;
- m – antall forekomster i en node;
- pi=mmi – sannsynlighet for å velge klasse i.
Og for multiklasse-klassifisering er formelen:
gini=1−i=0∑Cpi2=1−i=0∑C(mmi)2Hvor
- C – antall klasser.
Kvaliteten på delingen kan måles ved å ta vektet sum av Gini-verdier for begge nodene som oppnås etter en deling. Dette er verdien vi ønsker å minimere.
For å dele en beslutningsnode må vi finne en egenskap å dele på og terskelen:
Ved et beslutningspunkt finner algoritmen grådig den beste terskelen for hver egenskap. Deretter velger den delingen med lavest Gini-impuritet blant alle egenskaper (ved likhet velges tilfeldig).
Entropi
Entropi er et annet mål på impuritet. For et binært klassifiseringsproblem beregnes entropien H til en node med formelen:
H(p)=−plog2(p)−(1−p)log2(1−p)hvor:
- p er andelen positive eksempler (klasse 1);
- 1−p er andelen negative eksempler (klasse 0).
For et multiklasse-klassifiseringsproblem beregnes entropien H til en node med formelen:
H(p1,p2,…,pk)=−i=1∑kpilog2(pi)hvor:
- k er antall klasser;
- pi er andelen eksempler som tilhører klasse i i noden.
På samme måte som for Gini-impuritet kan vi måle hvor god en deling er ved å beregne vektet sum av entropiverdier for barne-nodene som oppstår etter delingen. Dette er verdien vi ønsker å minimere for å maksimere informasjonsgevinsten.
Entropien er maksimal når alle klasser er likt representert. Den er minimal (0) når alle eksempler tilhører én klasse (rent node).
Takk for tilbakemeldingene dine!