Decision Tree
Ein Entscheidungsbaum trifft Vorhersagen, indem er nacheinander Fragen zu Merkmalen stellt, die er aus Daten gelernt hat. Hier geht es darum, wie Aufteilungen ausgewählt und wie Überanpassungen durch Beschneidung begrenzt werden, sowie um Code.
Ein Entscheidungsbaum ist ein Modell des überwachten Lernens, das Vorhersagen trifft, indem es eine Folge von Ja-Nein-Fragen zu den Merkmalen einer Eingabe stellt, etwa „Liegt das Einkommen über 50.000 $?“, und den Antworten vom Wurzelknoten bis zu einem Blatt folgt, das die Vorhersage enthält. Klassifikationsbäume sagen an jedem Blatt eine Klasse voraus, Regressionsbäume eine Zahl. Jede Vorhersage lässt sich als verständliche Folge von Regeln darstellen. Dadurch sind Bäume ein gängiges Werkzeug für erklärbare KI (XAI). Sie bilden außerdem die Grundlage für Random Forests und Gradient-Boosting-Ensembles, die bei mittelgroßen tabellarischen Datensätzen weiterhin besser abschneiden als Deep Learning. Der CART-Algorithmus von Breiman, Friedman, Olshen und Stone (1984) sowie Ross Quinelans ID3 (1986) und C4.5 (1993) legten fest, wie Bäume aus Daten gelernt werden.
So wird ein Entscheidungsbaum erstellt#
Bäume wachsen durch rekursive Aufteilung von oben nach unten. An jedem Knoten bewertet der Algorithmus mögliche Aufteilungen, die jeweils aus einem Merkmal und einem Schwellenwert für numerische Merkmale bestehen. Er behält die Aufteilung bei, durch die die beiden Kindknoten am einheitlichsten werden, und wiederholt die Suche in jedem Kindknoten. Klassifikationsbäume messen die Einheitlichkeit anhand der Gini-Unreinheit – der Wahrscheinlichkeit, eine zufällige Stichprobe aus dem Knoten falsch zu klassifizieren, wenn die Bezeichnungen im Verhältnis der Klassenanteile des Knotens zufällig zugewiesen würden – oder anhand der Entropie, deren Verringerung als Informationsgewinn bezeichnet wird. Regressionsbäume wählen die Aufteilung, die den quadratischen Fehler am stärksten verringert. Jedes Blatt sagt den mittleren Zielwert seiner Trainingsstichproben voraus. Das Wachstum endet, wenn ein Knoten rein ist, zu wenige Stichproben enthält oder eine maximale Tiefe erreicht. Jede Aufteilung berücksichtigt nur einen Schritt im Voraus. Diese gierige Suche erstellt schnell einen guten Baum, während die nachweislich optimale Baumerstellung NP-schwer ist.
DecisionTreeClassifier von scikit-learn implementiert eine optimierte CART-Version. In diesem Beispiel wird mit dem Iris-Blumendatensatz ein Baum der Tiefe 2 erstellt und anschließend werden die erlernten Regeln ausgegeben:
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier, export_text
iris = load_iris()
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, random_state=42)
# A depth limit keeps the tree small enough to read and less prone to overfitting
clf = DecisionTreeClassifier(max_depth=2, random_state=42)
clf.fit(X_train, y_train)
print(export_text(clf, feature_names=iris.feature_names))
print(f"Test accuracy: {clf.score(X_test, y_test):.2f}")Der Baum verwendet ausschließlich die Blütenblattlänge: Blüten mit einer Länge von höchstens 2.45 cm gehören zur Klasse Setosa (Klasse 0), und ein zweiter Schwellenwert bei 4.75 cm trennt Versicolor (Klasse 1) von Virginica (Klasse 2). Mit diesen Regeln werden 97 % der zurückgehaltenen Blüten korrekt klassifiziert.
Jede Aufteilung folgt einer Schwellenwertregel dieser Art. Ein Baum lernt diese Regel aus Daten, aber sie lässt sich auch von Hand festlegen. Der Trainingsmonitor von Ultralytics AIGym verwendet für die Ausgabe der Posenschätzung von YOLO26 zwei solcher Regeln: Er kennzeichnet ein Bild als „oben“, wenn der anhand der Schulter-, Ellbogen- und Handgelenk-Schlüsselpunkte berechnete Ellbogenwinkel 145° überschreitet, und als „unten“, wenn er unter 90° fällt. Bei jedem Wechsel von oben nach unten wird eine Wiederholung gezählt.
Überanpassung und Beschneidung#
Ein Baum, der so lange wächst, bis jedes Blatt rein ist, prägt sich die Trainingsdaten einschließlich des Rauschens ein – ein Lehrbuchbeispiel für Überanpassung. Beim Beschneiden vor dem Wachstum wird dieses frühzeitig durch Grenzen wie eine maximale Tiefe oder eine Mindestanzahl von Stichproben pro Blatt beendet. Beim Beschneiden nach dem Wachstum wird der vollständige Baum erstellt und anschließend werden wenig hilfreiche Zweige entfernt. scikit-learn implementiert das Beschneiden nach minimaler Kostenkomplexität über den Parameter ccp_alpha; je größer der Wert, desto mehr wird beschnitten. Beide Arten von Grenzen sind Hyperparameter, die durch Kreuzvalidierung ausgewählt werden.
Auch ein beschnittener Baum weist eine hohe Varianz auf: Eine kleine Änderung der Trainingsdaten kann die oberste Aufteilung und damit jede darunterliegende Aufteilung verändern. Ensembles wirken dem entgegen, indem sie viele Bäume kombinieren. Sie mitteln entweder Bäume, die mit Bootstrap-Stichproben trainiert wurden, wie bei Random Forests, oder fügen nacheinander Bäume hinzu, die die Fehler ihrer Vorgänger korrigieren, wie beim Gradient Boosting.
Stärken und Einschränkungen#
Bäume können numerische und kategoriale Merkmale gemeinsam verarbeiten, benötigen keine Skalierung der Merkmale, erfassen Wechselwirkungen und nichtlineare Effekte ohne manuelle Merkmalsentwicklung und treffen Vorhersagen mit wenigen Vergleichen. Ihre Aufteilungen verlaufen entlang der Achsen. Eine diagonale Grenze wie „Ausgaben übersteigen das Einkommen“ wird deshalb zu einer treppenförmigen Folge vieler Aufteilungen, sofern kein Quotientenmerkmal hinzugefügt wird. Regressionsbäume sagen innerhalb jedes Blatts einen konstanten Wert voraus. Anders als lineare Regression können sie daher einen Trend nicht über den Wertebereich der Trainingsdaten hinaus extrapolieren.
Anwendungen#
- Kreditentscheidungen: Kreditgeber sortieren Anträge anhand des Risikos mithilfe flacher Bäume und baumbasierter Bewertungssysteme. Jede Entscheidung lässt sich auf die Einkommens-, Kreditverlaufs- und Schuldenschwellenwerte zurückführen, die sie hervorgebracht haben.
- Klinische Triage: Als Bäume dargestellte klinische Entscheidungsregeln leiten Patienten anhand ihrer Vitalwerte und Symptome weiter und entscheiden zum Beispiel, ob eine sofortige Bildgebung erforderlich ist.
- Kundenabwanderung: Bäume unterteilen Kunden anhand von Nutzung, Vertragsdauer und Supportverlauf in Gruppen mit hohem oder niedrigem Kündigungsrisiko. Die einzelnen Pfade beschreiben jede Gruppe in einfachen Worten.
- Vorausschauende Wartung: Mit Merkmalen zu Vibration, Temperatur und Laufzeit trainierte Gradient-Boosting-Bäume schätzen, bei welchen Maschinen vor dem nächsten Wartungstermin ein Ausfall wahrscheinlich ist.
Entscheidungsbäume im Vergleich zu verwandten Begriffen#
- Random Forests: Viele Bäume, die mit Bootstrap-Stichproben und zufälligen Teilmengen von Merkmalen trainiert wurden, werden gemittelt. Dadurch ist das Ergebnis genauer und stabiler, allerdings weniger leicht verständlich als ein einzelner Baum.
- XGBoost, LightGBM und CatBoost: Bibliotheken für Gradient Boosting, die nacheinander Bäume hinzufügen, um die Fehler vorheriger Bäume zu korrigieren. LightGBM ist auf Geschwindigkeit bei großen Datensätzen ausgelegt, CatBoost auf die direkte Verarbeitung kategorialer Merkmale.
- Deep Learning: Neuronale Netze lernen Merkmale aus Rohbildern, Audio und Text. Bäume unterteilen Daten anhand von Merkmalen, die bereits als Tabellenspalten vorliegen.
- Entscheidungsbäume für Entscheidungsanalysen: In der Betriebsforschung und Unternehmensplanung bezeichnet ein Entscheidungsbaum auch ein Diagramm, das Analysten von Hand zeichnen. Es enthält Entscheidungsknoten, Zufallsknoten und Auszahlungen, um Optionen anhand ihres erwarteten Werts zu vergleichen. Es basiert auf geschätzten Wahrscheinlichkeiten und wird nicht aus Trainingsdaten gelernt.










