Come tutti sappiamo, ci sono 2 metodi per valutare il modello di regressione logistica e stanno testando molto cose diverse
-
Potere predittivo:
Ottieni una statistica che misura quanto bene puoi prevedere la variabile dipendente in base alle variabili indipendenti. I ben noti Pseudo R ^ 2 sono McFadden (1974) e Cox e Snell (1989).
-
Statistiche sulla bontà di adattamento
Il test sta dicendo se potresti fare ancora meglio rendendo il modello più complicato, che in realtà sta verificando se ci sono non linearità o interazioni che hai perso.
Ho implementato entrambi i test sul mio modello, che hanno già aggiunto quadratica e interazione
:
>summary(spec_q2) Call: glm(formula = result ~ Top + Right + Left + Bottom + I(Top^2) + I(Left^2) + I(Bottom^2) + Top:Right + Top:Bottom + Right:Left, family = binomial()) Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) 0.955431 8.838584 0.108 0.9139 Top 0.311891 0.189793 1.643 0.1003 Right -1.015460 0.502736 -2.020 0.0434 * Left -0.962143 0.431534 -2.230 0.0258 * Bottom 0.198631 0.157242 1.263 0.2065 I(Top^2) -0.003213 0.002114 -1.520 0.1285 I(Left^2) -0.054258 0.008768 -6.188 6.09e-10 *** I(Bottom^2) 0.003725 0.001782 2.091 0.0366 * Top:Right 0.012290 0.007540 1.630 0.1031 Top:Bottom 0.004536 0.002880 1.575 0.1153 Right:Left -0.044283 0.015983 -2.771 0.0056 ** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 (Dispersion parameter for binomial family taken to be 1) Null deviance: 3350.3 on 2799 degrees of freedom Residual deviance: 1984.6 on 2789 degrees of freedom AIC: 2006.6
e la potenza prevista è la seguente, il MaFadden è 0,4004 e il valore compreso tra 0,2 ~ 0,4 dovrebbe essere considerato per presentare un ottimo adattamento del modello (Louviere et al (2000), Domenich e McFadden (1975)):
> PseudoR2(spec_q2) McFadden Adj.McFadden Cox.Snell Nagelkerke McKelvey.Zavoina Effron Count Adj.Count 0.4076315 0.4004680 0.3859918 0.5531859 0.6144487 0.4616466 0.8489286 0.4712500 AIC Corrected.AIC 2006.6179010 2006.7125925
e le statistiche sulla bontà di adattamento:
> hoslem.test(result,phat,g=8) Hosmer and Lemeshow goodness of fit (GOF) test data: result, phat X-squared = 2800, df = 6, p-value < 2.2e-16
A quanto mi risulta, GOF sta effettivamente testando la seguente ipotesi nulla e alternativa:
H0: The models does not need interaction and non-linearity H1: The models needs interaction and non-linearity
Poiché i miei modelli hanno aggiunto linterazione, la non linearità già e il valore p mostra H0 dovrebbe essere rifiutata, quindi ho sono giunto alla conclusione che il mio modello necessita di interazione, anzi non linearità. Spero che la mia interpretazione sia corretta e grazie per qualsiasi consiglio in anticipo, grazie.
Commenti
- vedi anche stats.stackexchange.com/questions/169000/ … e stats.stackexchange.com/questions/167483 / …
- Meglio guardare la tabella sottostante piuttosto che il valore p per il test HL. E anche nei grafici dei residui del tuo modello. Questo mostrerà dove si trova il problema.
- Hosmer-Lemeshow è considerato obsoleto: stats.stackexchange.com/questions/273966/…
Risposta
Ci sono diversi problemi da risolvere.
- $ R ^ 2 $ le misure da sole non misurano mai la bontà di adattamento; misurano principalmente la discriminazione predittiva. La bontà delladattamento deriva solo dal confronto di $ R ^ 2 $ con $ R ^ 2 $ di un modello più ricco
- Il test di Hosmer-Lemeshow riguarda lerrore di calibrazione generale, non una particolare mancanza di adattamento come effetti quadratici. Non tiene adeguatamente conto delloverfitting, è arbitrario nella scelta dei contenitori e del metodo di calcolo dei quantili e spesso ha una potenza troppo bassa.
- Per questi motivi il test di Hosmer-Lemeshow non è più raccomandato. Hosmer et al ne hanno uno migliore d.f. test omnibus di adattamento, implementato nella funzione
rms
packageresiduals.lrm
. - Per il tuo caso, la bontà di adattamento può essere valutato testando congiuntamente (in un test “chunk”) il contributo di tutti i termini quadrati e di interazione.
- Ma consiglio di specificare il modello per renderlo più probabile che si adatti in anticipo (specialmente per quanto riguarda ipotesi di linearità rilassanti utilizzando le spline di regressione) e utilizzando il bootstrap per stimare loverfitting e ottenere una curva di calibrazione regolare ad alta risoluzione corretta per loverfitting per verificare laccuratezza assoluta. Questi vengono eseguiti utilizzando il pacchetto R
rms
.
Sullultimo punto, preferisco la filosofia che i modelli siano flessibili (come limitato dal campione size, comunque) e che ci concentriamo più su “fit” che su “mancanza di fit”.
Commenti
- Solo una cosa: la maggior parte $ R ^ 2 $ misure confrontano il modello adattato con un ” modello perfetto ” che ottiene la previsione corretta per ogni record, senza fare un df / regolazione overfitting. +1 da parte mia.
- Sì, ‘ è solo che non speriamo mai di essere perfetti, quindi non chiamerei $ 1 – R ^ {2} $ mancanza di adattamento.
Risposta
Da Wikipedia :
Il test valuta se i tassi di eventi osservati corrispondono o meno ai tassi di eventi previsti nei sottogruppi della popolazione modello. Il test Hosmer – Lemeshow identifica specificamente i sottogruppi come i decili dei valori di rischio adattati. I modelli per i quali i tassi di eventi attesi e osservati nei sottogruppi sono simili sono definiti ben calibrati.
Il suo significato: dopo aver creato il modello con il punteggio del modello “sy, vuoi per verificare se è distribuito su 10 decili simili ai tassi di eventi effettivi.
Quindi le ipotesi saranno
- $ H_0 $: i tassi di eventi effettivi e previsti sono simili su 10 decili
- $ H_1 $: sono mot uguali
Quindi se p -value è minore di.05, non sono ben distribuiti e devi perfezionare il tuo modello.
Spero che questo risponda ad alcune delle tue domande.
Risposta
Questo è piuttosto discutibile seguendo la risposta di @FrankHarrell “, ma un fan del test H – L dedurrebbe da quel risultato che nonostante la tua inclusione di termini quadratici & alcune † interazioni di secondo ordine, il modello ancora ha mostrato una significativa mancanza di adattamento, & che forse un modello ancora più complesso sarebbe appropriato. Stai testando ladattamento esattamente del modello che hai specificato, non del modello più semplice del primo ordine.
† Non è un modello completo del secondo ordine — ce ne sono tre interazioni in corso.