Deling av noder
Under opplæring må vi finne det beste delingspunktet ved hver beslutningsnode. Når vi deler dataene i to noder, ønsker vi at ulike klasser skal havne 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)2Der
- 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)2Der
- C - antall klasser.
Vi kan måle hvor god delingen er ved å ta vektet sum av Gini-verdier for begge nodene som oppnås etter en deling. Dette er verdien vi ønsker å minimere.
For å splitte en beslutningsnode må vi finne et trekk å splitte 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 med 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
Fantastisk!
Completion rate forbedret til 3.33
Deling av noder
Sveip for å vise menyen
Under opplæring må vi finne det beste delingspunktet ved hver beslutningsnode. Når vi deler dataene i to noder, ønsker vi at ulike klasser skal havne 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)2Der
- 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)2Der
- C - antall klasser.
Vi kan måle hvor god delingen er ved å ta vektet sum av Gini-verdier for begge nodene som oppnås etter en deling. Dette er verdien vi ønsker å minimere.
For å splitte en beslutningsnode må vi finne et trekk å splitte 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 med 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!