Qual è la complessità temporale della regressione di Lasso?


14

Qual è la complessità temporale asintotica della regressione del Lazo all'aumentare del numero di righe o colonne?

Risposte:


4

Ricordiamo che il lazo è un modello lineare con una regolarizzazione .l1

La ricerca dei parametri può essere formulata come un problema di ottimizzazione senza vincoli, in cui i parametri sono indicati da

.argminβ||yXβ||2+α||β||1

Nella formulazione vincolata i parametri sono indicati da

argminβ||yXβ||2s.t.||β||1<α

Che è un problema di programmazione quadratica e quindi polinomiale.

Quasi tutte le routine di ottimizzazione convessa, anche per cose non lineari flessibili come le reti neurali, si basano sul calcolo della derivata dei parametri wrt target. Non puoi prendere la derivata di però. Come tale, ti affidi a tecniche diverse. Esistono molti metodi per trovare i parametri. Ecco un documento di revisione sull'argomento, ottimizzazione dei minimi quadrati con regolarizzazione L1-Norm . La complessità temporale dell'ottimizzazione convessa iterativa è piuttosto difficile da analizzare, poiché dipende da un criterio di convergenza. Generalmente, i problemi iterativi convergono in meno epoche man mano che le osservazioni aumentano.α||w||1


4
Diverse cose: dire che un problema è "polinomiale" non è particolarmente utile, a meno che forse non si stia osservando una sorta di problema combinatorio (che di solito è esponenziale). In secondo luogo, il calcolo dei derivati è praticamente sempre non il fattore limitante. Terzo, di solito quando si discute della complessità temporale di un algoritmo iterativo, si osserva in genere il costo per passaggio e quindi non dipende da criteri di convergenza. Infine, non è in genere il caso che più osservazioni = meno iterazioni.
Cliff AB,

13

Mentre @JacobMick fornisce una panoramica più ampia e un collegamento a un documento di revisione, lasciatemi dare una "risposta scorciatoia" (che può essere considerata un caso speciale della sua risposta).

Lascia che il numero di variabili candidate (caratteristiche, colonne) sia e che la dimensione del campione (numero di osservazioni, righe) sia n . Considera LASSO implementato usando l'algoritmo LARS ( Efron et al., 2004 ). La complessità computazionale di LASSO è O ( K 3 + K 2 n ) ( ibid. )KnO(K3+K2n)

  • Per , K 3 < K 2 n e la complessità computazionale di LASSO è O ( K 2 n ) , che è la stessa di una regressione con variabili K ( Efron et al., 2004 , p. 443-444 ; citato anche in Schmidt, 2005 , sezione 2.4; per la complessità computazionale di una regressione, vedere questo post ).K<nK3<K2nO(K2n)K
  • KnK3K2nO(K3)

Riferimenti:


Richard, puoi commentare la complessità dell'iterazione per l'approccio GLM qui stats.stackexchange.com/questions/280304/… ?
rimodella il

@moodle, non posso fare a meno di scavare in profondità in quello (per il momento non ho tempo), ma +1 per la tua domanda.
Richard Hardy,

Ho dato un'occhiata, ma non è chiaro - sarebbe bello avere un secondo paio di occhi su di esso. Quindi c'è complessità di iterazione e piena complessità di convergenza, e penso che la letteratura sia in qualche modo vaga a volte sulle definizioni. Fondamentalmente ho un algoritmo che usa un risolutore lazo in una posizione molto critica tale che la complessità del mio algoritmo dipende fortemente dal risolutore. Sarebbe bello inchiodarlo. Saluti!
Metterò

@rnoodle, dubito fortemente che sarò in grado di aiutarti presto, ma una taglia può sicuramente attirare altre persone che conoscono meglio. In bocca al lupo!
Richard Hardy,
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.