Perché la mia derivazione di una soluzione lazo in forma chiusa non è corretta?


28

βlasso=argminβyXβ22+αβ1
βjlasso=sgn(βjLS)(|βjLS|α)+
X

Tuttavia non capisco perché non esiste una soluzione a forma chiusa in generale. Usando le sottodifferenziali ho ottenuto quanto segue.

( X è una matrice n×p )

f(β)=yXβ22+αβ1
=i=1n(yiXiβ)2+αj=1p|βj|
( Xi è la riga I di X ) f
=i=1nyi22i=1nyiXiβ+i=1nβTXiTXiβ+αj=1p|βj|
fβj=-2Σio=1nyioXioj+2i=1nXij2βj+βj(α|βj|)
={2i=1nyiXij+2i=1nXij2βj+α for βj>02i=1nyiXij+2i=1nXij2βjα for βj<0[2i=1nyiXijα,2i=1nyiXij+α] for βj=0
Con fβj=0 otteniamo

βj={(2(i=1nyiXij)α)/2i=1nXij2for i=1nyiXij>α(2(i=1nyiXij)+α)/2i=1nXij2for i=1nyiXij<α0 for i=1nyiXij[α,α]

Qualcuno vede dove ho sbagliato?

Risposta:

Se scriviamo il problema in termini di matrici, possiamo vedere facilmente perché una soluzione in forma chiusa esiste solo nel caso ortonormale con XTX=I :

f(β)=yXβ22+αβ1
=yTy2βTXTy+βTXTXβ+αβ1
f(β)=2XTy+2XTXβ+(α|β1)
(Ho fatto molti passi contemporaneamente qui. Tuttavia, fino a questo punto questo è completamente analogo alla derivazione della soluzione dei minimi quadrati, quindi dovresti essere in grado di trovare i passaggi mancanti lì.)
fβj=2XjTy+2(XTX)jβ+βj(α|βj|)

Con fβj=0 otteniamo

2(XTX)jβ=2XjTyβj(α|βj|)
2(XTX)jjβj=2XjTyβj(α|βj|)2i=1,ijp(XTX)jiβi

Ora possiamo vedere che la nostra soluzione per uno dipende da tutti gli altri quindi non è chiaro come procedere da qui. Se è ortonormale abbiamo quindi esiste sicuramente una soluzione a forma chiusa in questo caso.βjβijX2(XTX)jβ=2(I)jβ=2βj

Grazie a Guðmundur Einarsson per la sua risposta, su cui ho elaborato qui. Spero che questa volta sia corretto :-)


3
Benvenuti a CrossValidated, e congratulazioni per un molto bella primo post!
S. Kolassa - Ripristina Monica

Risposte:


16

Questo è normalmente fatto con la minima regressione angolare, puoi trovare il documento qui .

Mi dispiace per la mia confusione all'inizio, ho intenzione di fare un altro tentativo.

Quindi dopo l'espansione della tua funzione ottienif(β)

f(β)=i=1nyi22i=1nyiXiβ+i=1nβTXiTXiβ+αj=1p|βj|

Quindi si calcola la derivata parziale rispetto a . La mia preoccupazione è nel calcolo della derivata parziale dell'ultimo termine prima della norma 1, cioè del termine quadratico. Esaminiamo ulteriormente. Abbiamo quello:βj

Xiβ=βTXiT=(β1Xi1+β2Xi2++βpXip)
Quindi puoi essenzialmente riscrivere il termine quadratico come: Ora possiamo usare la regola della catena per calcolare la derivata di questo :
i=1nβTXiTXiβ=i=1n(Xiβ)2
βj
βji=1n(Xiβ)2=i=1nβj(Xiβ)2=i=1n2(Xiβ)Xij

Quindi ora il tuo problema non si semplifica così facilmente, perché hai tutti i coefficienti presenti in ogni equazione.β

Questo non risponde alla tua domanda sul perché non esiste una soluzione in forma chiusa del Lazo, potrei aggiungere qualcosa in seguito.


1
Molte grazie. In realtà ora riesco a capire perché non esiste una soluzione a forma chiusa (vedi la mia modifica).
Norbert,

Dolce! Ottimo lavoro :)
Gumeo,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.