Was ist Gradient Boosting?

Autoren

Bryan Clark

Senior Technology Advocate

Fangfang Lee

Developer Advocate

IBM

Was ist Gradient Boosting?

Gradient Boosting ist ein Algorithmus für Ensemble-Lernen, der genaue Vorhersagen liefert, indem er mehrere Decision Trees in einem einzigen Modell kombiniert. Dieser von Jerome Friedman vorgestellte algorithmische Ansatz zur Vorhersagemodellierung nutzt Basismodelle, um auf deren Stärken aufzubauen, Fehler zu korrigieren und die Vorhersagefunktionen zu optimieren. Durch die Erfassung komplexer Muster in Daten eignet sich Gradient Boosting hervorragend für verschiedene prädiktive Modellierungsaufgaben.1

Die neuesten KI-Trends, präsentiert von Experten

Erhalten Sie kuratierte Einblicke in die wichtigsten – und faszinierendsten – KI-Neuheiten. Abonnieren Sie unseren wöchentlichen Think-Newsletter. Weitere Informationen in der IBM Datenschutzerklärung.

Vielen Dank! Sie haben ein Abonnement abgeschlossen.

Ihr Abonnement wird auf Englisch geliefert. In jedem Newsletter finden Sie einen Abmeldelink. Hier können Sie Ihre Abonnements verwalten oder sich abmelden. Weitere Informationen finden Sie in unserer IBM Datenschutzerklärung.

Ensemble-Lernen und Boosting

Ensemble-Lernen ist ein Ansatz des maschinellen Lernens, der mehrere Modelle oder Methoden kombiniert, um die Vorhersageleistung zu verbessern. Dabei werden oft Techniken wie Bagging und Boosting eingesetzt. Beim Bagging werden zahlreiche Modelle auf verschiedenen Datenteilmengen mit einer gewissen Zufälligkeit trainiert, was durch die Mittelung der Einzelfehler zur Reduzierung der Varianz beiträgt. Ein Beispiel für diesen Ansatz sind Random Forests.

Im Gegensatz dazu ist Boosting eine Ensemble-Technik, die Modelle iterativ trainiert, um frühere Fehler zu korrigieren. Falsch klassifizierte Instanzen in nachfolgenden Modellen werden stärker gewichtet, sodass diese sich auf anspruchsvolle Datenpunkte konzentrieren und letztendlich die Gesamtleistung verbessern können. AdaBoost, das weithin als der erste anwendbare Boosting-Algorithmus gilt, ist ein klassisches Beispiel für diese Methode. Sowohl das Bagging als auch das Boosting optimieren den Kompromiss zwischen Verzerrung Varianz in den Modellen, was zu einer robusteren Leistung führt. 2

Diese Techniken werden im maschinellen Lernen häufig eingesetzt, um die Modellgenauigkeit zu verbessern, insbesondere bei komplexen oder verrauschten Datensätzen. Durch die Kombination mehrerer Perspektiven bietet das Ensemble-Lernen eine Möglichkeit, die Beschränkungen einzelner Modelle zu überwinden und eine verbesserte Optimierung zu erzielen. 3

Diagramm, das Boosting im Kontext des Ensemble-Lernens darstellt.

So funktioniert Gradient Boosting

Beim Gradient Boosting werden mehrere schwache Vorhersagemodelle zu einem einzigen Ensemble kombiniert. Bei diesen schwachen Modellen handelt es sich in der Regel um Decision Trees, die nacheinander trainiert werden, um Fehler zu minimieren und die Genauigkeit zu verbessern. Durch die Kombination mehrerer Decision-Tree-Regressoren oder -Klassifikatoren kann das Gradient Boosting komplexe Beziehungen zwischen Funktionen effektiv erfassen.

