Interprétation de la déviance résiduelle et nulle dans GLM R

47

Comment interpréter la déviance nulle et résiduelle dans GLM in R? Comme, nous disons qu'un plus petit AIC est meilleur. Existe-t-il une interprétation similaire et rapide pour les déviances également?

Déviance nulle: 1146.1 sur 1077 degrés de liberté Déviance résiduelle: 4589.4 sur 1099 degrés de liberté AIC: 11089

Anjali
la source

Réponses:

74

LL = loglikelihood

Voici un résumé rapide de ce que vous voyez dans la sortie de résumé (glm.fit),

Déviance nulle = 2 (LL (modèle saturé) - LL (modèle nul)) sur df = df_Sat - df_Null

Déviance résiduelle = 2 (LL (modèle saturé) - LL (modèle proposé)) df = df_Sat - df_Proposed

Le modèle saturé est un modèle qui suppose que chaque point de données a ses propres paramètres (ce qui signifie que vous avez n paramètres à estimer).

Le modèle null suppose exactement "l'opposé", c'est-à-dire qu'il suppose un paramètre pour tous les points de données, ce qui signifie que vous n'évaluez qu'un paramètre.

Le modèle proposé suppose que vous pouvez expliquer vos points de données avec p paramètres + un terme d'interception, vous avez donc p + 1 paramètres.

Si votre Null Deviance est vraiment petit, cela signifie que le modèle Null explique assez bien les données. De même avec votre déviance résiduelle .

Que signifie vraiment petit? Si votre modèle est "bon", alors votre Deviance est approximativement égale à ^ ^ avec des degrés de liberté (df_sat - df_model).

Si vous voulez comparer votre modèle Null avec votre modèle proposé, alors vous pouvez regarder

(Déviance Null - Déviance Résiduelle) approx Chi ^ 2 avec df Proposé - df Null = (n- (p + 1)) - (n-1) = p

Les résultats que vous avez donnés directement de R? Ils semblent un peu bizarres, car vous devriez généralement voir que les degrés de liberté indiqués sur le Null sont toujours supérieurs aux degrés de liberté indiqués sur le résidu. En effet, encore une fois, déviation nulle df = saturée df - nulle df = n-1 déviance résiduelle df = saturée df - df proposée = n- (p + 1)

TeresaStat
la source
Oui, c'est une description très utile @TeresaStat, merci. À quel point est-ce robuste? Les définitions changent-elles si vous parlez d'un modèle multinomial au lieu d'un GLM?
Hack-R
@ Teresa: Oui, ces résultats proviennent de R. Pourquoi cela arriverait-il? Un problème avec le modèle ici?
Anjali
@ Hack-R: désolé pour une réponse si tardive, je suis nouveau à Stackexchange. Pour les modèles multinomiaux, vous n'utilisez pas la fonction glm dans R et la sortie est différente. Vous devrez examiner soit un modèle de probabilité proportionnelle, soit une régression ordinale, la fonction mlogit. Cela vaut la peine de faire un peu de lecture sur les glms multinomiales, ils ont des hypothèses légèrement différentes. Si je peux y arriver pendant la pause, je mettrai à jour cette information avec quelques informations supplémentaires.
TeresaStat
@Anjali, je ne sais pas trop pourquoi vous obtiendrez de tels résultats en R. Il est difficile de le savoir sans consulter vos données / résultats. En général, je ne vois pas pourquoi les degrés de liberté résiduels seraient plus élevés que le df nul. Combien de paramètres estimiez-vous?
TeresaStat
1
@ user4050 L'objectif de la modélisation en général peut être considéré comme utilisant le plus petit nombre de paramètres permettant d'expliquer le mieux votre réponse. Pour déterminer le nombre de paramètres à utiliser, vous devez examiner l'avantage d'ajouter un paramètre supplémentaire. Si un paramètre supplémentaire explique beaucoup (produit une déviance élevée) à partir de votre modèle plus petit, vous avez besoin du paramètre supplémentaire. Afin de quantifier ce qui est beaucoup, vous avez besoin de la théorie statistique. La théorie nous dit que la déviance est khi carré avec des degrés de liberté égaux à la différence de paramètres entre vos deux modèles. Est-ce plus clair?
TeresaStat le
13

La déviance nulle montre à quel point le modèle prédit la réponse avec seulement une interception.

La déviance résiduelle montre à quel point la réponse est prédite par le modèle lorsque les prédicteurs sont inclus. Dans votre exemple, on peut voir que la déviance augmente de 3443,3 lorsque 22 variables prédictives sont ajoutées (remarque: degrés de liberté = nombre d'observations - nombre de prédicteurs). Cette augmentation de la déviance est la preuve d'un manque important d'ajustement.

Nous pouvons également utiliser la déviance résiduelle pour tester si l'hypothèse nulle est vraie (le modèle de régression logistique fournit un ajustement adéquat pour les données). Ceci est possible parce que la déviance est donnée par la valeur khi-carré à un certain degré de liberté. Afin de tester la signification, nous pouvons trouver les valeurs p associées en utilisant la formule ci-dessous dans R:

p-value = 1 - pchisq(deviance, degrees of freedom)

En utilisant les valeurs ci-dessus de déviance résiduelle et de FD, vous obtenez une valeur p d'environ zéro, ce qui montre qu'il existe un manque significatif de preuves pour soutenir l'hypothèse nulle.

> 1 - pchisq(4589.4, 1099)
[1] 0
dts86
la source
2
Comment savoir ce qui est coupé pour un bon / mauvais ajustement basé sur la déviance et le nombre de variables prédictives (sans le pchisq)? Est-ce juste si Déviance résiduelle> NULL Déviance ou existe-t-il une plage / un ratio?
Hack-R
3
Votre réponse n'est pas fausse, mais est sujette à des malentendus. En fait, il a été mal compris (cf ici ). À la lumière de cela, pouvez-vous clarifier les différences implicites dans votre code?
Gay - Rétablir Monica