8 votos

Null desviación en glm R

Esta es una pregunta acerca de la diferencia en el cálculo de la nula la desviación en un simple modelo de Poisson con y sin una intercepción.

Si

y = c(2,3,6,7,8,9,10,12,15)
x = c(-1, -1, 0, 0, 0, 0, 1, 1, 1)

glm(y~x, family = poisson)

# Call:  glm(formula = y ~ x, family = poisson)
# 
# Coefficients:
# (Intercept)            x  
#      1.8893       0.6698  
# 
# Degrees of Freedom: 8 Total (i.e. Null);  7 Residual
# Null Deviance:      18.42 
# Residual Deviance: 2.939        AIC: 41.05

La nula la desviación puede ser calculada de la siguiente manera:

lf = sum(y * log(y) - y - log(factorial(y)))
ln = sum(y * log(mean(y)) - mean(y) - log(factorial(y)))

2*(lf - ln)

# [1] 18.42061

Si me encaja el modelo sin intercepto:

glm(y~x - 1, family = poisson)

# Call:  glm(formula = y ~ x - 1, family = poisson)
# 
# Coefficients:
#     x  
# 2.373  
# 
# Degrees of Freedom: 9 Total (i.e. Null);  8 Residual
# Null Deviance:      191.9 
# Residual Deviance: 94.74        AIC: 130.9

La nula la desviación es ahora 191.9.

Alguien me puede decir cómo calcular el valor null de la desviación para este modelo - yo estaba bajo la impresión de que sería el mismo que para el intercepto del modelo, es decir, un único parámetro igual a la media, pero obviamente no lo es.

Supongo que he asumido incorrectamente, que el modelo nulo es el mismo en ambos casos. No es esto o estoy en un error estúpido? Me gustaría que en realidad nunca consideró este caso, antes de que en cualquier detalle y es evidente que hay un vacío en mi conocimiento en algún lugar.

Puedo conseguir la anulación de la desviación de la siguiente manera:

glm(y~1-1, family=poisson)

# Call:  glm(formula = y ~ 1 - 1, family = poisson)
# 
# No coefficients
# 
# Degrees of Freedom: 9 Total (i.e. Null);  9 Residual
# Null Deviance:      191.9
# Residual Deviance: 191.9        AIC: 226

pero no sé lo que este modelo es.

Disculpas si esto ha sido contestado antes, pero la única pregunta similar que he visto (¿por Qué la nula la desviación en glm.nb difieren entre modelos de la misma variable de respuesta?) no dar una explicación explícita.

5voto

ISwearImCool Puntos 1

Gracias a @jbaums.

y = c(2,3,6,7,8,9,10,12,15)
x = c(-1, -1, 0, 0, 0, 0, 1, 1, 1)

Para no interceptar modelo nulo, tenemos: $$ Y \sim {\rm de Poisson}(1) $$ conduce a la siguiente null modelo de probabilidad plazo: $$ \mathcal L(y) = \exp(-1)/y! $$ o loglikelihood plazo: $$ l(y) = -1 - \log(y!) $$ El registro likehood para el modelo nulo es entonces la suma de estos términos:

lnull = sum(-1 - log(factorial(y))) 

Como de costumbre el registro likelhood para la saturado modelo es:

lf = sum(y * log(y) - y - log(factorial(y))) 

así que el null de la desviación es:

2*(lf - lnull) 
# [1] 191.8602 

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X