Von einzelnen Bäumen zum Ensemble-Gefühl
Mehrere Mechaniker, ein Ziel
Ein einzelnes Modell ist wie ein Mechaniker mit einer Spezialzange. Ein Ensemble ist eine ganze Werkstatt: Einer sucht Fehler, der nächste bessert nach, ein dritter macht die Feinarbeit. Genau das macht XGBoost so stark.
Boosting & Herr Huber
Ein Modell macht einen Fehler. Das nächste Modell schaut genau dorthin. So arbeitet Boosting Schritt für Schritt.
Alltagsbild: Der Nachhilfelehrer mit der roten Akte
Stell dir vor, fünf Kunden schreiben dieselbe Kreditprüfung. Beim ersten Durchgang rutschen vier sauber durch. Nur Herr Huber fällt auf: hohes Einkommen, aber auch sehr hohe Schulden. Der Nachhilfelehrer legt seine Akte rot auf den Tisch. Ab jetzt schaut der zweite Durchgang genau dort hin.
Die Idee in ML-Sprache
Boosting baut Modelle nacheinander. Nach jedem Durchgang werden Fehler wichtiger gewichtet. Vereinfacht gilt:
Hier steht \(w_i\) für die Aufmerksamkeit auf Fall \(i\). Wurde der Fall falsch getroffen, steigt sein Gewicht.
Begriffe zum Anklicken
Die rote Akte
Alle fünf Kunden starten mit demselben Gewicht 0.20. Dann trainierst du Modell 1 und Modell 2.
| Kunde | Profil | Gewicht | Aufmerksamkeit |
|---|
XGBoost & Overfitting
Sehr stark heißt nicht grenzenlos gut. Wer zu lange nachlernt, kann die Übungsaufgaben auswendig lernen und auf neuen Daten schlechter werden.
Alltagsbild: Der Streber-Effekt
Ein Schüler macht erst große Fortschritte. Dann lernt er nur noch die alten Übungsblätter auswendig. In der Prüfung erkennt er das Muster nicht mehr. Genau so entsteht Overfitting.
Der Overfitting-Slider
Zieh die Anzahl der Boosting-Runden hoch. Die blaue Trainingskurve sinkt fast immer. Die rote Testkurve wird ab einem Punkt wieder schlechter.
Mini-Quiz
Wann solltest du das Boosting-Training stoppen?
Code-Idee aus der Praxis
from xgboost import XGBClassifier
from sklearn.model_selection import train_test_split
X_train, X_valid, y_train, y_valid = train_test_split(X, y, test_size=0.2, random_state=42)
model = XGBClassifier(
n_estimators=500,
learning_rate=0.05,
max_depth=4,
random_state=42
)
model.fit(
X_train,
y_train,
eval_set=[(X_valid, y_valid)],
verbose=False
)
Das Stakeholder-Dilemma
Mehr Leistung oder mehr Erklärung? Genau diese Frage entscheidet oft darüber, welches Modell du wirklich einsetzen darfst.
White Box vs. Black Box
Ein einfacher Baum oder eine lineare Regression sind wie ein gläserner Werkzeugkoffer. Du siehst hinein. XGBoost ist eher eine Profi-Werkstatt mit vielen kleinen Zahnrädern. Sehr stark, aber der genaue Weg ist schwerer zu erzählen.
Szenario A
Die Chefärztin will genau wissen, warum das Modell Krebs diagnostiziert hat. Sie braucht eine Erklärung für die Ethik-Kommission.
Szenario B
Ein Online-Shop will einfach nur 5 % mehr Umsatz durch bessere Produktempfehlungen. Keinen interessiert das Warum, nur die Trefferquote.
Die große Landkarte
Vier Modelle, dieselben Punkte, vier ganz verschiedene Grenzzäune. So fühlt man Model-Komplexität visuell.
Grenzpatrouille im Datenraum
Alle Modelle sollen rote und blaue Punkte trennen. Aber jedes tut das anders: mal stur mit einer geraden Linie, mal blockig, mal fast wie eine maßgeschneiderte Kontur.
Algorithmus wählen
Hier zieht das Modell eine einzige gerade Linie quer durch das Feld. Das ist einfach, aber nicht sehr biegsam.
Kurzer Check
Welches Modell zeigt hier die glatteste und präziseste Grenze?
Fazit & Bias-Varianz-Matrix
Jetzt ordnest du die bekannten Modelle ein: Wer ist zu stur, wer zu nervös, und wer findet die Balance?
Die letzte Sortieraufgabe
Bias heißt: zu simpel. Varianz heißt: zu nervös. Ensembles versuchen, aus beiden Welten das Beste mitzunehmen.
Lineare Regression
Wie ordnest du sie ein?
Einzelner Baum
Wie ordnest du ihn ein?
Ensembles
Wie ordnest du Forest und Boosting ein?