Gradient Boosting ist eine maschinelle Lerntechnik, die für Regressions- und Klassifizierungsaufgaben verwendet wird. Sie gehört zur Familie der Boosting-Methoden, die mehrere schwache Vorhersagemodelle zu einem einzigen starken Modell kombinieren. Im Gegensatz zu traditionellem Boosting, das Modelle an Residuen anpasst, arbeitet Gradient Boosting in einem funktionalen Raum und zielt auf Pseudo-Residuen ab, was die Optimierung einer beliebigen differenzierbaren Verlustfunktion ermöglicht. Wenn die schwachen Lernalgorithmen Entscheidungsbäume sind, wird der resultierende Algorithmus als gradient-boosted Trees (gradientenverstärkte Bäume) bezeichnet, die in der Vorhersagegenauigkeit typischerweise Zufallswälder (Random Forests) übertreffen.
Das Verfahren erzeugt ein Vorhersagemodell als Ensemble schwacher Modelle, meist einfacher Entscheidungsbäume, die wenige Annahmen über die Daten treffen. Das Modell wird iterativ aufgebaut, wobei jede neue Komponente die Fehler des vorherigen Ensembles korrigiert. Dieser Ansatz verallgemeinert frühere Boosting-Algorithmen und ist zu einem Eckpfeiler des modernen maschinellen Lernens geworden, der in Industrie und Forschung weit verbreitet ist.
Geschichte
Das konzeptionelle Fundament des Gradient Boosting geht auf Leo Breimans Beobachtung zurück, dass Boosting als Optimierung er Algorithmus auf einer Kostenfunktion interpretieren lässt. Explizite Regressions-Gradient-Boosting-Algorithmen wurden von Jerome H. Friedman 1999 entwickelt und 2001 verfeinert. Gleichzeitig führten Llew Mason, Jonathan Baxter, Peter Bartlett und Marcus Frean ein allgemeineres Perspektive des funktionalen Gradienten-Boostings ein. Ihre Arbeit stellte Boosting-Algorithmen als iterative funktionale Gradientenabstiege dar, wobei eine Kostenfunktion im Funktionsraum optimiert wird, indem schwache Hypothesen ausgewählt werden, die in die negative Gradientenrichtung zeigen. Diese Perspektive förderte die Entwicklung von Boosting-Methoden in vielen Bereichen des maschinellen Lernens und der Statistik, weit über Regressions- und Klassifizierung hinaus.
Algorithmus-Übersicht
Gradient Boosting baut ein Modell in M Stufen auf. Bei jeder Stufe m wird das aktuelle Modell F_m durch Hinzufügen eines neuen Schätzers h_m verbessert. Für die Kleinsten-Quadrate-Regression ist das Ziel, den mittleren quadratischen Fehler über einem Trainings setzt zu minimieren, das n Datensätzen. Zunächst kann F_1 einfach den Mittelwert der Zielwerte vorhersagen. Bei jeder weiteren Stufe berechnet der Algorithmus den Residuum, also die Differenz zwischen dem beobachteten Wert und der aktuellen Vorhersage. Anschließend passt er einen schwachen Lernern, typischerweise einen flachen Entscheidungsbaum, an diese an die restlichen Residuen an. Das aktualisierte Modell wird zu F_{m+1}(x) = F_m(x) + h_m(x). Dieser Prozess wiederholt sich, bis die gewünschte Anzahl von Stufen erreicht ist oder die Leistung einen Plate erreicht.
Für allgemeine Verlustfunktionen verwendet der Algorithmus Pseudo-Residuen, die die negativen Gradienten der Verlustfunktion in Bezug auf die Vorhersagen des Modells sind. Dies ermöglicht es der Methode, verschiedene Aufgaben zu bewältigen, einschließlich Klassifikation mit logistischem Verlust oder Ranking mit paar Verlusten.
Gradient-Gestärkte Bäume (GradientBoosted Trees)
Wenn Entscheidungsbäume als schwache Lernende verwendet werden, wird der Algorithmus als gradientverstärkte Bäume. Jeder Baum ist typischerweise klein, oft mit einer begrenzten Anzahl von Blättern, um das Modell interpretierbar zu halten und Überanpassung zu vermeiden. Die Bäume werden sequenziell hinzugefügt, wobei jeder Baum sich auf die Fehler des vorherigen Ensembles konzentriert. Dieser Ansatz liefert oft modernste Ergebnisse . Bei tabellierten Daten übertrifft es Random Forests und manchmal sogar Deep learning-Modelle bei strukturierten Daten.
Key Hyperparameter sind umfassen die Anzahl der Bäume, die maximale Tiefe jedes Baums, die Lernrate (die den Beitrag jedes Baums schrumpft) sowie Subsampling-Verhältnisse für stochastisches Gradient Boosting. Regularisierungstechniken wie L1- und L2-Strafen werden ebenfalls üblich auf die Blattgewichte angewendet.
Anwendungen und Implementierungen
Gradient Boosting wurde erfolgreich in zahlreichen Bereichen eingesetzt, darunter Kreditwürdigkeitsprüfung \underline{Scoring}, Klickratenvorhersage, Such-Ranking und Bioinformatik. Beliebte Open-Source-Bibliotheken umfassen XGBoost, LightGBM und CatBoost, die optimierte Implementierungen mit parallelem Training und GPU-Unterstützung bieten. Diese Tools haben Gradient Boosting für Praktiker zugänglich gemacht und wurden weit in Wettbewerben und Produktionssystemen verwendet.
SeineFlexibilität und seine starke Vorhersageleistung haben es zu einem Standard-Baseline in Machine learning-Workflows gemacht, die oft mit Neural network-Modellen bei strukturierten Daten konkurrenzfähig sind.
Beziehung zu anderen Methoden
Gradient Boosting steht mit anderen Ensemble-Methoden wie Random Forests und AdaBoost in Bezug. Es unterscheidet sich jedoch in seiner sequenziellen Vorgehensweise und seiner Fähigkeit, unterschiedliche Verlustfunktionen zu optimieren, die Funktion über den Verlust zu optimieren. Während Random Forests unabhängig bauen und ihre Vorhersagen mitteln, baut Gradient Boosting die Bäume sequenziell auf, wobei jeder den vorherigen Fehler korrigiert. Dies führt oft zu höherer Genauigkeit, erfordert aber eine sorgfältige Konfiguration, um Überanpassung zu vermeiden.
Die funktionale Gradient-Perspektive verbindet das Gradient Boosting auch mit der Optimierung im Funktionenraum, einem Konzept, das andere Bereiche wie Artificial intelligence und statistisches Lernen beeinflusst hat. Forscher haben die Idee auf Mehrfachprobleme, Überlebensanalysen und sogar neuronale Netztraining erweitert, wo boostoing-ähnliche Ideen im Residual-Lernen erscheinen.
Einschränkungen und Überlegungen
Trotz seiner Stärken hat Gradient Boosting Einschränkungen. Es kann empfindlich auf verrauschte Daten und Ausreißer reagieren und kann überanpassen, wenn die Anzahl der Bäume zu groß oder die Bäume zu tief sind. Das Training kann rechenintensiv sein, besonders bei großen Daten sets, obwohl moderne Implementierungen dies durch eine effiziente Algorithmen und Hardwarebeschleunigung mildern. Interpretation en sind niedriger als die eines einzelnen rebellablen Entscheidungsbaums, obwohl Feature-Wichtigkeitsmaße und Teilabhängigkeitskurven Einblick bieten können.
Wie bei vielen Machine learning-Techniken hängt die Wahl der Hyperparameter und Verlustfunktion wesentlich die Leistung ab, und Praktiker verlassen sich häufig auf die Kreuzvalidierung, um das Modell zu tunen.