Analisi residua della regressione logistica


12

Questa domanda è un po 'generica e prolissa, ma per favore abbi pazienza.

Nella mia applicazione, ho molti set di dati, ciascuno composto da ~ 20.000 punti dati con ~ 50 funzionalità e una singola variabile binaria dipendente. Sto tentando di modellare i set di dati utilizzando la regressione logistica regolarizzata (pacchetto R glmnet )

Come parte della mia analisi, ho creato grafici residui come segue. Per ogni funzione, ordino i punti dati in base al valore di quella funzione, divido i punti dati in 100 bucket, quindi calcolo il valore di output medio e il valore di previsione medio all'interno di ciascun bucket. Tracciamo queste differenze.

Ecco un esempio di trama residua:

Nel grafico sopra, la funzione ha un intervallo di [0,1] (con una forte concentrazione a 1). Come puoi vedere, quando il valore della funzione è basso, il modello sembra distorto verso la sovrastima della probabilità di un output 1. Ad esempio, nel bucket più a sinistra, il modello sopravvaluta la probabilità di circa il 9%.

Grazie a queste informazioni, vorrei modificare la definizione della funzione in modo semplice per correggere approssimativamente questo pregiudizio. Alterazioni come la sostituzione

XX

o

Xfun'(X)={un' Se X<un' X altro

Come posso fare questo? Sto cercando una metodologia generale in modo che un essere umano possa scorrere rapidamente tutti i ~ 50 grafici e apportare modifiche, e farlo per tutti i set di dati e ripetere spesso per mantenere aggiornati i modelli man mano che i dati si evolvono nel tempo.

Come domanda generale, è forse questo l'approccio giusto? Le ricerche di Google per "analisi residua della regressione logistica" non danno molti risultati con buoni consigli pratici. Sembrano essere fissati nel rispondere alla domanda "Questo modello è adatto?" e offrire vari test come Hosmer-Lemeshow per rispondere. Ma non mi importa se il mio modello è buono, voglio sapere come migliorarlo!

Risposte:


4

Non si può davvero valutare il pregiudizio in quel modo nella regressione logistica. La regressione logistica dovrebbe essere imparziale solo sulle probabilità del registro o sui punteggi del registro, registro (p / (1-p)). Le proporzioni saranno distorte e quindi appariranno distorte. È necessario tracciare i residui in termini di probabilità del registro.


Come posso combinare i residui dispari di registro in un secchio? Media aritmetica? Questo è un po 'inquietante per me. Intuitivamente, se un'analisi residua non mostra alcun bias, allora mi aspetto che quando il modello prevede Pr [y = 1] <0,2, allora y dovrebbe essere uguale a 1 con probabilità inferiore a 0,2. Ma la tua risposta sembra suggerire che non è così. Sto capendo correttamente?
dshin,

questo è probabilmente meglio pubblicato come commento.
Probislogic,

No David, non implica nient'altro che la probabilità 0,2, forse le mie modifiche lo rendono più chiaro.
John,

Scusa, sono ancora un po 'confuso. La mia comprensione intuitiva di un modello imparziale è che se il modello prevede p = 0,2 su ognuno di un gran numero di punti dati, allora il 20% di tali punti dati dovrebbe avere y = 1. Questa comprensione è corretta? In tal caso, sembra che la mia metodologia di stampa dovrebbe visualizzare correttamente i pregiudizi. Altrimenti ... non sono molto contento di questo concetto di "pregiudizio"! Se una lettura del modello imparziale di 0,2 non mi dice nulla sulla probabilità che y = 1, a che serve l'imparzialità?
dshin,

Sì, il 20% dovrebbe avere y = 1. Ma non sarà morto, sarà fuori di un certo importo. Nello spazio di probabilità in quale direzione pensi che sarà fuori di e di quanto? Se è imparziale, cadrà ugualmente da qualche parte in .2: 1 o in 0: .2. Tuttavia, come puoi vedere dalle dimensioni di quegli spazi, tenderanno ad essere più lontani nell'area più grande solo perché possono. Nello spazio logit la distanza dovrebbe essere uguale + o -.
Giovanni

2

è improbabile che esista un software generale per farlo. molto probabilmente perché non esiste una teoria generale per risolvere i problemi di regressione. quindi questo è più un tipo di risposta "cosa farei" piuttosto che una procedura teoricamente fondata.

la trama che produci è fondamentalmente un test HL visivo con 100 bin, ma utilizzando un singolo predittore invece della probabilità prevista di eseguire il binning. ciò significa che è probabile che la procedura erediti alcune delle proprietà del test HL.

la tua procedura sembra ragionevole, anche se dovresti essere consapevole di "sovralimentare" i tuoi criteri. i tuoi criteri sono anche meno utili come diagnostici perché sono diventati parte del processo di stima. inoltre, ogni volta che fai qualcosa per intuizione, dovresti scrivere il tuo processo decisionale nel modo più dettagliato possibile. questo perché potresti scoprire i semi di un processo o teoria generale, che una volta sviluppato porta a una procedura migliore (più automatica e ottimale rispetto ad alcune teorie).

penso che una strada da percorrere sia innanzitutto ridurre il numero di trame che è necessario indagare. un modo per farlo è quello di adattare ogni variabile come una spline cubica e quindi investigare i grafici che hanno stime non lineari non zero. dato il numero di punti dati questa è anche una soluzione automatica semplice per le non linearità. questo espanderà il tuo modello da 50 a 200 + 50k dove k è il numero di nodi. potresti pensare a questo come ad applicare un "ampliamento statistico delle serie di Taylor" della trasformazione "vera".

se i tuoi fermi diagnostici sembrano andare male dopo questo, allora proverei ad aggiungere termini di interazione.

parti della tua domanda sembrano più sulla scrittura di un programma interattivo, che è più il dominio dello stackoverflow che qui. può anche essere utile cercare strumenti di analisi dei dati esplorativi in ​​quanto è più probabile che abbiano caratteristiche che è possibile "abbandonare".


Grazie per questa risposta Esaminerò l'idea della spline cubica. Avevo adottato questo approccio "guarda i grafici e regola le caratteristiche" in un contesto di regressione lineare, dove sembrava più ovvio come ottenere risultati migliori. Ad esempio, se vedi una mazza da hockey, è ovvio che l'applicazione di una correzione f_a (x) porta ad un adattamento migliore. Spesso, la conoscenza del dominio problematico coincide con questa decisione: se si prevede la felicità dal reddito, ad esempio, avrebbe senso limitare il reddito, a meno che non si pensi che i miliardari siano 1000 volte più felici dei milionari.
dshin,

Ma quando sono passato a un'impostazione di regressione logistica, mi sono reso conto che non ero davvero sicuro di come trasferire la mia metodologia. Da qui questa presentazione.
dshin,
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.