Einer der Hauptvorteile von Gradient Boosting ist die Fähigkeit, die Verlustfunktion iterativ zu minimieren, was zu einer verbesserten Vorhersagegenauigkeit führt. Allerdings muss man sich der Überanpassung bewusst sein, die entsteht, wenn ein Modell zu sehr auf die Trainingsdaten spezialisiert ist und sich nicht gut auf neue Fälle verallgemeinern lässt. Um dieses Risiko zu minimieren, müssen die Hyperparameter sorgfältig abgestimmt, die Leistung des Modells während des Trainings überwacht und Techniken wie Regularisierung, Bereinigung oder frühzeitiges Stoppen angewendet werden. Wenn man diese Herausforderungen versteht und Maßnahmen zu deren Bewältigung ergreift, kann man die Möglichkeiten des Gradient Boosting – einschließlich der Verwendung von Regressionsbäumen – erfolgreich nutzen, um genaue und robuste Vorhersagemodelle für verschiedene Anwendungen zu entwickeln. 4, 5

Der mittlere quadratische Fehler (MSE, Mean Squared Error) ist eine Verlustfunktion, mit der sich bewerten lässt, wie gut die Vorhersagen eines maschinellen Lernmodells mit den tatsächlichen Daten übereinstimmen. Der MSE berechnet den Durchschnitt der quadratischen Differenzen zwischen den vorhergesagten und den beobachteten Werten. Die Formel für den MSE lautet:  MSE=Σ(yi-pi)2/n , wenn  yi  den tatsächlich Wert darstellt,  pi  ist der vorhergesagte Wert und  n ist die Anzahl der Beobachtungen.

Um es noch etwas genauer zu erklären: Der MSE quantifiziert die Differenz zwischen den vorhergesagten und den tatsächlichen Werten, die im Datensatz für Regressionsprobleme dargestellt sind. Durch den Schritt der Quadratur tragen sowohl positive als auch negative Fehler zum Endwert bei, ohne sich gegenseitig aufzuheben. Diese Methode verleiht größeren Fehlern mehr Gewicht, da die Fehler quadratisch dargestellt werden.

Im Allgemeinen weist ein niedrigerer MSE-Wert auf eine bessere Übereinstimmung zwischen Vorhersagen und Beobachtungen hin. In realen Szenarien ist es jedoch schwierig, einen niedrigeren MSE-Wert zu erreichen, da Zufälligkeit nicht nur im Datensatz, sondern auch in der Grundgesamtheit vorhanden ist. Der Vergleich der MSE-Werte im Zeitverlauf oder über verschiedene Modelle hinweg kann dagegen dabei helfen, Verbesserungen in der Vorhersagegenauigkeit festzustellen. Zu beachten ist außerdem, dass das gezielte Anstreben eines MSE von Null fast immer auf eine Überanpassung hinweist. 6

Einige beliebte Implementierungen von Boosting-Methoden in Python sind Extreme Gradient Boosting (XGBoost) und Light Gradient-Boosting Machine (LightGBM). XGBoost ist auf Geschwindigkeit und Leistung ausgelegt und wird für Regressions- und Klassifizierungsprobleme verwendet. LightGBM verwendet baumbasierte Lernalgorithmen und ist für die Datenverarbeitung geeignet. Beide Methoden verbessern die Genauigkeit weiter, insbesondere bei der Arbeit mit komplizierten oder verrauschten Datensätzen. LightGBM verwendet eine Technik namens Gradient-based One-Side Sampling (GOSS), um die Dateninstanzen für die Suche nach den Teilungspunkten herauszufiltern und so den Rechenaufwand erheblich zu reduzieren. Durch die Integration mehrerer Ensemble-Lerntechniken beseitigen Sie die Beschränkungen einzelner Modelle und erzielen bessere Ergebnisse in Data-Science-Szenarien. 7, 8

Im Folgenden finden Sie eine Schritt-für-Schritt-Aufschlüsselung, wie der Prozess des Gradient Boosting funktioniert.

