Mostrando l'equivalenza tra il Norm regolarizzata regressione e Norm Constrained Regressione Utilizzando KKT


11

Secondo i riferimenti libro 1 , libro 2 e carta .

È stato menzionato che esiste un'equivalenza tra la regressione regolarizzata (Ridge, LASSO e Elastic Net) e le loro formule di vincolo.

Ho anche esaminato Cross Validated 1 e Cross Validated 2 , ma non riesco a vedere una risposta chiara che mostri l'equivalenza o la logica.

La mia domanda è

Come mostrare tale equivalenza usando Karush – Kuhn – Tucker (KKT)?

Le seguenti formule sono per la regressione di Ridge.

Cresta

NOTA

Questa domanda non è un compito. È solo per aumentare la mia comprensione di questo argomento.

AGGIORNARE

Non ho ancora avuto l'idea.


Perché hai bisogno di più di 1 risposta? La risposta attuale sembra rispondere alla domanda in modo completo. Se vuoi saperne di più sui metodi di ottimizzazione, Convex Optimization Lieven Vandenberghe e Stephen P. Boyd è un buon punto di partenza.
Sycorax dice di reintegrare Monica il

@Sycorax, grazie per i tuoi commenti e per il libro che mi hai fornito. La risposta non è così chiara per me e non posso chiedere ulteriori chiarimenti. Pertanto, più di una risposta può farmi vedere una prospettiva e un modo di descrivere diversi.
Jeza,

@jeza, cosa manca nella mia risposta?
Royi,

1
Digita la tua domanda come testo, non solo pubblicare una fotografia (vedi qui ).
gung - Ripristina Monica

Risposte:


10

La risposta più tecnica è perché il problema di ottimizzazione vincolata può essere scritto in termini di moltiplicatori di Lagrange. In particolare, il lagrangiano associato al problema di ottimizzazione vincolata è dato da dove è un moltiplicatore scelto per soddisfare i vincoli del problema. Le condizioni del primo ordine (che sono sufficienti poiché si stanno lavorando con funzioni convesse adeguate) per questo problema di ottimizzazione possono quindi essere ottenute differenziando il lagrangiano rispetto a

L(β)=un'rgmionβ{Σio=1N(yio-Σj=1pXiojβj)2}+μ{(1-α)Σj=1p|βj|+αΣj=1pβj2}
μβe impostare le derivate pari a 0 (è un po 'più sfumato poiché la parte LASSO ha punti indifferenti, ma ci sono metodi dall'analisi convessa per generalizzare la derivata per far funzionare ancora la condizione del primo ordine). È chiaro che queste condizioni del primo ordine sono identiche alle condizioni del primo ordine del problema non vincolato che hai annotato.

Tuttavia, penso che sia utile capire perché, in generale, con questi problemi di ottimizzazione, è spesso possibile pensare al problema o attraverso l'obiettivo di un problema di ottimizzazione vincolato o attraverso l'obiettivo di un problema non vincolato. Più concretamente, supponiamo di avere un problema di ottimizzazione senza nella seguente forma: Possiamo sempre provare a risolvere direttamente questa ottimizzazione, ma a volte potrebbe avere senso rompere questo problema in sottocomponenti. In particolare, non è difficile vedere che Quindi per un valore fisso di

maxXf(X)+λg(X)
maxXf(X)+λg(X)=maxt(maxXf(X) S.t g(X)=t)+λt
λ(e supponendo che le funzioni da ottimizzare raggiungano effettivamente il loro optima), possiamo associarvi un valore che risolve il problema di ottimizzazione esterna. Questo ci dà una sorta di mappatura da problemi di ottimizzazione senza vincoli a problemi vincolati. Nella tua impostazione particolare, poiché tutto è ben comportato per la regressione della rete elastica, questa mappatura dovrebbe in effetti essere una a una, quindi sarà utile poter passare tra questi due contesti a seconda di quale è più utile per una particolare applicazione. In generale, questa relazione tra problemi vincolati e non vincolati può essere meno ben condotta, ma può essere comunque utile pensare fino a che punto è possibile spostarsi tra il problema vincolato e quello non vincolato.t*

Modifica: come richiesto, includerò un'analisi più concreta per la regressione della cresta, poiché cattura le idee principali evitando di dover affrontare i tecnicismi associati alla non differenziabilità della penalità LASSO. Ricordiamo, stiamo risolvendo il problema di ottimizzazione (in notazione matriciale):

un'rgmionβ{Σio=1Nyio-XioTβ}S.t.||β||2M

Sia la soluzione OLS (ovvero quando non vi sono vincoli). Quindi mi concentrerò sul caso in cui(a condizione che esista) poiché altrimenti, il vincolo non è interessante poiché non vincola. Il lagrangiano per questo problema può essere scritto Quindi , differenziando , otteniamo le condizioni del primo ordine: che è solo un sistema di equazioni lineari e quindi può essere risolto: βOLSM<||βOLS||

