Bestraft die L2-Normalisierung der Gratregression das Abfangen? Wenn nicht, wie kann man seine Ableitung lösen?


8

Ich bin neu bei ML. Ich wurde informiert, dass die L2-Normalisierung der Gratregression den Achsenabschnitt nicht bestraft . Wie in der Kostenfunktion: Der L2-Normalisierungsterm summiert sich nur von bis , nicht von bis . Ich habe das auch gelesen:θ0

θJ(θ)=12i=1m(hθ(x(i))y(i))2+λj=1nθj2
λj=1nθj2j=1nj=0n

In den meisten Fällen (in allen Fällen?) ist es besser, nicht zu regulieren , da es unwahrscheinlich ist, dass die Überanpassung verringert und der Raum für darstellbare Funktionen verkleinert wirdθ0

Dies ergibt sich aus der letzten Antwort von user48956 von Warum ist ein lineares Regressionsmodell mit null Abschnitten besser vorhersagbar als ein Modell mit einem Abschnitt?

Ich bin verwirrt darüber, wie die Ableitung der Kostenfunktion zu lösen ist, da: wobei , und .Θ

θJ(θ)=12XθYTXθY+λ(θ)Tθ,
θ=[θ1θ2...θn] X = [ 1 X ( 1 ) 1 X ( 1 ) 2 . . . X ( 1 ) n 1 X ( 2 ) 1 X ( 2 ) 2 . .θ=[θ0θ1...θn]X=[1X1(1)X2(1)...Xn(1)1X1(2)X2(2)...Xn(2)...1X1(m)X2(m)...Xn(m)]

Θθθθ und sind unterschiedlich. Daher können sie aus meiner Sicht nicht gemischt werden. Und die Ableitung handelt von das . Nachdem ich gegoogelt und die Fragen in diesem Forum angesehen habe, kann ich immer noch keine Lösung finden: Kann mir jemand einen Hinweis geben? Vielen Dank im Voraus für Ihre Hilfe!θθ Θ=(XTX+λI) - 1 XTY.θ

θ=(XTX+λI)1XTY

Ich denke jedoch, dass es zwei schnelle Lösungen für dieses Problem gibt:

Zunächst fügen wir nicht die Spalte all 1 zu . Nämlich . Das heißt, wir nehmen den Achsenabschnitt überhaupt nicht in das Modell auf: Ich glaube, diese Methode wurde in das klassische Buch Maschinelles Lernen in Aktion von Peter Harrington übernommen, das ich gerade lese. Bei der Implementierung der Ridge-Regression (P166 und P177, wenn Sie auch das Buch haben) enthält das gesamte an die Ridge-Regression übergebene nicht die Spalte all 1.X = [ X ( 1 ) 1 X ( 1 ) 2 . .X y= θ 1 X 1 + θ 2 X 2 +. . . + θ n X n . X.X=[X1(1)X2(1)...Xn(1)X1(2)X2(2)...Xn(2)...X1(m)X2(m)...Xn(m)]

y=θ1X1+θ2X2+...+θnXn.
X

Zweitens wird der Abschnitt auch in der Realität bestraft.

Die logistische Regression von scikit reguliert standardmäßig den Achsenabschnitt.

Dies kommt wiederum aus der letzten Antwort von user48956 von Warum ist ein lineares Regressionsmodell mit null Abschnitten besser vorhersagbar als ein Modell mit einem Abschnitt?

Beide Schnellkorrekturen führen zur Lösung

θ=(XTX+λI)1XTY.

Kann also die Ableitung der L2-Normalisierung der Gratregression tatsächlich gelöst werden oder wird sie nur durch schnelle Korrekturen gelöst?


2
Siehe auch stats.stackexchange.com/questions/86991 . Die Antwort auf Ihre Frage lautet, dass alles gelöst werden kann: Zerlegen Sie einfach den ersten Term in theta_0 und theta_prime. Sie können sofort nach optimalem Theta_0 suchen: Es ist der Gesamtmittelwert. Dies führt zu Ihrer "Schnellkorrektur Nr. 1" als die richtige Lösung für theta_prime für die vom Mittelwert subtrahierten Daten.
Amöbe

3
Die zweite Lösung wird allgemein als falsch angesehen. Die Bestrafung des Abschnitts ist einer der wenigen Konstruktionsfehler bei sklearn.
Matthew Drury

1
@MatthewDrury Ich glaube, ich habe einen Hack erwähnt, um dies zu "beheben", und dich traurig gemacht. Aber ich möchte OP sagen, dass der Hack einen riesigen Intercept macht, wie 1e9. Dann hat die Regularisierung wenig Einfluss darauf.
Haitao Du

1
Yah, du erinnerst dich richtig, jedes Mal, wenn ich das tue, sterbe ich innerlich ein wenig.
Matthew Drury

@amoeba Vielen Dank! Ich erarbeite die Lösung in meiner Antwort unter Ihrer Anleitung. Können Sie mir helfen, das zu überprüfen? Außerdem stelle ich fest, dass maschinelles Lernen in Aktion den Mittelwert von subtrahiert und nicht die Spalte "Alle 1" zu hinzufügt, die beide der richtige Weg sind. Bei der Feature-Standardisierung wird durch Varianz und nicht durch Standardabweichung geteilt! Ich habe dazu eine andere Frage gestellt: nicht durch Standardabweichung Können Sie mir bei dieser Frage noch einmal helfen? Vielen Dank! YXXμ
Naomi

Antworten:


3

Die Elemente des statistischen Lernens von Hastie et al. weist in P63 darauf hin, dass:

Der Achsenabschnitt wurde aus dem Strafzeitraum herausgelassenθ0

Außerdem heißt es:

Die Gratlösungen sind unter Skalierung der Eingaben nicht äquivariant, so dass man normalerweise die Eingaben vor dem Lösen standardisiert (3.41) (3.41 ist die Kostenfunktion). Es kann gezeigt werden (Aufgabe 3.5), dass die Lösung zu (3.41) nach der Reparametrisierung unter Verwendung zentrierter Eingaben in zwei Teile geteilt werden kann: Jedes wird durch Wir schätzen durch Die verbleibenden Koeffizienten werden durch eine Gratregression ohne geschätzt Abfangen mit dem zentrierten . Von nun an wird angenommen, dass diese Zentrierung erfolgt ist, so daß die Eingangsmatrix hatXj(i)Xj(i)xj¯.θ0y¯=1mi=1my(i)Xj(i)Xn(statt ) Spalten.n+1

Obwohl ich mich frage, warum die Elemente des statistischen Lernens zuerst eine Standardisierung von Merkmalen vorschlagen und dann nur eine Merkmalszentrierung durchgeführt wird. Vielleicht, um mit Übung 3.5 übereinzustimmen, in der nur Feature-Centering verwendet wird.

Wie auch immer, ich glaube, es ist richtig, die Z-Score-Standardisierung auf Features anzuwenden. Deshalb versuche ich nun, die Ableitung der Kostenfunktion der Gratregression auf Vorschlag des obigen Kommentators Amöbe zu lösen. Vielen Dank an ihn oder sie!

Zunächst die Kostenfunktion: wobei der Mittelwert des Attributs und die Standardabweichung von . Um es kürzer zu machen: Nun berechnen wir zuerst den Wert von

θJ(θ)=12i=1m(yiθ0X1(i)X1¯σ1θ1X2(i)X2¯σ2θ2...Xn(i)Xn¯σnθn)2+λj=1nθj2,
Xj¯XjσjXj
θJ(θ)=12i=1m(yiθ0j=1nXj(i)Xj¯σjθj)2+λj=1nθj2
θ0im obigen Ausdruck durch Setzen der Ableitung in Bezug auf gleich Null. Da kein , erhalten wir: Das heißt: As (weil ist Mittelwert des Attributs ), also haben wir jetztθ0λj=1nθj2θ0
θ0J(θ)=i=1m(yiθ0j=1nXj(i)Xj¯σjθj)=0
i=1m(yiθ0)i=1mj=1nXj(i)Xj¯σjθj=0
i=1mj=1nXj(i)Xj¯σjθj=0
Xj¯Xj
i=1m(yiθ0)=0,
offensichtlich:
θ0=y¯=1mi=1my(i)

Der Achsenabschnitt der merkmalsstandardisierten Gratregression ist also immer . Wenn wir also zuerst zentralisieren, indem wir seinen Mittelwert subtrahieren (get für Datenbeispiel ), schließen Sie nicht alle 1 Spalten in und führen Sie dann eine Feature-Standardisierung für (get für des Datenbeispiels ) die Kostenfunktion einfach Das heißt y¯Y(yi)iXX(Xj(i))Xji

θJ(θ)=12i=1m((yi)j=1n(Xj(i))θj)2+λj=1nθj2
θJ(θ)=12XθYTXθY+λ(θ)Tθ,
wobei , hat nicht alle 1 Spalten und standardisiert von , ist in Bezug auf zentriert . Jetzt kann (ohne ) gelöst werden mit: Für standardisierte Features lautet das lineare Modell wobei θ=[θ1θ2...θn]XXYYθθ0
θ=((X)TX+λI)1(X)TY
y=y¯+θ1X1+θ2X2+...+θnXn(1),
Xi=XiXi¯σi(2)
Wenn wir (2) in (1) verwenden, wie in der Antwort von Plasty Grove vorgeschlagen . Für Ursprungseingabedaten lautet das lineare Modell also Das ist Deshalb werden nach der Lösung von Koeffizienten standardisierter Merkmale Koeffizienten von Ursprungskoeffizienten zurückgegeben (nicht standardisiert) Features) müssen wir
y=y¯+X1X1¯σ1θ1+X2X2¯σ2θ2+...+XnXn¯σnθn
θi/σi
y=θ1σ1X1+θ2σ2X2+...+θnσnXn+y¯X1¯σ1θ1X2¯σ2θ2...Xn¯σnθn
θi/σi

Schönes detailliertes Beispiel. Ein paar Kommentare: Sie kommentieren den Effekt der Zentrierung von , aber um einen Intercept-Term wegzulassen und korrekte Schätzungen zu erhalten, müssen Sie auch alle Features zentrieren . Ich stimme jedoch zu, dass dieses Beispiel mit der Begründung übereinstimmt, den Intercept-Term nicht zu bestrafen (um eine konsistente Schlussfolgerung zu erhalten). Zweitens sollte die Intuition hier für etwas dienen. Wir alle akzeptieren, dass die Vorhersage von anhand seines Mittelwerts einem 0-Parameter-Modell ähnelt. Um also den additiven Effekt von im Modell zu erhalten, dürfen wir den Begriff nicht bestrafen, der lediglich den Mittelwert-Y-Effekt in Gegenwart von . X Y X X.YXYXX
AdamO
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.