Das Lasso-Problem hat die geschlossene Form Lösung: \ beta_j ^ {\ text {lasso}} = \ mathrm {sgn} (\ beta ^ {\ text {LS}} _ j) (| \ beta_j ^ {\ text {LS }} | - \ alpha) ^ +
wenn X orthonormale Spalten hat. Dies wurde in diesem Thread gezeigt: Herleitung einer Lasso-Lösung in geschlossener Form .
βlasso=argminβ∥y−Xβ∥22+α∥β∥1
βlassoj=sgn(βLSj)(|βLSj|−α)+
X
Ich verstehe jedoch nicht, warum es überhaupt keine geschlossene Lösung gibt. Unter Verwendung von Subdifferenzen erhielt ich das Folgende.
( X ist eine n×p Matrix)
f(β)=∥y−Xβ∥22+α∥β∥1
=∑i=1n(yi−Xiβ)2+α∑j=1p|βj|
( ist die i-te Reihe von )
XiX=∑i=1ny2i−2∑i=1nyiXiβ+∑i=1nβTXTiXiβ+α∑j=1p|βj|
⇒∂f∂βj=−2∑i=1nyiXij+2∑i=1nX2ijβj+∂∂βj(α|βj|)
=⎧⎩⎨⎪⎪−2∑ni=1yiXij+2∑ni=1X2ijβj+α for βj>0−2∑ni=1yiXij+2∑ni=1X2ijβj−α for βj<0[−2∑ni=1yiXij−α,−2∑ni=1yiXij+α] for βj=0
Mit wir
∂f∂βj=0
βj=⎧⎩⎨⎪⎪(2(∑ni=1yiXij)−α)/2∑ni=1X2ij(2(∑ni=1yiXij)+α)/2∑ni=1X2ij0for ∑ni=1yiXij>αfor ∑ni=1yiXij<−α for ∑ni=1yiXij∈[−α,α]
Weiß jemand, wo ich falsch liege?
Antworten:
Wenn wir das Problem in Matrizen schreiben, können wir sehr leicht erkennen, warum eine geschlossene Lösung nur im orthonormalen Fall mit XTX=I :
f(β)=∥y−Xβ∥22+α∥β∥1
=yTy−2βTXTy+βTXTXβ+α∥β∥1
⇒∇f(β)=−2XTy+2XTXβ+∇(α|β∥1)
(Ich habe hier jedoch viele Schritte auf einmal unternommen.) Bis zu diesem Punkt ist dies völlig analog zur Herleitung der Lösung der kleinsten Quadrate. Sie sollten also in der Lage sein, die fehlenden Schritte dort zu finden.)
⇒∂f∂βj=−2XTjy+2(XTX)jβ+∂∂βj(α|βj|)
Mit ∂f∂βj=0 wir
2(XTX)jβ=2XTjy−∂∂βj(α|βj|)
⇔2(XTX)jjβj=2XTjy−∂∂βj(α|βj|)−2∑i=1,i≠jp(XTX)jiβi
Wir können jetzt sehen, dass unsere Lösung für ein von allen anderen abhängt, und es ist daher nicht klar, wie wir von hier aus vorgehen sollen. Wenn orthonormal ist, haben wir so dass es in diesem Fall sicherlich eine geschlossene Form gibt.βjβi≠jX2(XTX)jβ=2(I)jβ=2βj
Vielen Dank an Guðmundur Einarsson für seine Antwort, auf die ich hier näher eingegangen bin. Ich hoffe diesmal ist es richtig :-)
Antworten:
Dies geschieht normalerweise mit geringster Winkelregression. Das Papier finden Sie hier .
Entschuldigen Sie meine anfängliche Verwirrung, ich werde es erneut versuchen.
Nach der Erweiterung Ihrer Funktion Sie alsof(β)
Dann berechnen Sie die partielle Ableitung in Bezug auf . Mein Anliegen ist die Berechnung der partiellen Ableitung des letzten Terms vor der 1-Norm, dh des quadratischen Terms. Lassen Sie es uns weiter untersuchen. Wir haben das:βj
Jetzt vereinfacht sich Ihr Problem nicht mehr so einfach, da in jeder Gleichung alle Koeffizienten vorhanden sind.β
Dies beantwortet nicht Ihre Frage, warum es keine geschlossene Lösung des Lasso gibt, ich möchte später noch etwas hinzufügen.
quelle