Grundlagen der KI
Was ist Gradient Boosting?
Ein hÃĪufiger Typ von Machine-Learning-Modell, das sich in Data-Science-Wettbewerben als extrem nÞtzlich erwiesen hat, ist ein Gradient-Boosting-Modell. Gradient Boosting ist im Wesentlichen der Prozess, schwache Lernalgorithmen in starke Lernalgorithmen umzuwandeln. Doch wie genau wird dies erreicht? Lassen Sie uns einen genaueren Blick auf Gradient-Boosting-Algorithmen werfen und besser verstehen, wie ein Gradient-Boosting-Modell schwache Lerner in starke Lerner umwandelt.
Definition von Gradient Boosting
Dieser Artikel soll Ihnen ein gutes VerstÃĪndnis dafÞr vermitteln, was Gradient Boosting ist, ohne viele mathematische ErklÃĪrungen. Sobald Sie ein VerstÃĪndnis dafÞr haben, wie Gradient Boosting auf hohem Niveau funktioniert, werden Sie ermutigt, tiefer in die Mathematik einzutauchen, die es ermÃķglicht.
Lassen Sie uns beginnen, indem wir definieren, was es bedeutet, einen Lerner zu âboostenâ. Schwache Lerner werden in starke Lerner umgewandelt, indem die Eigenschaften des Lernalgorithmus angepasst werden. Welcher Lernalgorithmus wird genau boostet?
Boosting-Modelle funktionieren, indem sie ein anderes hÃĪufiges Machine-Learning-Modell, einen Entscheidungsbaum, erweitern.
Ein Entscheidungsbaum-Modell funktioniert, indem es einen Datensatz in kleinere und kleinere Teile aufteilt, und sobald die Teile nicht mehr weiter aufgeteilt werden kÃķnnen, ist das Ergebnis ein Baum mit Knoten und BlÃĪttern. Knoten in einem Entscheidungsbaum sind die Stellen, an denen Entscheidungen Þber Datenpunkte unter Verwendung verschiedener Filterkriterien getroffen werden. Die BlÃĪtter in einem Entscheidungsbaum sind die Datenpunkte, die klassifiziert wurden. Entscheidungsbaum-Algorithmen kÃķnnen sowohl numerische als auch kategorische Daten verarbeiten, und die Aufteilungen im Baum basieren auf bestimmten Variablen/Merkmalen.

