Comprensione delle funzionalità più importanti per la regressione logistica


17

Ho creato un classificatore di regressione logistica che è molto preciso sui miei dati. Ora voglio capire meglio perché funziona così bene. In particolare, vorrei classificare quali caratteristiche stanno apportando il contributo maggiore (quali sono le funzioni più importanti) e, idealmente, quantificare quanto ciascuna funzionalità contribuisce alla precisione del modello generale (o qualcosa in questa ottica). Come faccio a fare questo?

Il mio primo pensiero è stato quello di classificarli in base al loro coefficiente, ma sospetto che questo non possa essere giusto. Se avessi due funzioni ugualmente utili, ma la diffusione della prima è dieci volte più grande della seconda, mi aspetto che la prima riceva un coefficiente inferiore rispetto alla seconda. Esiste un modo più ragionevole per valutare l'importanza delle funzionalità?

Si noti che non sto cercando di capire quanto una piccola modifica nella funzionalità influisca sulla probabilità del risultato. Piuttosto, sto cercando di capire quanto sia preziosa ogni funzione, in termini di accuratezza del classificatore. Inoltre, il mio obiettivo non è tanto quello di eseguire la selezione delle funzionalità o di costruire un modello con meno funzionalità, ma di provare a fornire un po 'di "spiegabilità" per il modello appreso, quindi il classificatore non è solo una scatola nera opaca.


Vorrei aggiungere che anche le foreste casuali sono una buona tecnica. È possibile esaminare le suddivisioni superiori sulla foresta per ottenere intuizione su quali funzioni contribuiscono maggiormente alla previsione.

Risposte:


14

La prima cosa da notare è che non si utilizza la regressione logistica come classificatore. Il fatto che sia binario non ha assolutamente nulla a che fare con l'uso di questo metodo di massima verosimiglianza per classificare effettivamente le osservazioni. Una volta superato questo, concentrati sulla misura delle informazioni standard gold che è un sottoprodotto della massima probabilità: il rapporto di probabilità χ 2 statistica. È possibile produrre un grafico che mostra il contributo parziale di ciascun predittore in termini del suo parziale χ 2Yχ2χ2statistica. Queste statistiche hanno la massima informazione / potenza. È possibile utilizzare il bootstrap per mostrare quanto sia difficile scegliere "vincitori" e "perdenti" ottenendo intervalli di confidenza sui ranghi delle informazioni predittive fornite da ciascun predittore dopo che gli altri predittori sono stati contabilizzati. Un esempio è nella Sezione 5.4 delle mie note sul corso : fai clic su Dispense, quindi di nuovo Dispense.

Se si dispone di funzionalità altamente correlate, è possibile eseguire un "test di blocco" per combinare la loro influenza. Un grafico che lo fa è mostrato nella Figura 15.11 in cui sizerappresenta il contributo combinato di 4 predittori separati.


6

La risposta breve è che non esiste un solo modo "giusto" per rispondere a questa domanda.

Per la migliore revisione dei problemi consultare gli articoli di Ulrike Groemping, ad esempio, Stimatori di importanza relativa nella regressione lineare basata sulla decomposizione della varianza . Le opzioni che discute vanno dalla semplice euristica a sofisticate soluzioni multivariate, ad alta intensità di CPU.

http://prof.beuth-hochschule.de/fileadmin/prof/groemp/downloads/amstat07mayp139.pdf

Groemping propone il suo approccio in un pacchetto R chiamato RELAIMPO che vale anche la pena leggere.

https://cran.r-project.org/web/packages/relaimpo/relaimpo.pdf

Un'euristica rapida e sporca che ho usato è quella di riassumere i chi-quadrati (valori F, statistiche t) associati a ciascun parametro, quindi ricentrare i singoli valori con quella somma. Il risultato sarebbe una metrica di importanza relativa classificabile.

Detto questo, non sono mai stato un fan dei "coefficienti beta standardizzati", anche se sono spesso raccomandati dalla professione e ampiamente utilizzati. Ecco il problema con loro: la standardizzazione è univariata ed esterna alla soluzione del modello. In altre parole, questo approccio non riflette la natura condizionale dei risultati del modello.


