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


28

βlasso=argminβ⁡‖y−Xβ‖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(β)=‖y−Xβ‖22+α‖β‖1
=∑i=1n(yi−Xiβ)2+α∑j=1p|βj|
( Xi è la riga I di X ) ⇒ ∂ f
=∑i=1nyi2−2∑i=1nyiXiβ+∑i=1nβTXiTXiβ+α∑j=1p|βj|
⇒∂f∂βj=-2Σio=1nyioXioj+2∑i=1nXij2βj+∂∂βj(α|βj|)
={−2∑i=1nyiXij+2∑i=1nXij2βj+α for βj>0−2∑i=1nyiXij+2∑i=1nXij2βj−α for βj<0[−2∑i=1nyiXij−α,−2∑i=1nyiXij+α] for βj=0
Con ∂f∂βj=0 otteniamo

βj={(2(∑i=1nyiXij)−α)/2∑i=1nXij2for ∑i=1nyiXij>α(2(∑i=1nyiXij)+α)/2∑i=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(β)=‖y−Xβ‖22+α‖β‖1
=yTy−2β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|)−2∑i=1,i≠jp(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βi≠jX2(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=1nyi2−2∑i=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
∂∂βj∑i=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.