Obtención de AIC / probabilidad de los coeficientes del modeloTal vez un poco fuera de tema, pero:
Recibo un modelo de R GLMNet (un paquete de red elástica de regresión general, porque el cliente no actualizará desde JMP 10) y necesito calcular el AIC. Este paquete no parece darme la probabilidad. Asi que ... ¿Es posible calcular la máxima verosimilitud a partir de los coeficientes? El modelo está hecho usando la máxima probabilidad, así que espero que haya alguna forma de obtener esta información si tengo el modelo elegido. Probablemente no lo sea, pero estoy agarrando pajitas en este momento.
Re: obtener AIC / probabilidad de los coeficientes del modeloDisculpe, ¿tiene alguna referencia sobre "Desviación (nula) - Desviación (ajuste) = 2 (L (modelo) -L (nula))"?
Con 2 (L (modelo) -L (nulo) quieres decir que es " 2 logs de probabilidad "o" 2 log (L0 / L1) "¿No debería ser" -2 log probabilidad " , o la ecuación de Desviación (nula): ¿Desviación (ajuste) ignorar el signo negativo (-)?
Lo siento por la rápida pregunta.
Re: obtener AIC / probabilidad de los coeficientes del modeloDisculpe, ¿dónde está la referencia que indica que "D eviance (null) - Deviance (fit) = 2 (L (model) -L (null)) "?
Además, ¿quiso decir que 2L (modelo) es 2 log de probabilidad? o la 2 (L (modelo) -L (nula) es la probabilidad de 2 registros?
Re: obtener AIC / probabilidad de los coeficientes del modeloEl primer término en la ecuación debe ser negativo. A medida que disminuye la desviación, el AICc debería mejorar (disminuir).
Re: obtener AIC / probabilidad de los coeficientes del modeloGracias por ayudarnos con esto (el sábado nada menos). Solo para que quede claro, si hago los pasos a continuación, ¿debería obtener algo proporcional a las JMP AIC?
Names Default to here(1);
k =[0, 1, 1, 2, 2];
n=500;
nulldev = 1100;
devs = [1100, 1099, 1098, 1097, 1096]; //calculated from (1-dev.ratio)*nulldev
fake2L = nulldev-devs;
AIC = -fake2L+2*k+2*k:*(k+1):/(n-k-1);
* Editar * cambiado AIC para ser correcto
Re: obtener AIC / probabilidad de los coeficientes del modeloEs posible que pueda obtener la probabilidad del modelo después de todo.
Ajuste el modelo nulo (sin términos excepto la intercepción) y guarde el objeto glmnet como ajuste0 . Encaja el modelo deseado y guárdalo como fit1 . Obtener la desviación para ambos, que es dev0 = desviación (fit0) y dev1 = desviación (fit1) . La desviación es 2 (L (saturada) -L (modelo)), por lo que ahora tiene dos ecuaciones y dos probabilidades desconocidas. La L (saturada) es común y se retira. Uno de los componentes de la ajuste0 y fit1 objetos si la desviación nula ( nulldev ) ayudar.
Así que estabas en lo cierto antes. Es decir, puede utilizar la desviación (algo) directamente para calcular AICc. Desviación (nula) - Desviación (ajuste) = 2 (L (modelo) -L (nula)). La L (nula) es solo un desplazamiento constante, por lo que la diferencia de desviación es un sustituto de 2L (modelo). ¡Espero que esto ayude!
Por cierto, el paquete proporciona la relación de desviación como una medida de bondad de ajuste. Sé que no es lo mismo que usar AICc para seleccionar el mejor modelo. Más bien como usar R cuadrado (mala idea).
Re: obtener AIC / probabilidad de los coeficientes del modeloBueno, gracias por intentarlo de cualquier manera.
Re: obtener AIC / probabilidad de los coeficientes del modeloLa desviación es una medida de la falta de ajuste. No es la probabilidad del modelo, sino el doble de la diferencia entre las probabilidades del modelo saturado y su modelo.
Re: obtener AIC / probabilidad de los coeficientes del modeloMe temo que las dos cantidades disponibles de la glmnet objeto dev.ratio , nulldev ) no son suficientes para obtener la probabilidad del modelo, que necesita para calcular AICc. Tiene dos ecuaciones en tres incógnitas: probabilidad (nula), probabilidad (modelo) y probabilidad (saturada). No puedo obtener la probabilidad (modelo) libre de la probabilidad (nula).
Re: obtener AIC / probabilidad de los coeficientes del modeloAsí que me aseguro de tener esto correcto.
desviación = (1-dev.ratio) * nulldev
¿Y esta desviación sería exactamente igual a la probabilidad de -2LogLik en la ecuación AICc?

Esto podría hacer mi vida mucho mejor.
Re: obtener AIC / probabilidad de los coeficientes del modeloEl manual del paquete R glmnet proporciona estos detalles:
" Un objeto glmnet tiene componentes dev.ratio y nulldev. La primera es la fracción de (nula) desviación explicada. Los cálculos de desviación incorporan ponderaciones si están presentes en el modelo. La desviación se define como 2 * (loglike_sat - loglike), donde loglike_sat es la probabilidad de registro para el modelo saturado (un modelo con un parámetro libre por observación). La desviación nula se define como 2 * (loglike_sat -loglike (Null)); El modelo NULL se refiere al modelo de intercepción, excepto para Cox, donde está el modelo 0. Por lo tanto dev.ratio = 1-deviance / nulldev, y este método deviance devuelve (1-dev.ratio) * nulldev. "
Esta información está destinada a ser utilizada para evaluar la bondad del ajuste.