Gradientenverstärkung für lineare Regression - warum funktioniert das nicht?

35

Beim Erlernen von Gradient Boosting sind mir keine Einschränkungen in Bezug auf die Eigenschaften eines "schwachen Klassifikators" bekannt, mit dem die Methode ein Modell erstellt und zusammensetzt. Ich konnte mir jedoch keine Anwendung eines GB vorstellen, bei der lineare Regression verwendet wird, und tatsächlich funktioniert dies nicht, wenn ich einige Tests durchgeführt habe. Ich habe den Standardansatz mit einem Gradienten der Summe der quadratischen Residuen getestet und die nachfolgenden Modelle addiert.

Das offensichtliche Problem ist, dass die Residuen des ersten Modells so gefüllt sind, dass es wirklich keine passende Regressionslinie mehr gibt. Meine andere Beobachtung ist, dass eine Summe nachfolgender linearer Regressionsmodelle auch als ein einzelnes Regressionsmodell dargestellt werden kann (mit allen Abschnitten und entsprechenden Koeffizienten), so dass ich mir nicht vorstellen kann, wie dies das Modell jemals verbessern könnte. Die letzte Beobachtung ist, dass eine lineare Regression (der typischste Ansatz) die Summe der quadratischen Residuen als Verlustfunktion verwendet - die gleiche, die GB verwendet.

Ich habe auch darüber nachgedacht, die Lernrate zu senken oder nur eine Teilmenge von Prädiktoren für jede Iteration zu verwenden, aber das könnte schließlich immer noch zu einer einzelnen Modelldarstellung zusammengefasst werden, also würde es vermutlich keine Verbesserung bringen.

Was vermisse ich hier? Ist eine lineare Regression in Verbindung mit Gradient Boosting aus irgendeinem Grund unangemessen? Liegt es daran, dass die lineare Regression die Summe der quadratischen Residuen als Verlustfunktion verwendet? Gibt es spezielle Einschränkungen für die schwachen Prädiktoren, damit sie auf das Gradienten-Boosting angewendet werden können?

Matek
quelle
Intuitiv neige ich dazu zu denken, dass Sie keine Klassifikatoren verwenden sollten, wenn die Summe derselben Art von Klassifikator ist. zB ist die Summe der linearen Funktionen eine lineare Funktion.
user18764
Ich weiß, dass dies alt ist, aber ich verstehe, dass der Verstärkungsschritt die Verlustfunktion zwischen den aktuellen Residuen und dem Grundschüler (in Ihrem Fall eine lineare Regression) multipliziert mit der Lernrate minimiert. Also, während der Grundschüler mse minimiert, könnte die Verlustfunktion, die vom Booster verwendet wird, dieselbe MAPE sein?
David Waterworth

Antworten:

35

Was vermisse ich hier?

Ich glaube nicht, dass dir etwas wirklich fehlt!

Eine andere Beobachtung ist, dass eine Summe nachfolgender linearer Regressionsmodelle auch als einzelnes Regressionsmodell dargestellt werden kann (alle Abschnitte und entsprechenden Koeffizienten werden hinzugefügt), sodass ich mir nicht vorstellen kann, wie dies das Modell jemals verbessern könnte. Die letzte Beobachtung ist, dass eine lineare Regression (der typischste Ansatz) die Summe der quadratischen Residuen als Verlustfunktion verwendet - die gleiche, die GB verwendet.

Mir scheint, Sie haben es genau richtig gemacht und eine kurze Skizze eines Beweises gegeben, dass eine lineare Regression in dieser Situation besser ist als eine Verstärkung linearer Regressionen.

Um pedantisch zu sein, versuchen beide Methoden, das folgende Optimierungsproblem zu lösen

β^=argminβ(yXβ)t(yXβ)

Die lineare Regression stellt nur fest, dass Sie sie direkt lösen können, indem Sie die Lösung für die lineare Gleichung finden

XtXβ=Xty

Dies gibt Ihnen automatisch den bestmöglichen Wert von aus allen Möglichkeiten.β

Wenn Sie den Wert erhöhen, unabhängig davon, ob es sich bei Ihrem schwachen Klassifikator um eine Regression mit einer Variablen oder mit mehreren Variablen handelt, erhalten Sie eine Folge von Koeffizientenvektoren . Die endgültige Modellvorhersage ist, wie Sie sehen, eine Summe und hat dieselbe Funktionsform wie der vollständige lineare Regressorβ1,β2,

Xβ1+Xβ2++Xβn=X(β1+β2++βn)

Jeder dieser Schritte wird gewählt, um die Summe der Fehlerquadrate weiter zu verringern. Wir hätten jedoch die minimal mögliche Summe der quadratischen Fehler in dieser funktionalen Form finden können, indem wir zunächst eine vollständige lineare Regression durchgeführt hätten.

Ein möglicher Schutz vor einer Ankurbelung in dieser Situation könnte die implizite Regularisierung sein, die sie bietet. Möglicherweise (damit habe ich noch nicht gespielt) könnten Sie die Funktion zum frühen Anhalten eines Gradientenverstärkers zusammen mit einer Kreuzvalidierung verwenden, um die vollständige lineare Regression zu beenden. Dies würde Ihre Regression regulieren und möglicherweise bei Überanpassung helfen. Dies ist nicht besonders praktisch, da man in dieser Einstellung sehr effiziente und gut verstandene Optionen wie die Gratregression und das elastische Netz hat.

Boosting glänzt, wenn es keine knappe funktionale Form gibt. Durch das Erhöhen der Entscheidungsbäume wird die funktionale Form des Regressors / Klassifikators langsam an die Daten angepasst, was häufig zu komplexen Formen führt, die man sich von Hand und Auge nicht hätte erträumen können. Wenn eine einfache funktionale Form ist erwünscht, kurbelt werde dir nicht helfen zu finden (oder zumindest ist wahrscheinlich ein ziemlich ineffizienter Weg , es zu finden).

Matthew Drury
quelle
2
β
Das ist eine sehr gute und klare Antwort. Danke für die Bestätigung / Erklärung Matthew!
Matek
"Boosting glänzt, wenn es keine knappe funktionale Form gibt." Dies ist die Antwort, nach der ich suche. Also, ich möchte nur bestätigen, meinst du, dass meine Frage mit Ja beantwortet wurde, aber niemand ein lineares Modell als Grundkurs verwendet
Haitao Du
5

Die kleinste Quadratprojektionsmatrix ist gegeben durch

X(XTX)1XT

y^

y^=X(XTX)1XTy

Angenommen, Sie passen eine Regression an und berechnen anschließend Ihre Residuen

e=yy^=yX(XTX)1XTy

y^2

y^2=X(XTX)1XTe=X(XTX)1XT(yX(XTX)1XTy)=X(XTX)1XTyX(XTX)1XTX(XTX)1XTy=X(XTX)1XTyX(XTX)1XTy=0

y^

Dies bedeutet, dass der einfache Ansatz, eine Regression anzupassen und dann eine neue Regression auf die Residuen der ersten Regression anzuwenden, nichts Sinnvolles ergibt, da X völlig unkorreliert mit e ist.

Ich schreibe das, weil Sie sagten, dass es nicht wirklich eine neue Zeile gibt, die den obigen Ableitungen entspricht.

Kirtap
quelle