Grazie per la risposta e i collegamenti! Potete approfondire o aiutarmi a capire cosa significano "esterno alla soluzione del modello" e "natura condizionata dei risultati del modello"? (Non sono un esperto di statistica, ahimè.)
DW,

1
Nessun problema. L'idea di come i modelli "controllano" o condizionino gli altri fattori di un modello può essere una di quelle cose su cui molti statistici possono effettivamente concordare. È anche un argomento che ha visto molti commenti su questo sito. Ecco un link a uno di questi thread: stats.stackexchange.com/questions/17336/… Uno dei migliori commenti in esso è stato di @whuber che ha detto, 'Potresti pensare di "controllare" come "contabilità (nel senso meno quadrato) ) per il contributo / influenza / effetto / associazione di una variabile su tutte le altre variabili. "
Mike Hunter,

Grazie! Conosco l'idea di "controllare" un certo fattore. In che modo ciò si collega o aiuta a comprendere il significato di "esterno alla soluzione del modello" o "la natura condizionale dei risultati del modello"?
DW

La standardizzazione dei predittori per creare una "beta standardizzata" viene in genere eseguita prima della creazione di un modello, giusto? Pertanto, tale trasformazione è "esterna" alla soluzione del modello. Con me finora?
Mike Hunter,

OK. Ora capisco cosa intendi per "esterno", grazie per la spiegazione. Puoi spiegare perché questo è un problema e cosa si intende per "natura condizionata ..."? (Forse quelle due domande sono la stessa domanda con la stessa risposta ...) Scusa se ti pepato! Sono ansioso di capire cosa hai scritto.
DW

3

Un modo abbastanza solido per farlo sarebbe provare ad adattare il modello N volte dove N è il numero di funzioni. Ogni volta usa N-1 delle funzionalità e lascia fuori una funzionalità. Quindi è possibile utilizzare la metrica di convalida preferita per misurare quanto l'inclusione o l'esclusione di ciascuna funzionalità influisce sulle prestazioni del modello. A seconda del numero di funzionalità disponibili, questo può essere costoso dal punto di vista computazionale.


4
Questo non gestisce bene le funzionalità correlate. È facile progettare una situazione in cui due funzionalità sono altamente correlate, in modo che la rimozione di una di esse influisca minimamente sulla potenza predittiva, ma rimuovendola entrambe si ripercuote gravemente. In sostanza, uno in cui i due predittori trasportano informazioni quasi identiche, ma importanti.
Matthew Drury,

2
Sono d'accordo. Questo è anche un pericolo quando si esaminano i coefficienti.
Daniel Johnson,

1
Abbastanza vero. Abbastanza vero.
Matthew Drury,

2

Hai ragione nella tua osservazione che semplicemente guardando la dimensione del coefficiente stimato |βj^|non è molto significativo per il motivo menzionato. Ma un semplice aggiustamento è moltiplicare la stima del coefficiente per la deviazione standard stimata del predittore|βj^|σ^je usalo come misura di importanza. Questo è talvolta chiamato coefficiente beta standardizzato e nella regressione logistica rappresenta la variazione delle probabilità di successo stimate del log causata da una variazione di una deviazione standard inXj. Un problema è che si interrompe quando non si ha più a che fare con predittori numerici.

Per quanto riguarda il tuo ultimo punto, ovviamente è possibile che una variabile possa contribuire molto alle probabilità di registro stimate senza influire molto sulle probabilità "vere" del registro, ma non penso che questo debba essere troppo preoccupante se noi avere fiducia nella procedura che ha prodotto le stime.


0

Hai ragione sul perché non dovresti usare i coefficienti come misura di rilevanza, ma puoi assolutamente se li dividi per il loro errore standard! Se hai stimato il modello con R, allora è già fatto per te! Puoi anche rimuovere le funzionalità meno importanti dal modello e vedere come funziona.

Un approccio più euristico per studiare come diversi cambiamenti nelle variabili alterano il risultato sta facendo esattamente questo: provare diversi input e studiare le loro probabilità stimate. Tuttavia, dato che il tuo modello è abbastanza semplice, mi sconsiglio

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.