Initialisierung: Beginnen Sie mit der Verwendung eines Trainingssatzes, um eine Grundlage mit einem Basis-Lernmodell – häufig ein Decision Tree – zu schaffen. Dessen anfängliche Vorhersagen werden zufällig generiert. In der Regel enthält der Decision Tree nur eine Handvoll Blattknoten oder Endknoten. Diese schwachen oder Basislernenden werden aufgrund ihrer Interpretierbarkeit oft als optimaler Ausgangspunkt ausgewählt. Die anfängliche Einrichtung ebnet den Weg für nachfolgende Iterationen.

Berechnen Sie die Residuen, indem Sie für jedes Trainingsbeispiel den vorhergesagten Wert vom tatsächlichen Wert abziehen. In diesem Schritt werden Bereiche identifiziert, in denen die Vorhersagen des Modells verbessert werden müssen.

Verfeinerung mit Regularisierung: Nach der Residuenberechnung und vor dem Training eines neuen Modells findet die Regularisierung statt. In dieser Phase geht es darum, den Einfluss jedes neuen schwachen Lernenden, der in das Ensemble integriert ist, herunterzuskalieren. Durch eine sorgfältige Abstimmung kann die Geschwindigkeit des Boosting-Algorithmus gesteuert werden. So kann eine Überanpassung verhindert und die Gesamtleistung optimiert werden.

Training des nächsten Modells: Verwenden Sie die im vorherigen Schritt berechneten Restfehler als Ziele, um ein neues Modell oder einen schwachen Lernenden zu schulen und diese genau vorherzusagen. In diesem Schritt geht es darum, die Fehler der vorherigen Modelle zu korrigieren und die Gesamtvorhersage zu verfeinern.

Ensemble-Aktualisierungen: In dieser Phase wird die Leistung des aktualisierten Ensembles (einschließlich des neu trainierten Modells) in der Regel mithilfe eines separaten Testsatzes bewertet. Wenn die Leistung bei diesem Holdout-Datensatz zufriedenstellend ist, kann das Ensemble durch die Einbindung des neuen schwachen Lernenden aktualisiert werden. Andernfalls können Anpassungen der Hyperparameter erforderlich sein.

Wiederholung: Wiederholen Sie die zuvor vorgestellten Schritte nach Bedarf. Jede Iteration basiert auf dem Basismodell und verfeinert es durch das Training neuer Bäume. Dadurch wird die Genauigkeit des Modells weiter verbessert. Wenn die Aktualisierung des Ensembles und das endgültige Modell im Vergleich zum Basismodell hinsichtlich der Genauigkeit zufriedenstellend sind, gehen Sie zu den nächsten Schritten über. 

Stoppkriterien: Brechen Sie den Boosting-Prozess ab, wenn eines der folgenden Stoppkriterien erfüllt ist: eine maximale Anzahl von Iterationen, eine bestimmte Zielgenauigkeit oder abnehmende Renditen. Dieser Schritt trägt dazu bei, dass das Modell das erwartete Gleichgewicht zwischen Komplexität und Leistung in seiner endgültigen Vorhersage erreicht. 

Sequenzieller Ensemble-Lernprozess, der von Boosting-Algorithmen verwendet wird, um mehrere schwache Lerner nacheinander zu trainieren.

Emsemble-Methoden und Stacking

Die Kombination von Gradient Boosting mit anderen Algorithmen des maschinellen Lernens durch Ensemble-Methoden oder Stacking kann die Vorhersagegenauigkeit weiter verbessern. So kann beispielsweise die Kombination von Gradient Boosting mit Support Vector Machines (SVMs), Random Forests oder K-Nearest Neighbors (KNN) die Stärken jedes Modells nutzen und ein robusteres Ensemble schaffen. Stacking beinhaltet das Training mehrerer Basislernender und die Verwendung ihrer Ausgaben als Eingaben für einen Meta-Lernenden, der Vorhersagen kombiniert, um endgültige Ausgaben zu generieren. 9

Diagramm, das Stacking im Kontext des Ensemble-Lernens darstellt.

Frühzeitiges Stoppen und Kreuzvalidierung

