Test di significatività dei coefficienti nella regressione logistica del lazo


10

[Una domanda simile è stata posta qui senza risposte]

Ho adattato un modello di regressione logistica con la regolarizzazione L1 (regressione logistica Lazo) e vorrei testare i coefficienti adattati per la significatività e ottenere i loro valori p. So che i test di Wald (per esempio) sono un'opzione per testare il significato dei singoli coefficienti in piena regressione senza regolarizzazione, ma con Lasso penso che sorgano ulteriori problemi che non consentono di applicare le solite formule di Wald. Ad esempio, le stime di varianza richieste per il test non seguono le espressioni usuali. La carta Lasso originale

http://statweb.stanford.edu/~tibs/lasso/lasso.pdf

suggerisce una procedura basata su bootstrap per stimare la varianza dei coefficienti, che (di nuovo, credo) potrebbe essere necessaria per i test (sezione 2.5, ultimo paragrafo di pagina 272 e inizio di 273):

Un approccio è tramite il bootstrap: o può essere risolto oppure possiamo ottimizzare su per ogni campione bootstrap. La correzione di è analoga alla selezione del sottoinsieme migliore ( di funzioni ) e quindi all'utilizzo dell'errore standard dei minimi quadrati per quel sottoinsiemettt

Quello che ho capito è: adattare ripetutamente una regressione Lazo all'intero set di dati fino a quando non troviamo il valore ottimale per il parametro di regolarizzazione (questo non fa parte del bootstrap), quindi utilizzare solo le funzionalità selezionate dal Lazo per adattare le regressioni OLS ai sottocampioni dei dati e applicare le solite formule per calcolare le variazioni da ciascuna di tali regressioni. (E quindi cosa dovrei fare con tutte quelle varianze di ciascun coefficiente per ottenere la stima della varianza finale di ciascun coefficiente?)

Inoltre, è corretto utilizzare i consueti test di significatività (ad esempio il test di Wald che utilizza le beta e le varianze stimate) con le stime del lazo dei coefficienti e le varianze stimate del bootstrap? Sono abbastanza sicuro che non lo sia, ma qualsiasi aiuto (usa un test diverso, usa un approccio più diretto, qualunque cosa ...) è più che benvenuto.

Secondo le risposte qui sospetto che inferenza e valori p non possano essere ottenuti. Nel mio caso, i valori di p sono un requisito esterno (anche se l'uso della regolarizzazione L1 è stata la mia scelta).

molte grazie

EDIT Cosa succede se inserisco una regressione logistica OLS utilizzando solo le variabili selezionate da una precedente esecuzione della regressione logistica Lasso? Apparentemente (vedi qui ),

Non è necessario eseguire nuovamente il modello dopo aver eseguito la convalida incrociata (si ottengono solo i coefficienti dall'output di cv.glmnet), e infatti se si adatta il nuovo modello di regressione logistica senza penalità, si sta vanificando lo scopo dell'utilizzo laccio

Ma cosa succede se lo faccio con il solo scopo di poter calcolare i valori p mantenendo basso il numero di variabili? È un approccio molto sporco? :-)


Per fare l'inferenza per i modelli LASSO puoi anche dare un'occhiata al pacchetto CRAN hdi che fornisce l'inferenza per i modelli ad alta dimensione, potresti dare un'occhiata a quello ...
Tom Wenseleers,

I metodi completi sono ben descritti in questo documento: projecteuclid.org/euclid.ss/1449670857
Tom Wenseleers,

E c'è anche il pacchetto cran.r-project.org/web/packages/selectiveInference/index.html che può essere utile per fornire inferenza per il LASSO ...
Tom Wenseleers

Questa è una bella e importante domanda da porre.
Jinhua Wang,

Risposte:


5

Il problema con l'utilizzo dei consueti test di significatività è che assumono il valore nullo ovvero che ci sono variabili casuali, senza relazione con le variabili di risultato. Comunque quello che hai con il lazo, è un mucchio di variabili casuali, da cui selezioni le migliori con il lazo, anche i beta sono ridotti. Quindi non puoi usarlo, i risultati saranno distorti.

Per quanto ne so, il bootstrap non viene utilizzato per ottenere la stima della varianza, ma per ottenere le probabilità di una variabile selezionata. E quelli sono i tuoi valori p. Controlla il libro gratuito di Hasie, Statistical Learning with Sparsity, il capitolo 6 parla della stessa cosa. http://web.stanford.edu/~hastie/StatLearnSparsity/

Controlla anche questo documento per altri modi per ottenere i valori p da lasso https://arxiv.org/pdf/1408.4026.pdf Probabilmente ce ne sono altri


4

n

Fortunatamente, negli ultimi anni ci sono stati molti progressi nello sviluppo di metodi di inferenza che spiegano la post-selezione. Alcuni riferimenti rilevanti per il tuo caso sono: http://projecteuclid.org/euclid.aos/1460381681 e, https://arxiv.org/pdf/1602.07358.pdf . Le tecniche discusse in questi riferimenti sono implementate nel pacchetto R SelectiveInference- https://cran.r-project.org/web/packages/selectiveInference/index.html . Il pacchetto selectInference dovrebbe produrre gli intervalli di confidenza validi necessari.


1
Nella specializzazione Machine Learning in Coursera di Univ. di Washington, gli insegnanti del corso 2 (Regressione) hanno dedicato un'intera settimana alla regressione del lazo. In una delle diapositive, la procedura che ho descritto (usando Lasso per selezionare le caratteristiche e poi adattando una regressione LS con solo quelle variabili) è denominata debiasing ed è considerata corretta e illustrata con i grafici di un articolo di Mario Figueiredo. Controlla qui la diapositiva 105: github.com/MaxPoon/coursera-Machine-Learning-specialization/…
Pablo

Mentre raccomandano di debiasare il lazo, non discutono affatto di test di ipotesi. Inoltre, il termine de-biasing è fuorviante, perché durante il refitting il modello elimina la distorsione al ribasso indotta dal lazo, non aiuta con la propensione al rialzo indotta dalla maledizione del vincitore. Per quanto ne so, l'unico modo per deviare veramente le stime del coefficiente di regressione del modello selezionato è calcolare le stime condizionali della massima verosimiglianza. arxiv.org/abs/1705.09417
user3903581
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.