Illustration der Art und Weise, wie Boosting-Modelle trainiert werden.
Foto: SeattleDataBuy via Wikimedia Commons, CC 4.0 (https://commons.wikimedia.org/wiki/File:Boosting.png)
Eine Art von Boosting-Algorithmus ist der AdaBoost-Algorithmus. AdaBoost-Algorithmen beginnen damit, einen Entscheidungsbaum-Modell zu trainieren und jedem Beobachtungswert ein gleiches Gewicht zuzuweisen. Nachdem der erste Baum auf Genauigkeit ausgewertet wurde, werden die Gewichte fÞr die verschiedenen Beobachtungswerte angepasst. Beobachtungswerte, die leicht zu klassifizieren waren, haben ihre Gewichte verringert, wÃĪhrend Beobachtungswerte, die schwierig zu klassifizieren waren, ihre Gewichte erhÃķht haben. Ein zweiter Baum wird unter Verwendung dieser angepassten Gewichte erstellt, mit dem Ziel, dass die Vorhersagen des zweiten Baumes genauer sind als die des ersten Baumes.
Das Modell besteht nun aus den Vorhersagen des ursprÞnglichen Baumes und des neuen Baumes (oder Baum 1 + Baum 2). Die Klassifizierungsgenauigkeit wird erneut auf der Grundlage des neuen Modells bewertet. Ein dritter Baum wird auf der Grundlage des berechneten Fehlers fÞr das Modell erstellt, und die Gewichte werden erneut angepasst. Dieser Prozess wird fÞr eine bestimmte Anzahl von Iterationen wiederholt, und das endgÞltige Modell ist ein Ensemble-Modell, das die gewichtete Summe der Vorhersagen aller zuvor erstellten BÃĪume verwendet.
Der oben beschriebene Prozess verwendet EntscheidungsbÃĪume und die BasisprÃĪdiktoren/Modelle, doch kann ein Boosting-Ansatz mit einer Vielzahl von Modellen wie den vielen Standard-Klassifizierungs- und Regressionsmodellen durchgefÞhrt werden. Die SchlÞsselkonzepte, die verstanden werden mÞssen, sind, dass nachfolgende PrÃĪdiktoren aus den Fehlern der vorherigen lernen und dass die PrÃĪdiktoren sequentiell erstellt werden.
Der primÃĪre Vorteil von Boosting-Algorithmen ist, dass sie weniger Zeit benÃķtigen, um die aktuellen Vorhersagen im Vergleich zu anderen Machine-Learning-Modellen zu finden. Bei der Verwendung von Boosting-Algorithmen muss jedoch Vorsicht walten, da sie anfÃĪllig fÞr Overfitting sind.
Gradient Boosting
Wir werden nun einen der hÃĪufigsten Boosting-Algorithmen betrachten. Gradient-Boosting-Modelle (GBM) sind fÞr ihre hohe Genauigkeit bekannt und erweitern die allgemeinen Prinzipien, die in AdaBoost verwendet werden.
Der primÃĪre Unterschied zwischen einem Gradient-Boosting-Modell und AdaBoost ist, dass GBM eine andere Methode zur Berechnung verwenden, um zu bestimmen, welche Lerner Datenpunkte falsch identifizieren. AdaBoost berechnet, wo ein Modell unterperformt, indem es Datenpunkte untersucht, die stark gewichtet sind. GBM verwenden hingegen Gradienten, um die Genauigkeit von Lernern zu bestimmen, indem sie eine Verlustfunktion auf ein Modell anwenden. Verlustfunktionen sind eine MÃķglichkeit, die Genauigkeit der Anpassung eines Modells an den Datensatz zu messen, indem sie einen Fehler berechnen und das Modell optimieren, um diesen Fehler zu reduzieren. GBM ermÃķglichen es dem Benutzer, eine bestimmte Verlustfunktion basierend auf seinem gewÞnschten Ziel zu optimieren.
Wenn wir die hÃĪufigste Verlustfunktion â Mittlerer Quadratfehler (MQF) â als Beispiel nehmen, wird Gradientenabstieg verwendet, um Vorhersagen basierend auf einer vordefinierten Lernrate zu aktualisieren, mit dem Ziel, die Werte zu finden, bei denen der Verlust minimal ist.
Um es klarer zu machen:
Neue Modellvorhersagen = Ausgabevariablen â alte unvollkommene Vorhersagen.
In einem statistischeren Sinne zielen GBM darauf ab, relevante Muster in den Residuen eines Modells zu finden, das Modell anzupassen, um dem Muster zu entsprechen, und die Residuen so nah wie mÃķglich bei Null zu bringen. Wenn Sie eine Regressionsanalyse auf die Vorhersagen des Modells durchfÞhren wÞrden, wÞrden die Residuen um 0 (perfekte Anpassung) verteilt sein, und GBM finden Muster innerhalb der Residuen und aktualisieren das Modell um diese Muster herum.
Mit anderen Worten werden die Vorhersagen so aktualisiert, dass die Summe aller Residuen so nah wie mÃķglich bei 0 liegt, was bedeutet, dass die vorhergesagten Werte sehr nahe an den tatsÃĪchlichen Werten liegen werden.
Beachten Sie, dass eine Vielzahl von anderen Verlustfunktionen (wie logarithmischer Verlust) von einem GBM verwendet werden kann. MQF wurde oben aus GrÞnden der Einfachheit ausgewÃĪhlt.
Variationen von Gradient-Boosting-Modellen
Gradient-Boosting-Modelle sind gierige Algorithmen, die anfÃĪllig fÞr Overfitting auf einem Datensatz sind. Dies kann mit mehreren verschiedenen Methoden bewacht werden, die die Leistung eines GBM verbessern kÃķnnen.
GBM kÃķnnen mit vier verschiedenen Methoden reguliert werden: Shrinkage, Baum-BeschrÃĪnkungen, Stochastic Gradient Boosting und Penalized Learning.
Shrinkage
Wie bereits erwÃĪhnt, werden in GBM Vorhersagen in einer sequenziellen Weise summiert. Bei âShrinkageâ werden die Additionen jedes Baumes zur Gesamtsumme angepasst. Gewichte werden angewendet, die die Lernrate des Algorithmus verlangsamen, was bedeutet, dass mehr BÃĪume zum Modell hinzugefÞgt werden mÞssen, was normalerweise die Robustheit und Leistung des Modells verbessert. Der Trade-off ist, dass das Modell lÃĪnger zum Trainieren braucht.
Baum-BeschrÃĪnkungen
Die EinschrÃĪnkung des Baumes mit verschiedenen Anpassungen wie der ErhÃķhung der Tiefe des Baumes oder der ErhÃķhung der Anzahl von Knoten oder BlÃĪttern im Baum kann es dem Modell schwerer machen, Overfitting zu verursachen. Die Auferlegung einer EinschrÃĪnkung auf die Mindestanzahl von Beobachtungen pro Aufteilung hat eine ÃĪhnliche Wirkung. Erneut ist der Trade-off, dass es dem Modell lÃĪnger zum Trainieren braucht.
ZufÃĪllige Stichproben
Die individuellen Lerner kÃķnnen durch einen stochastischen Prozess erstellt werden, der auf zufÃĪllig ausgewÃĪhlten Teilstichproben des Trainingsdatensatzes basiert. Dies hat die Wirkung, die Korrelationen zwischen BÃĪumen zu reduzieren, was Overfitting verhindert. Der Datensatz kann vor der Erstellung der BÃĪume oder vor der BerÞcksichtigung einer Aufteilung im Baum substichprobenartig ausgewÃĪhlt werden.
Gestrafte Lernmethode
Beyond die EinschrÃĪnkung des Modells durch die Begrenzung der Struktur des Baumes, ist es mÃķglich, einen Regressionsbaum zu verwenden. RegressionsbÃĪume haben numerische Werte, die jedem Blatt zugeordnet sind, und diese fungieren als Gewichte und kÃķnnen mit gemeinsamen Regularisierungsfunktionen wie L1- und L2-Regularisierung angepasst werden.