Die Überwachung der Modellleistung während des Trainings und die Implementierung von Techniken zum frühzeitigen Stoppen können dazu beitragen, eine Überanpassung zu verhindern, indem der Boosting-Prozess angehalten wird, sobald sich die Leistung eines Validierungssatzes nicht mehr verbessert oder zu verschlechtern beginnt. Darüber hinaus kann die Verwendung von Strategien wie der k-fachen Kreuzvalidierung zuverlässigere Schätzungen der Modellleistung und der Hyperparameter-Abstimmung liefern, wodurch die Vorhersagefähigkeit von Gradient Boosting weiter verbessert wird.

AI Academy

Nutzen Sie KI für Ihren Kundenservice

Erfahren Sie, wie der Einsatz von generativer KI mit einer nahtloseren Erfahrung die Kundenzufriedenheit erhöht und die Produktivität des Unternehmens in diesen drei Schlüsselbereichen steigert: Self-Service, Servicemitarbeiter und Abläufe im Contact Center.

Unausgewogene Datensätze berücksichtigen

Das Gradient Boosting reagiert empfindlich auf Klassenunausgewogenheiten, was zu voreingenommenen Vorhersagen zugunsten der Mehrheitsklasse führen kann. Um dieses Problem zu lösen, können Anwender Techniken wie die Überabstimmung der Minderheitsklasse, die Unterabfrage der Mehrheitsklasse oder die Verwendung gewichteter Verlustfunktionen einsetzen. Letztere weisen höhere Strafen für die falsche Klassifizierung von Minderheiteninstanzen zu.

Durch die Implementierung dieser Strategien und die sorgfältige Abstimmung von Hyperparametern können Anwender die Vorhersagegenauigkeit und Robustheit von Gradient Boosting in verschiedenen Anwendungen, von der hochdimensionalen Datenanalyse bis hin zu komplexen Umweltüberwachungsaufgaben, erheblich steigern.

Gradient Boosting der Hyperparameter-Abstimmung in scikit-learn (sklearn)

Der GradientBoostingClassifier und der GradientBoostingRegressor in scikit-learn bieten einen vielseitigen Ansatz zur Implementierung des Gradient-Boosting-Algorithmus, der sowohl Klassifizierungs- als auch Regressionsaufgaben erfüllt. Indem sie Benutzern die Feinabstimmung mehrerer Parameter ermöglichen, ermöglichen diese Implementierungen die Anpassung des Boosting-Prozesses an spezifische Anforderungen und Datenmerkmale.

Baumtiefe (max_depth): Steuert die maximale Tiefe einzelner Decision Trees und sollte für die beste Leistung angepasst werden. Tiefere Bäume können komplexere Beziehungen erfassen, sind aber auch anfällig für Überanpassung. 

Lernrate (learning_rate): Bestimmt den Beitrag jedes Baums zum Gesamtensemble. Eine kleinere Lernrate verlangsamt die Konvergenz und verringert das Risiko einer Überanpassung. Ein höherer Wert führt dagegen zu einem schnelleren Training, birgt aber das Risiko einer Überanpassung.

Anzahl der Bäume (n_estimators): Gibt die Gesamtzahl der Bäume im Ensemble an. Eine Erhöhung dieses Parameters kann die Leistung verbessern, erhöht aber auch das Risiko einer Überanpassung.

Darüber hinaus bieten die Gradient-Boosting-Implementierungen von scikit-learn Out-of-Bag-Schätzungen (OOB), eine Technik zur Bewertung der Leistung, ohne dass separate Datensätze erforderlich sind. Darüber hinaus ermöglichen die abgestuften Vorhersagemethoden in scikit-learn inkrementelle Vorhersagen, sobald neue Daten verfügbar werden, was die Verarbeitung in Echtzeit ermöglicht und effizient macht. Zusammenfassend bieten die Implementierungen des Gradient Boosting von scikit-learn eine Vielzahl von Funktionen für die Feinabstimmung von Modellen entsprechend spezifischen Anforderungen und Datensatzmerkmalen, die letztendlich eine überragende Vorhersageleistung fördern. 10

