Entscheidungsstruktur-Modelle bestehen aus Entscheidungsbäumen. Algorithmen für das Lernen im Wald (z. B. Random Forests) basieren zumindest zum Teil auf dem Lernen von Entscheidungsbäumen.
In diesem Abschnitt des Kurses untersuchen Sie ein kleines Beispiel-Dataset und erfahren, wie ein einzelner Entscheidungsbaum trainiert wird. In den nächsten Abschnitten erfahren Sie, wie Entscheidungsbäume zum Trainieren von Entscheidungsstrukturen kombiniert werden.
Verwenden Sie in YDF den CART-Learner, um einzelne Entscheidungsbaummodelle zu trainieren:
# https://ydf.readthedocs.io/en/latest/py_api/CartLearner import ydf model = ydf.CartLearner(label="my_label").train(dataset)
Das Modell
Ein Entscheidungsbaum ist ein Modell, das aus einer Sammlung von „Fragen“ besteht, die hierarchisch in Form eines Baums organisiert sind. Die Fragen werden in der Regel als Bedingung, Split oder Test bezeichnet. In dieser Klasse verwenden wir den Begriff „condition“. Jeder Nicht-Blattknoten enthält eine Bedingung und jeder Blattknoten enthält eine Vorhersage.
Botanische Bäume wachsen in der Regel mit der Wurzel am unteren Rand. Entscheidungsbäume werden jedoch in der Regel mit der Wurzel (dem ersten Knoten) oben dargestellt.
Abbildung 1. Ein einfacher Entscheidungsbaum zur Klassifizierung. Die grüne Legende ist nicht Teil des Entscheidungsbaums.
Die Inferenz eines Entscheidungsbaummodells wird berechnet, indem ein Beispiel gemäß den Bedingungen vom Stamm (oben) zu einem der Blattknoten (unten) weitergeleitet wird. Der Wert des erreichten Blatts ist die Vorhersage des Entscheidungsbaums. Diese Gruppe von Knoten wird als Inferenzpfad bezeichnet. Betrachten Sie zum Beispiel die folgenden Featurewerte:
num_legs | num_eyes |
---|---|
4 | 2 |
Die Vorhersage wäre dog. Der Inferenzpfad wäre:
- num_legs ≥ 3 → Ja
- num_eyes ≥ 3 → Nein
Abbildung 2. Der Inferenzpfad, der im Blatt *dog* im Beispiel *{num_legs : 4, num_eyes : 2}* endet.
Im vorherigen Beispiel enthalten die Blätter des Entscheidungsbaums Klassifizierungsvorhersagen. Jedes Blatt enthält also eine Tierart aus einer Reihe möglicher Arten.
In ähnlicher Weise können Entscheidungsbäume numerische Werte vorhersagen, indem sie Blätter mit regressiven Vorhersagen (numerische Werte) kennzeichnen. Der folgende Entscheidungsbaum sagt beispielsweise einen numerischen Niedlichkeitswert für ein Tier zwischen 0 und 10 voraus.
Abbildung 3. Ein Entscheidungsbaum, der numerische Vorhersagen trifft.