Opdeling af Noderne
Stryg for at vise menuen
Under træning skal vi finde det bedste split ved hver beslutningsnode. Når vi opdeler data i to noder, sigter vi efter, at forskellige klasser er i separate noder.
- Bedste scenarie: alle datapunkter i en node tilhører samme klasse;
- Værste scenarie: et lige antal datapunkter for hver klasse.
Gini-urenhed
For at måle hvor god en opdeling er, kan vi beregne Gini-urenheden. Det er sandsynligheden for, at hvis vi tilfældigt vælger to punkter fra en node (med tilbagelægning), vil de tilhøre forskellige klasser. Jo lavere denne sandsynlighed (urenhed) er, desto bedre er opdelingen.
Du kan beregne Gini-urenheden for binær klassifikation ved hjælp af følgende formel:
gini=1−p02−p12=1−(mm0)2−(mm1)2Hvor
- mi - antal forekomster af klasse i i en node;
- m - antal forekomster i en node;
- pi=mmi - sandsynlighed for at vælge klasse i.
Og for multiklassifikation er formlen:
gini=1−i=0∑Cpi2=1−i=0∑C(mmi)2Hvor
- C - antal klasser.
Vi kan måle, hvor god opdelingen er, ved at tage den vægtede sum af Gini-scorer for begge noder opnået fra en opdeling. Det er den værdi, vi ønsker at minimere.
For at opdele en beslutningsnode skal vi finde en egenskab at opdele på og tærskelværdien:
Ved et beslutningspunkt finder algoritmen grådigt den bedste tærskelværdi for hver funktion. Derefter vælger den det split med lavest Gini-urenhed blandt alle funktioner (hvis der er lighed, vælges tilfældigt).
Entropi
Entropi er et andet mål for urenhed. For et binært klassifikationsproblem beregnes entropien H for en node ved hjælp af formlen:
H(p)=−plog2(p)−(1−p)log2(1−p)hvor:
- p er andelen af positive eksempler (klasse 1);
- 1−p er andelen af negative eksempler (klasse 0).
For et multiklasse-klassifikationsproblem beregnes entropien H for en node ved hjælp af formlen:
H(p1,p2,…,pk)=−i=1∑kpilog2(pi)hvor:
- k er antallet af klasser;
- pi er andelen af eksempler, der tilhører klasse i i noden.
På samme måde som Gini-impuritet kan vi måle, hvor god en opdeling er, ved at beregne den vægtede sum af entropiværdier for de børnenoder, der opnås fra opdelingen. Dette er den værdi, vi ønsker at minimere for at maksimere informationsgevinsten.
Entropien er maksimal, når alle klasser er lige repræsenteret. Den er minimal (0), når alle eksempler tilhører én klasse (rent node).
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat