Entscheidungsbäume und Ensembles
Vom einzelnen Baum zu Random Forest und Gradient Boosting: warum diese Verfahren bei Tabellendaten weiterhin die erste Wahl sind.
Die Idee
Ein Entscheidungsbaum ist ein Fragebogen. „Betrag über 5000 Euro? Wenn ja: Kunde länger als zwei Jahre dabei? Wenn nein: prüfen." Jede Frage teilt die Fälle in zwei Gruppen, und am Ende jedes Astes steht eine Antwort.
Ein einzelner Baum ist leicht zu lesen und meist zu ungenau. Deshalb baut man viele und lässt sie gemeinsam entscheiden.
Die beiden Ensemble-Ideen
| Verfahren | Wie die Bäume entstehen | Was besser wird |
|---|---|---|
| Random Forest | Parallel, jeder auf einer Zufallsstichprobe | Varianz sinkt, sehr robust |
| Gradient Boosting | Nacheinander, jeder korrigiert den Rest | Bias sinkt, höhere Güte |
In der Praxis
import numpy as np
from sklearn.datasets import make_classification
from sklearn.model_selection import cross_val_score
from sklearn.ensemble import RandomForestClassifier, HistGradientBoostingClassifier
X, y = make_classification(n_samples=6000, n_features=30, n_informative=8,
weights=[0.9, 0.1], random_state=0)
for name, m in [
("Random Forest", RandomForestClassifier(n_estimators=400, min_samples_leaf=5,
class_weight="balanced", random_state=0)),
("Boosting ", HistGradientBoostingClassifier(max_iter=400,
learning_rate=0.06,
early_stopping=True,
random_state=0)),
]:
s = cross_val_score(m, X, y, cv=5, scoring="average_precision")
print(name, s.mean().round(3), "±", s.std().round(3))Die Einstellungen, die wirklich zählen
| Verfahren | Wichtigste Regler |
|---|---|
| Random Forest | n_estimators (mehr ist nie schlechter), min_samples_leaf, max_features |
| Boosting | learning_rate und n_estimators gemeinsam, max_depth, min_samples_leaf |
Bei Boosting gilt: kleine Lernrate plus viele Bäume plus frühes Stoppen. Eine Lernrate von 0,05 mit 2000 Bäumen und Abbruchkriterium ist fast immer besser als 0,3 mit 200.
Das Teilungskriterium
Boosting formal
Merkmalswichtigkeit richtig lesen
Die eingebaute Wichtigkeit nach Unreinheitsreduktion bevorzugt systematisch Merkmale mit vielen möglichen Schwellwerten. Eine Spalte mit stetigen Werten sieht dadurch wichtiger aus als eine binäre Spalte gleicher Aussagekraft.
Belastbarer ist die Permutationswichtigkeit auf einem zurückgehaltenen Teil: eine Spalte wird zufällig durchmischt und gemessen, wie stark die Güte fällt. Bei stark korrelierten Spalten teilen sich beide die Wichtigkeit auf, weshalb eine gemeinsame Permutation korrelierter Gruppen die ehrlichere Antwort gibt.
Für den AI Act ist der Unterschied nicht akademisch: eine Wichtigkeitsangabe in der technischen Dokumentation muss reproduzierbar und methodisch benannt sein. Siehe Audit vorbereiten.
Passende Kurse und Quellen
scikit-learn Benutzerhandbuch
Kein Handbuch, sondern ein Lehrbuch mit Code. Zu jedem Verfahren steht dabei, wann es nicht passt, was in Lehrbüchern selten so deutlich steht.
Für alle, die klassische Verfahren einsetzen; nennt zu jedem auch, wann es nicht passt.
The Elements of Statistical Learning
Die statistische Sicht auf maschinelles Lernen, seit zwanzig Jahren die Referenz für Bias, Varianz und Modellwahl. Anspruchsvoll, frei als PDF.
Für alle mit statistischem Vorwissen; ohne dieses ist der Einstieg mühsam.