Comme nous le savons tous, il existe 2 méthodes pour évaluer le modèle de régression logistique et elles testent très différentes choses
-
Puissance prédictive:
Obtenez une statistique qui mesure à quel point vous pouvez prédire la variable dépendante en fonction des variables indépendantes. Les pseudo R ^ 2 bien connus sont McFadden (1974) et Cox et Snell (1989).
-
Statistiques de qualité dajustement
Le test indique si vous pourriez faire encore mieux en rendant le modèle plus compliqué, ce qui teste en fait sil y a des non-linéarités ou des interactions que vous avez manquées.
Jai implémenté les deux tests sur mon modèle, qui ajoutaient déjà quadratique et dinteraction
:
>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
et la puissance prédite est comme ci-dessous, le MaFadden est de 0,4004, et la valeur entre 0,2 ~ 0,4 doit être prise pour présenter un très bon ajustement du modèle (Louviere et al (2000), Domenich et 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
et les statistiques de qualité dajustement:
> 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
Daprès ce que je comprends, GOF teste actuellement lhypothèse nulle et alternative suivante:
H0: The models does not need interaction and non-linearity H1: The models needs interaction and non-linearity
Étant donné que mes modèles ont ajouté de linteraction, la non-linéarité déjà et la valeur p indique que H0 doit être rejetée, donc je est venu à la conclusion que mon modèle a besoin dinteraction, de non-linéarité en effet. Jespère que mon interprétation est correcte et merci pour tout conseil à lavance, merci.
Commentaires
- voir aussi stats.stackexchange.com/questions/169000/ … et stats.stackexchange.com/questions/167483 / …
- Il vaut mieux regarder la table sous-jacente que la valeur p pour le test HL. Et aussi sur les tracés des résidus de votre modèle. Cela montrera où se trouve le problème.
- Hosmer-Lemeshow est considéré comme obsolète: stats.stackexchange.com/questions/273966/…
Réponse
Il y a plusieurs problèmes à résoudre.
- $ R ^ 2 $ les mesures en elles-mêmes ne mesurent jamais la qualité de lajustement; ils mesurent principalement la discrimination prédictive. La qualité de lajustement ne vient que de la comparaison de $ R ^ 2 $ avec le $ R ^ 2 $ dun modèle plus riche
- Le test de Hosmer-Lemeshow concerne lerreur détalonnage globale, pas un manque particulier dajustement tel que effets quadratiques. Il ne prend pas correctement en compte le surajustement, est arbitraire dans le choix des bins et de la méthode de calcul des quantiles, et a souvent une puissance trop faible.
- Pour ces raisons, le test Hosmer-Lemeshow nest plus recommandé. Hosmer et al ont un meilleur d.f. test omnibus dajustement, implémenté dans la fonction R
rms
residuals.lrm
. - Pour votre cas, la qualité de lajustement peut être évalué en testant conjointement (dans un test « chunk ») la contribution de tous les termes de carré et dinteraction.
- Mais je recommande de spécifier le modèle pour le rendre plus susceptible de sadapter dès le départ (en particulier en ce qui concerne assouplissement des hypothèses de linéarité à laide de splines de régression) et en utilisant le bootstrap pour estimer le surajustement et pour obtenir une courbe détalonnage lisse haute résolution corrigée du surajustement pour vérifier lexactitude absolue. Celles-ci se font en utilisant le package R
rms
.
Sur le dernier point, je préfère la philosophie selon laquelle les modèles doivent être flexibles (comme limité par lexemple taille, de toute façon) et que nous nous concentrons davantage sur « ajustement » que « manque dajustement ».
Commentaires
- Juste une chose: la plupart des $ R ^ 2 $ mesures comparent le modèle ajusté à un » modèle parfait » qui obtient la bonne prédiction pour chaque enregistrement, sans faire de df / ajustement du sur-ajustement. +1 de moi.
- Oui, cest ‘ que nous nespérons jamais être parfait, donc je nappellerais pas $ 1 – R ^ {2} $ manque dajustement.
Réponse
De Wikipedia :
Le test évalue si les taux dévénements observés correspondent ou non aux taux dévénements attendus dans les sous-groupes de la population modèle. Le test de Hosmer – Lemeshow identifie spécifiquement les sous-groupes comme étant les déciles des valeurs de risque ajustées. Les modèles pour lesquels les taux dévénements attendus et observés dans les sous-groupes sont similaires sont appelés bien calibrés.
Sa signification: après avoir construit le modèle en notant votre modèle « sy, vous voulez pour vérifier sil est réparti sur 10 déciles, comme les taux dévénements réels.
Les hypothèses seront donc
- $ H_0 $: les taux dévénements réels et prévus sont similaires sur 10 déciles
- $ H_1 $: ils sont identiques
Donc si p -valeur est inférieur à.05, ils ne sont pas bien distribués et vous devez affiner votre modèle.
Jespère que cela répond à certaines de vos questions.
Réponse
Ceci est plutôt discutable après la réponse de @FrankHarrell « , mais un fan du test H – L en déduirait que malgré votre inclusion de termes quadratiques & quelques † interactions de second ordre, le modèle a montré un manque dajustement significatif, & quun modèle encore plus complexe serait peut-être approprié. Vous testez précisément lajustement du modèle que vous avez spécifié, et non du modèle modèle de premier ordre plus simple.
† Ce nest pas un modèle complet de second ordre — il y en a trois interactions à faire.