1 votos

¿Por qué el AIC para el modelo log-lineal en glm devuelve Inf?

Estoy tratando de calcular el AIC para el modelo log-lineal en R, pero me sale Inf como resultado. El objetivo del modelo es predecir las ventas en euros a partir de algunas variables.

Por lo que entiendo especificando poisson(link = log) en glm cambia el método de cálculo de LSM a maximización de la probabilidad y asume una distribución diferente (Poisson en lugar de normal). Pero, ¿por qué no puede calcular el AIC?

En el ejemplo de abajo, en el modelo 2, donde hago el modelo log-lineal manualmente, obtengo el AIC (supongo que la distribución asumida es normal), pero en el modelo 3 el AIC se calcula como Inf . ¿Cuál es la diferencia entre los enfoques y cuál es el correcto?

Código de ejemplo:

    d <- data.frame(x = runif(100, 1, 10))
    d$y = d$x + runif(100, 1, 10)

#linear model
    M1 <- glm(y ~ ., data = d)
    summary(M1)
    AIC(M1)
#-6510.043
#log-linear model
    M2 <- glm(log(y) ~ ., data = d)
    summary(M2)
    AIC(M2)
#-392.0618
#log-linear model
    M3 <- glm(y ~ ., data = d,  poisson(link = log))
    summary(M3)
    AIC(M3)
#Inf

2voto

tbolt Puntos 103

El AIC se define como $$2k - 2\ln L(\theta)$$ donde $k$ es el número de parámetros y L es la probabilidad de su modelo. La distribución de Poisson supone que se observa un número entero no negativo, por lo que no tiene sentido utilizar una distribución de Poisson. glm cuando y claramente no es un número entero. Si intenta evaluar la densidad de Poisson en R, devolverá 0 si introduce un número decimal, por ejemplo

dpois(12.5, lambda = 12)
[1] 0
Warning message:
In dpois(12.5, 12) : non-integer x = 12.500000

Por tanto, si la probabilidad se evalúa en 0, la log-verosimilitud se evaluará en infinito negativo y el AIC será infinito.

Si por el contrario ronda el y variable al número entero más próximo, el valor AIC tiene más sentido:

d$y = round(d$y)
M3 <- glm(y ~ ., data = d,  poisson(link = log))
AIC(M3)
480.91

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