Die Lasso-Strafe galt nur für eine Untergruppe von Regressoren


7

Diese Frage wurde bereits gestellt, aber es gab keine Antworten, daher dachte ich, ich könnte sie noch einmal stellen.

Ich bin daran interessiert, eine Lasso-Strafe auf eine Untergruppe der Regressoren anzuwenden, dh mit objektiver Funktion

E=||yX1β1X2β2||2+λ||β1||1

Dabei wird das Lasso nur auf \ boldsymbol {\ beta} _1 angewendet, β1aber β2 ist an der Rekonstruktion beteiligt.

Gibt es eine Theorie dahinter? Zweitens gibt es überhaupt eine Möglichkeit, dies in sklearn zu tun?

Antworten:


6

Sei ein orthogonaler Projektor auf den Spaltenraum von . Wir haben das where H2X2

minβ1,β2{yX1β1X2β222+λβ11}=minβ1,β2{H2(yX1β1)X2β222+(IH2)(yX1β1)22+λβ11}=minβ1|β2minβ2{H2(yX1β1)X2β222+(IH2)(yX1β1)22+λβ11},
β^2=argminβ2{H2(yX1β1)X2β222+(IH2)(yX1β1)22+λβ11}=argminβ2{H2(yX1β1)X2β222}
erfüllt für alle seit für alle . Wenn man in diesem Satz den Fall betrachtet, dass vollen Rang hat, haben wir ferner da in diesem Fall.X2β^2=H2(yX1β1)β1H2(yX1β1)col(X2)β1X2
β^2=(X2TX2)1X2T(yX1β1),
H2=X2(X2TX2)1X2

Wenn wir dies in das erste Optimierungsproblem einfügen, sehen wir, dass die mit den üblichen Lasso-Rechenwerkzeugen ausgewertet werden kann. Wie Whuber in seinem Kommentar vorschlägt, ist dieses Ergebnis intuitiv, da die uneingeschränkten Koeffizienten die Spanne von abdecken können , so dass bei der Bewertung von nur der Teil des Raums orthogonal zur Spanne von von Bedeutung ist .

β^1=argminβ1{0+(IH2)(yX1β1)22+λβ11}(*)=argminβ1{(IH2)y(IH2)X1β122+λβ11},
β2X2X2β^1

Obwohl die Notation etwas allgemeiner ist, ist fast jeder, der jemals Lasso verwendet hat, mit diesem Ergebnis vertraut. Um dies zu sehen, nehmen wir an, dass die (Länge ) Vektoren von Einsen sind, die den Achsenabschnitt darstellen. Dann ist die Projektionsmatrix und für jeden Vektor die orthogonale Projektion erniedrigt nur die Vektor. In Anbetracht von Gleichung ist dies genau das, was Menschen tun, wenn sie die Lassokoeffizienten berechnen! Sie erniedrigen die Daten, so dass der Abschnitt nicht berücksichtigt werden muss.X2=1nH2=1(1T1)11T=1n11Tv(IH2)v=vv¯1()


7

Ich weiß nicht, dass Sie hinter einem solchen Ansatz viel "Theorie" brauchen. Bestrafte Regressionsansätze (LASSO, Ridge oder ihre hybride elastische Netzregression) sind Werkzeuge, um Bias-Varianz-Kompromisse einzugehen, um die Generalisierbarkeit und Leistung des Modells zu verbessern. Sie können sich sicher dafür entscheiden, einige Variablen nicht zu bestrafen, wie Sie es für vorschlagen , während andere bestraft werden. In diesem Artikel wurde beispielsweise die Wirksamkeit eines Impfstoffs untersucht, indem der Impfstatus nicht bestraft wurde, während andere Kovariaten mit einer Ridge-Regression-L2-Strafe einbezogen wurden. Durch diesen Ansatz wurde eine Überanpassung an Kovariaten vermieden und gleichzeitig eine direkte Bewertung des wichtigsten interessierenden Prädiktors ermöglicht.β2

Fragen zu Implementierungen in bestimmten Programmierumgebungen sind auf dieser Site nicht zum Thema. Ein allgemeiner Weg, um dieses Problem anzugehen, wie im glmnetPaket in R, besteht darin, einen prädiktorspezifischen Straffaktor aufzunehmen, der die Gesamtauswahl von multipliziert, bevor die Zielfunktion bewertet wird. Prädiktoren haben Standardstraffaktoren von 1, aber ein Prädiktor mit einem bestimmten Straffaktor von 0 würde überhaupt nicht bestraft und einer mit einem unendlichen Straffaktor würde immer ausgeschlossen. Zwischenwerte von Straffaktoren, die sich zwischen Prädiktoren unterscheiden, können jede gewünschte unterschiedliche Bestrafung unter den Prädiktoren liefern. Ich vermute, dass dieser Ansatz irgendwie in die von bereitgestellten Tools integriert werden kann .λsklearn


2
+1 Da normalerweise nicht angegeben wird, sondern auf andere Weise gefunden wird, sieht es so aus, als könnte man die Auswirkung von auf entfernen (indem man gegen ). Passen Sie mit als Antwort und dem angepassten als an die Regressoren, und führen Sie dann das Lasso für die Residuen aus, wobei Sie nur als Regressoren verwenden. Der Lösungsraum für ist derselbe, aber der Parameter kann mit einer (inkonsequenten) Konstante multipliziert werden. Die Problemumgehung für die Ridge-Regression ist noch einfacher . λX1X2X2X1β2YX2X1β1λ
whuber
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.