Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Aufteilen der Knoten | Entscheidungsbaum
Klassifikation mit Python

Aufteilen der Knoten

Swipe um das Menü anzuzeigen

Während des Trainings muss die beste Aufteilung an jedem Entscheidungs-Knoten gefunden werden. Beim Aufteilen der Daten in zwei Knoten wird angestrebt, dass unterschiedliche Klassen in getrennten Knoten liegen.

goodbadsplit
  • Bestes Szenario: Alle Datenpunkte in einem Knoten gehören zur gleichen Klasse;
  • Schlechtestes Szenario: Eine gleiche Anzahl von Datenpunkten für jede Klasse.

Gini-Unreinheit

Um zu messen, wie gut eine Aufteilung ist, kann die Gini-Unreinheit berechnet werden. Sie gibt die Wahrscheinlichkeit an, dass bei zufälliger Auswahl von zwei Punkten aus einem Knoten (mit Zurücklegen) diese verschiedenen Klassen angehören. Je niedriger diese Wahrscheinlichkeit (Unreinheit), desto besser ist die Aufteilung.

ginis

Die Gini-Unreinheit für die binäre Klassifikation kann mit folgender Formel berechnet werden:

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

Dabei gilt:

  • mim_i – Anzahl der Instanzen der Klasse ii in einem Knoten;
  • mm – Anzahl der Instanzen in einem Knoten;
  • pi=mimp_i = \frac{m_i}{m} – Wahrscheinlichkeit, die Klasse ii auszuwählen.

Und für die Multiklassen-Klassifikation lautet die Formel:

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

Dabei gilt:

  • CC – Anzahl der Klassen.

Die Qualität der Aufteilung kann durch die gewichtete Summe der Gini-Werte für beide durch die Aufteilung entstandenen Knoten gemessen werden. Dieser Wert soll minimiert werden.

Um einen Entscheidungsbaumknoten zu teilen, muss ein Merkmal und ein Schwellenwert für die Aufteilung gefunden werden:

Merkmals-Schwellenwert

An einem Entscheidungs-Knoten sucht der Algorithmus gierig nach dem besten Schwellenwert für jedes Merkmal. Anschließend wählt er die Aufteilung mit der geringsten Gini-Unreinheit unter allen Merkmalen aus (bei Gleichstand erfolgt die Auswahl zufällig).

SplitSearch2

Entropie

Die Entropie ist ein weiteres Maß für die Unreinheit. Für ein binäres Klassifikationsproblem wird die Entropie HH eines Knotens mit folgender Formel berechnet:

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

wobei:

  • pp der Anteil der positiven Beispiele (Klasse 1) ist;
  • 1p1 - p der Anteil der negativen Beispiele (Klasse 0) ist.

Für ein multiklassiges Klassifikationsproblem wird die Entropie HH eines Knotens mit folgender Formel berechnet:

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)

wobei:

  • kk die Anzahl der Klassen ist;
  • pip_i der Anteil der Beispiele ist, die zur Klasse ii im Knoten gehören.

Ähnlich wie bei der Gini-Unreinheit kann die Qualität einer Aufteilung gemessen werden, indem die gewichtete Summe der Entropiewerte für die durch die Aufteilung entstandenen Kindknoten berechnet wird. Dieser Wert soll minimiert werden, um den Informationsgewinn zu maximieren.

Note
Hinweis

Die Entropie ist maximal, wenn alle Klassen gleichmäßig vertreten sind. Sie ist minimal (0), wenn alle Beispiele zu einer Klasse gehören (reiner Knoten).

question mark

Wähle eine bessere Aufteilung.

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 2

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Abschnitt 3. Kapitel 2
some-alt