L(β)=un'rgmionβ{Σio=1Nyio-XioTβ}-μ||β||2M
0 = - 2 ( N i = 1
0=-2(Σio=1NyioXio+(Σio=1NXioXioT+μio)β)
β = ( N Σ i = 1 x i x T i + μ I ) - 1 ( N Σ i = 1 y i x i ) μ
β^=(Σio=1NXioXioT+μio)-1(Σio=1NyioXio)
per qualche scelta del moltiplicatore . Il moltiplicatore viene quindi semplicemente scelto per rendere vero il vincolo, cioè abbiamo bisognoμ

((Σio=1NXioXioT+μio)-1(Σio=1NyioXio))T((Σio=1NXioXioT+μio)-1(Σio=1NyioXio))=M
che esiste dal momento che LHS è monotonico in . Questa equazione fornisce una mappatura esplicita dai moltiplicatori ai vincoli, con quando esiste l'RHS e Questa mappatura corrisponde effettivamente a qualcosa di abbastanza intuitivo. Il teorema della busta ci dice cheμμ(0,)M(0,||βOLS||)
limμ0M(μ)=||βOLS||
limμM(μ)=0
μ(M)corrisponde alla diminuzione marginale errore che otteniamo da un piccolo rilassamento del vincolo . Questo spiega perché quando corrisponde a. Una volta che il vincolo non è vincolante, non c'è più alcun valore nel rilassarlo, motivo per cui il moltiplicatore svanisce.Mμ0M||βOLS||


potresti per favore fornirci una risposta dettagliata passo dopo passo con un esempio pratico, se possibile.
Jeza

molte grazie, perché non menzioni KKT? Non ho familiarità con quest'area, quindi trattami come uno studente delle superiori.
Jeza

Le condizioni KKT in questo caso sono una generalizzazione delle "condizioni del primo ordine" che menziono differenziando il lagrangiano e impostando la derivata uguale a 0. Dato che in questo esempio, i vincoli valgono con l'uguaglianza, non abbiamo bisogno delle condizioni KKT in pieno in generale. In casi più complicati, tutto ciò che accade è che alcune delle uguaglianze sopra diventano disuguaglianze e il moltiplicatore diventa 0 per i vincoli che diventano non vincolanti. Ad esempio, questo è esattamente ciò che accade quandonel sopra. M>||βOLS||
stats_model

3

C'è una grande analisi di stats_model nella sua risposta .

Ho provato a rispondere a una domanda simile a The Proof of Equivalent Formulas of Ridge Regression .

Prenderò più approccio pratico per questo caso.
Proviamo a vedere la mappatura tra e nei 2 modelli.tλ

Come ho scritto e può essere visto da stats_model nella sua analisi, la mappatura dipende dai dati. Quindi sceglieremo una realizzazione specifica del problema. Tuttavia, il codice e lo sketch della soluzione aggiungeranno intuizione a ciò che sta succedendo.

Confronteremo i seguenti 2 modelli:

Il modello regolarizzato: argminX12UNX-y22+λX22

Il modello vincolato: argminX12UNX-y22soggetto aX22t

Supponiamo che sia la soluzione del modello regolarizzato e sia la soluzione del modello vincolato. X^X~

Stiamo esaminando la mappatura da a tale che . Guardando la mia soluzione al Risolutore per i vincoli minimi quadrati della norma si potrebbe vedere che risolvere il modello vincolato implica risolvere il modello regolarizzato e trovare il che corrisponde alla (il codice effettivo è presentato in minimi quadrati con Euclide ( ) Vincolo della norma ).tλx = ~ x λ t L 2X^=X~
λtL2

Quindi eseguiremo lo stesso solutore e per ogni visualizzeremo il ottimale .tλ

Il risolutore risolve sostanzialmente:

argλλsoggetto a(UNTUN+2λio)-1UNTB22-t=0

Quindi ecco la nostra matrice:

mA =

   -0.0716    0.2384   -0.6963   -0.0359
    0.5794   -0.9141    0.3674    1.6489
   -0.1485   -0.0049    0.3248   -1.7484
    0.5391   -0.4839   -0.5446   -0.8117
    0.0023    0.0434    0.5681    0.7776
    0.6104   -0.9808    0.6951   -1.1300

Ed ecco il nostro vettore:

vB =

    0.7087
   -1.2776
    0.0753
    1.1536
    1.2268
    1.5418

Questa è la mappatura:

inserisci qui la descrizione dell'immagine

Come si può vedere sopra, per un valore abbastanza alto di il parametro come previsto.tλ=0

Zoom avanti nell'intervallo [0, 10]:

inserisci qui la descrizione dell'immagine

Il codice completo è disponibile sul mio repository GitHub Q401212 StackExchange convalidato .

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.