Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Deling av noder | Beslutningstre
Klassifisering med Python

bookDeling 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=1p02p12=1(m0m)2(m1m)2\text{gini} = 1 - p_0^2 - p_1^2 = 1 - (\frac{m_0}{m})^2 - (\frac{m_1}{m})^2

Hvor

  • mim_i – antall forekomster av klasse ii i en node;
  • mm – antall forekomster i en node;
  • pi=mimp_i = \frac{m_i}{m} – sannsynlighet for å velge klasse ii.

Og for multiklasse-klassifisering er formelen:

gini=1i=0Cpi2=1i=0C(mim)2\text{gini} = 1 - \sum_{i=0}^C p_i^2 = 1 - \sum_{i=0}^C(\frac{m_i}{m})^2

Hvor

  • CC – 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 HH til en node med formelen:

H(p)=plog2(p)(1p)log2(1p)H(p) = -p \log_2(p) - (1 - p) \log_2(1 - p)

hvor:

  • pp er andelen positive eksempler (klasse 1);
  • 1p1 - p er andelen negative eksempler (klasse 0).

For et multiklasse-klassifiseringsproblem beregnes entropien HH til en node med formelen:

H(p1,p2,,pk)=i=1kpilog2(pi)H(p_1, p_2, \dots, p_k) = -\sum_{i=1}^{k} p_i \log_2(p_i)

hvor:

  • kk er antall klasser;
  • pip_i er andelen eksempler som tilhører klasse ii 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.

Note
Merk

Entropien er maksimal når alle klasser er likt representert. Den er minimal (0) når alle eksempler tilhører én klasse (rent node).

question mark

Velg et bedre splitt.

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 2

Spør AI

expand

Spør AI

ChatGPT

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

bookDeling 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=1p02p12=1(m0m)2(m1m)2\text{gini} = 1 - p_0^2 - p_1^2 = 1 - (\frac{m_0}{m})^2 - (\frac{m_1}{m})^2

Hvor

  • mim_i – antall forekomster av klasse ii i en node;
  • mm – antall forekomster i en node;
  • pi=mimp_i = \frac{m_i}{m} – sannsynlighet for å velge klasse ii.

Og for multiklasse-klassifisering er formelen:

gini=1i=0Cpi2=1i=0C(mim)2\text{gini} = 1 - \sum_{i=0}^C p_i^2 = 1 - \sum_{i=0}^C(\frac{m_i}{m})^2

Hvor

  • CC – 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 HH til en node med formelen:

H(p)=plog2(p)(1p)log2(1p)H(p) = -p \log_2(p) - (1 - p) \log_2(1 - p)

hvor:

  • pp er andelen positive eksempler (klasse 1);
  • 1p1 - p er andelen negative eksempler (klasse 0).

For et multiklasse-klassifiseringsproblem beregnes entropien HH til en node med formelen:

H(p1,p2,,pk)=i=1kpilog2(pi)H(p_1, p_2, \dots, p_k) = -\sum_{i=1}^{k} p_i \log_2(p_i)

hvor:

  • kk er antall klasser;
  • pip_i er andelen eksempler som tilhører klasse ii 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.

Note
Merk

Entropien er maksimal når alle klasser er likt representert. Den er minimal (0) når alle eksempler tilhører én klasse (rent node).

question mark

Velg et bedre splitt.

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 2
some-alt