βlasso=argminβ∥y−Xβ∥22+α∥β∥1
βlassoj=sgn(βLSj)(|βLSj|−α)+
X
Sin embargo, no entiendo por qué no hay una solución de forma cerrada en general. Usando subdiferenciales obtuve lo siguiente.
( X es una matriz n×p )
f(β)=∥y−Xβ∥22+α∥β∥1
=∑i=1n(yi−Xiβ)2+α∑j=1p|βj|
(
Xi es la fila i-ésima de
X )
⇒ ∂ f= ∑i = 1nortey2yo- 2 ∑i = 1norteyyoXyoβ+ ∑i = 1norteβTXTyoXyoβ+ α ∑j = 1pagsEl | βjEl |
={ - 2 ∑ n i = 1 y i X i j + 2 ∑ n i = 1 X 2 i j β j + α para β j > 0 - 2 ∑ n i = 1 y i X i j + 2 ∑ n i⇒ ∂F∂βj= - 2 ∑i = 1norteyyoXyo j+ 2 ∑i = 1norteX2yo jβj+ ∂∂βj( α | βjEl | )
= ⎧⎩⎨⎪⎪- 2 ∑nortei = 1yyoXyo j+ 2 ∑nortei = 1X2yo jβj+ α para βj> 0- 2 ∑nortei = 1yyoXyo j+ 2 ∑nortei = 1X2yo jβj- α para βj< 0[ - 2 ∑nortei = 1yyoXyo j- α , - 2 ∑nortei = 1yyoXyo j+ α ] para βj= 0
Con
∂F∂βj= 0 obtenemos
βj= ⎧⎩⎨⎪⎪( 2 ( ∑nortei = 1yyoXyo j) - α ) / 2 ∑nortei = 1X2yo j( 2 ( ∑nortei = 1yyoXyo j) + α ) / 2 ∑nortei = 1X2yo j0 0para ∑nortei = 1yyoXyo j> αpara ∑nortei = 1yyoXyo j< - α para ∑nortei = 1yyoXyo j∈ [ - α , α ]
¿Alguien ve dónde me equivoqué?
Responder:
Si escribimos el problema en términos de matrices, podemos ver muy fácilmente por qué una solución de forma cerrada solo existe en el caso ortonormal con XTX= Yo :
f(β)=∥y−Xβ∥22+α∥β∥1
=yTy−2βTXTy+βTXTXβ+α∥β∥1
⇒∇f(β)=−2XTy+2XTXβ+∇(α|β∥1)
(He dado muchos pasos a la vez aquí. Sin embargo, hasta este punto, esto es completamente análogo a la derivación de la solución de mínimos cuadrados. Por lo tanto, debería poder encontrar los pasos faltantes allí.)
⇒∂f∂βj=−2XTjy+2(XTX)jβ+∂∂βj(α|βj|)
Con ∂f∂βj=0 obtenemos
2(XTX)jβ=2XTjy−∂∂βj(α|βj|)
⇔2(XTX)jjβj=2XTjy−∂∂βj(α|βj|)−2∑i=1,i≠jp(XTX)jiβi
Ahora podemos ver que nuestra solución para un depende de todos los demás por lo que no está claro cómo proceder desde aquí. Si es ortonormal, tenemos por lo que ciertamente existe una solución de forma cerrada en este caso.βjβi≠jX2(XTX)jβ=2(I)jβ=2βj
Gracias a Guðmundur Einarsson por su respuesta, sobre la cual elaboré aquí. Espero que esta vez sea correcto :-)