Anwendungsfälle für Gradient Boosting

Umgang mit hochdimensionalen medizinischen Daten: Gradient Boosting ist in der Lage, Datensätze mit vielen Funktionen im Verhältnis zur Anzahl der Beobachtungen effektiv zu verarbeiten. In der medizinischen Diagnostik kann das Gradient Boosting beispielsweise verwendet werden, um Krankheiten auf der Grundlage von Patientendaten zu diagnostizieren, die über 100 Funktionen enthalten können. Durch die Nutzung von Decision Trees als schwache Lernende könnte der Algorithmus in der Lage sein, eine hohe Dimensionalität zu bewältigen, bei der herkömmliche lineare Regressionsmodelle Schwierigkeiten haben könnten. Der Algorithmus kann auch wertvolle Informationen aus spärlichen Daten extrahieren, sodass er sich für Anwendungen wie Bioinformatik oder Textklassifizierungsprobleme eignet. 11, 12

Verringerung der Abwanderungsrate beim Kundenservice: Ist ein Modell bereits vorhanden, die Leistung jedoch suboptimal, kann Gradient Boosting eingesetzt werden. Dabei werden frühere Fehler korrigiert, um die Vorhersagen iterativ zu verfeinern. Ein Beispiel ist die Vorhersage der Kundenabwanderung in der Telekommunikation, wo ein traditionelles logistisches Regressionmodell verwendet wurde. Das Unternehmen kann Algorithmen zum Gradient Boosting anwenden, um Schlüsselfaktoren zu identifizieren, die dazu führen, dass Kunden zu einem anderen Service abwandern, wie z. B. ein hohes Anrufvolumen oder eine schlechte Netzleistung. Durch die Einbeziehung dieser Faktoren in das Modell können sie möglicherweise die Genauigkeit verbessern und die Abwanderungsraten reduzieren. 13

Vorhersage des Überlebens von Buchen: In einem Ökosystem stellt die Beech Leaf Disease (BLD) eine erhebliche Bedrohung für Buchen dar. Forscher könnten ein Vorhersagemodell entwickeln, um Bäume zu identifizieren, die von BLD bedroht sind, und ihre Überlebenswahrscheinlichkeit vorherzusagen. Es könnte ein Modell für maschinelles Lernen entwickelt werden, das Umweltfaktoren wie Klimadaten, Bodenqualität und Baumeigenschaften analysiert, um die Überlebenschancen von Beech Tree (BTS) über einen Zeitraum von fünf Jahren zu berechnen. Durch den Einsatz von Gradient-Boosting-Techniken ist es möglich, komplizierte Muster zu erfassen, die bei einfacheren Methoden übersehen werden könnten. Das Modell könnte Bäume, die von BLD bedroht sind, mit hoher Präzision identifizieren und ihren BTS-Wert genau vorhersagen, was es den Forschern ermöglicht, Eingriffe zu priorisieren und gefährdete Buchen wirksam zu schützen. Dieser Anwendungsfall zeigt, wie Gradient Boosting die Vorhersagekraft von maschinellem Lernen bei komplexen Umweltüberwachungsaufgaben verbessern kann. 14

Weiterführende Lösungen
IBM watsonx.ai

Trainieren, validieren, optimieren und implementieren Sie generative KI, Foundation Models und maschinelle Lernfunktionen mit IBM watsonx.ai, einem Studio der nächsten Generation für AI Builder in Unternehmen. Erstellen Sie KI-Anwendungen mit einem Bruchteil der Zeit und Daten.

Entdecken sie watsonx.ai
Lösungen im Bereich künstlicher Intelligenz

Setzen Sie KI in Ihrem Unternehmen ein – mit branchenführendem Fachwissen im Bereich KI und dem Lösungsportfolio von IBM an Ihrer Seite.

Erkunden Sie KI-Lösungen
KI-Beratung und -Services

Erfinden Sie kritische Workflows und Abläufe neu, indem Sie KI einsetzen, um Erfahrungen, Entscheidungsfindung in Echtzeit und den geschäftlichen Nutzen zu maximieren.

