Bedingungstypen

In diesem Modul geht es um verschiedene Arten von conditions, die zum Erstellen von Entscheidungsbäumen verwendet werden.

Achsenausrichtung im Vergleich zu schrägen Bedingungen

Eine auf Achsen ausgerichtete Bedingung bezieht sich nur auf ein einzelnes Element. Eine schräge Bedingung umfasst mehrere Elemente. Das folgende Beispiel zeigt eine auf Achse ausgerichtete Bedingung:

num_legs ≥ 2

Folgendes ist eine schräge Bedingung:

num_legs ≥ num_fingers

Häufig werden Entscheidungsbäume nur mit Bedingungen trainiert, die Achsen ausgerichtet sind. Schräge Aufteilungen sind jedoch leistungsfähiger, da sie komplexere Muster ausdrücken können. Schräge Splits liefern manchmal bessere Ergebnisse, allerdings auf Kosten höherer Trainings- und Inferenzkosten.

YDF-Code
In YDF werden Entscheidungsbäume standardmäßig mit einer achsenbündigen Bedingung trainiert. Sie können Entscheidungsbäume mit dem Parameter split_axis="SPARSE_OBLIQUE" aktivieren.

Die achsenbasierte Bedingung ist „num_legs >= 3“. Die schräge Bedingung lautet „num_legs + weight * 5 >= 12“.

Abbildung 4. Beispiele für eine achsenbasierte und eine schräge Bedingung.

 

Die grafische Darstellung der beiden vorherigen Bedingungen ergibt die folgende Trennung des Featureraums:

Ein Diagramm des Gewichts im Vergleich zu num_legs Bei der am Achsen ausgerichteten Bedingung wird die Gewichtung nicht ignoriert und ist daher nur eine vertikale Linie. Der schräge Zustand zeigt eine negativ geneigte Linie.

Abbildung 5. Trennung von Featurebereichen für die Bedingungen in Abbildung 4.

 

Binäre und nichtbinäre Bedingungen im Vergleich

Bedingungen mit zwei möglichen Ergebnissen (z. B. wahr oder falsch) werden als binäre Bedingungen bezeichnet. Entscheidungsbäume, die nur binäre Bedingungen enthalten, werden als binäre Entscheidungsbäume bezeichnet.

Nicht binäre Bedingungen haben mehr als zwei mögliche Ergebnisse. Daher haben nicht binäre Bedingungen eine differenziertere Macht als binäre Bedingungen. Entscheidungen, die eine oder mehrere nicht binäre Bedingungen enthalten, werden als nicht binäre Entscheidungsbäume bezeichnet.

Vergleich von binären und nicht binären Entscheidungsbäumen. Der binäre Entscheidungsbaum enthält zwei binäre Bedingungen. Der nicht binäre Entscheidungsbaum enthält eine nicht binäre Bedingung.

Abbildung 6: Binäre und nicht binäre Entscheidungsbäume im Vergleich

 

Bei zu viel Macht ist auch die Wahrscheinlichkeit einer Überanpassung höher. Aus diesem Grund verwenden Entscheidungsbäume im Allgemeinen binäre Entscheidungsbäume, daher konzentrieren wir uns in diesem Kurs auf sie.

Der häufigste Bedingungstyp ist die Schwellenwertbedingung, die so ausgedrückt wird:

featurethreshold

Beispiel:

num_legs ≥ 2

Es gibt noch andere Bedingungstypen. Nachfolgend sind weitere gängige Arten von binären Bedingungen aufgeführt:

 

Tabelle 2. Gängige Typen binärer Bedingungen.

Name Bedingung Beispiel
Grenzwertbedingung $\mathrm{feature}_i \geq \mathrm{threshold}$ $\mathrm{num\_legs} \geq 2$
Gleichheitsbedingung $\mathrm{feature}_i = \mathrm{value}$ $\mathrm{species} = ``cat"$
Eingestellte Bedingung $\mathrm{feature}_i \in \mathrm{collection}$ $\mathrm{species} \in \{``cat", ``Hund", ``bird"\}$
schräge Zustand $\sum_{i} \mathrm{weight}_i \mathrm{feature}_i \geq \mathrm{threshold}$ $5 \ \mathrm{num\_legs} + 2 \ \mathrm{num\_eyes} \geq 10$
Funktion fehlt $\mathrm{feature}_i \mathrm{is} \mathrm{Fehlt}$ $\mathrm{num\_legs} \mathrm{is} \mathrm{Fehlt}$