AdaBoost, kurz für Adaptive Boosting, wurde 1996 von Yoav Freund und Robert Schapire entwickelt. Der Algorithmus gehört zur Familie der Boosting-Methoden und wurde ursprünglich zur Verbesserung der Klassifikationsgenauigkeit entwickelt. Er basiert auf der Idee, mehrere schwache Klassifikatoren zu einem starken Gesamtmodell zu kombinieren.
Die zentrale Idee von AdaBoost ist es, schwache Lernalgorithmen (z. B. einfache Entscheidungsbäume, sogenannte „Stumps“) mehrfach auf das gleiche Datenset anzuwenden. Dabei wird jedes Mal mehr Gewicht auf die schwer klassifizierbaren Datenpunkte gelegt, sodass nachfolgende Modelle sich auf diese fokussieren. Am Ende werden alle schwachen Klassifikatoren zu einer finalen starken Vorhersage kombiniert.
Funktionsweise von AdaBoost
Prinzip der adaptiven Gewichtung
AdaBoost beginnt mit einer gleichmäßigen Gewichtung aller Trainingsdatenpunkte. Nach jeder Iteration werden die Gewichte der falsch klassifizierten Punkte erhöht, während die korrekt klassifizierten Punkte ein geringeres Gewicht erhalten. Dadurch konzentrieren sich spätere Modelle stärker auf die schwierigen Beispiele.
Kombination schwacher Klassifikatoren
AdaBoost kombiniert mehrere schwache Klassifikatoren zu einem starken Klassifikator. Dies geschieht durch eine gewichtete Abstimmung (Voting), bei der jeder Klassifikator entsprechend seiner Genauigkeit gewichtet wird. Klassifikatoren mit hoher Genauigkeit erhalten eine stärkere Gewichtung in der finalen Vorhersage.
Mathematische Grundlage (einfach erklärt)

Nach mehreren Iterationen führt dieser Mechanismus dazu, dass schwer zu klassifizierende Datenpunkte zunehmend wichtiger werden, wodurch sich das Modell an schwierige Muster anpasst.
Vorteile und Nachteile von AdaBoost
Vorteile
- Hohe Genauigkeit: AdaBoost verbessert die Leistung schwacher Klassifikatoren erheblich.
- Einfache Implementierung: Der Algorithmus ist leicht verständlich und in vielen Bibliotheken enthalten.
- Keine Hyperparameter-Tuning erforderlich: Nur die Anzahl der Iterationen muss festgelegt werden.
- Robust gegenüber Overfitting: Funktioniert gut mit vielen Datenarten, solange keine extremen Ausreißer vorhanden sind.
Nachteile
- Empfindlichkeit gegenüber Ausreißern: Da AdaBoost sich auf schwer klassifizierbare Datenpunkte konzentriert, können extreme Ausreißer die Leistung negativ beeinflussen.
- Benötigt schwache, aber performante Klassifikatoren: Falls der Basisklassifikator zu stark ist, bringt das Boosting kaum Verbesserungen.
- Nicht ideal für stark verrauschte Daten: Da der Algorithmus auch fehlerhafte Muster lernt, kann dies zu schlechteren Ergebnissen führen.
Zusammenfassung und Fazit
AdaBoost ist eine leistungsstarke Boosting-Methode, die schwache Klassifikatoren kombiniert, um die Vorhersagegenauigkeit zu verbessern. Besonders vorteilhaft ist die einfache Implementierung und die robuste Leistung auf vielen Datensätzen. Allerdings sollte man auf Ausreißer und verrauschte Daten achten, da diese die Leistung beeinträchtigen können.
Wann sollte man AdaBoost verwenden?
- Wenn ein einfacher, aber leistungsstarker Klassifikator benötigt wird.
- Für kleinere bis mittelgroße Datensätze mit wenig Rauschen.
- Wenn man ohne aufwendiges Hyperparameter-Tuning auskommen möchte.
- Wenn Interpretierbarkeit wichtiger ist als maximale Modellleistung.
Für größere und komplexere Probleme bieten neuere Boosting-Methoden wie XGBoost oder LightGBM oft bessere Ergebnisse. Dennoch bleibt AdaBoost eine gute Wahl für viele Klassifikationsaufgaben.