KI-Services entdecken
Machen Sie den nächsten Schritt

Profitieren Sie von einem einheitlichen Zugriff auf Funktionen, die den gesamten Lebenszyklus der KI-Entwicklung abdecken. Erstellen Sie leistungsstarke KI-Lösungen mit benutzerfreundlichen Oberflächen, Workflows und Zugriff auf branchenübliche APIs und SDKs.

watsonx.ai erkunden Live-Demo buchen
Fußnoten

Friedman, Jerome H. „Greedy Function Approximation: A Gradient Boosting Machine.“ The Annals of Statistics 29, Nr. 1 5 (2001): 1189–1232. http://www.jstor.org/stable/2699986. 

Schapire, R.E. (2013). Explaining AdaBoost. In: Schölkopf, B., Luo, Z., Vovk, V. (eds) Empirical Inference. Springer, Berlin, Heidelberg. https://link.springer.com/chapter/10.1007/978-3-642-41136-6_5

Fan, Wenjie, et al. „A Survey of Ensemble Learning: Recent Trends and Future Directions.“ arXiv Preprint arXiv:2501.04871 (2025).

Matsubara, Takuo. „Wasserstein Gradient Boosting: A Framework for Distribution- Valued Supervised Learning.“ arXiv.org, 29. August 2024. https://search.arxiv.org/paper.jsp?r=2405.09536&qid=1743170618344ler_nCn N_-2014411830&qs=gradient%2Bboosting. 

Emami, Seyedsaman und Gonzalo Martínez-Muñoz. 2023. „Sequential Training of Neural Networks with Gradient Boosting.“ IEEE Access 11 (Januar): 42738–50. https://ieeexplore.ieee.org/document/10110967

Chen, Tianqi, et al. „Mean Squared Error.“ Encyclopedia Britannica, 2023. https://www.britannica.com/science/mean-squared-error.

XGBoost Developers. „XGBoost: A Scalable Tree Boosting System.“ GitHub, 2021. https://github.com/dmlc/xgboost/blob/master/README.md .

LightGBM Documentation Team. „LightGBM.“ 2021. https://lightgbm.readthedocs.io/en/stable/ .

Konstantinov, Andrei V. und Dev V. Utkin. „A Generalized Stacking for Implementing Ensembles of Gradient Boosting Machines.“ In Studies in Systems, Decision and Control, 3–16, 2021. https://link.springer.com/chapter/10.1007/978-3-030-67892-0_1.

10 Dokumentation von Scikit-Learn „Scikit-Learn“ 2007 https://scikit-learn.org/0.21/documentation.html

11. Lecun, Yann, et al. „Gradient-Based Learning Applied to Document Recognition.“ Proceedings of the IEEE 86, no. 11 (2007): 2278-2324. doi: 10.1109/PROC.2007.898639 

12 Zhang, Zhongheng, Yiming Zhao, Aran Canes, Dan Steinberg und Olga Lyashevska. 2019. „Predictive Analytics with Gradient Boosting in Clinical Medicine.“ Annals of Translational Medicine 7 (7): 152–52. https://atm.amegroups.org/article/view/24543/23475.

13 Al Shourbaji, Ibrahim, Na Helian, Yi Sun, Abdelazim G. Hussien, Laith Abualigah und Bushra Elnaim. 2023. „An Efficient Churn Prediction Model Using Gradient Boosting Machine and Metaheuristic Optimization.“ Scientific Reports 13 (1): 14441. https://www.nature.com/articles/s41598-023-41093-6.

14 Manley, William, Tam Tran, Melissa Prusinski und Dustin Brisson. „Modeling Tick Populations: An Ecological Test Case for Gradient Boosted Trees.“ bioRxiv: the preprint server for biology, 29. November 2023. https://pmc.ncbi.nlm.nih.gov/articles/PMC10054924/#:~:text=The%20rapidly%20expanding%20environmental%20data,development%20of%20public%20health%20strategies.