Estadísticas de Ljung-Box para los residuos de ARIMA en R: resultados de prueba confusos

15

Tengo una serie de tiempo que intento pronosticar, para la cual he usado el modelo estacional ARIMA (0,0,0) (0,1,0) [12] (= fit2). Es diferente de lo que R sugirió con auto.arima (R calculado ARIMA (0,1,1) (0,1,0) [12] sería un mejor ajuste, lo llamé fit1). Sin embargo, en los últimos 12 meses de mi serie temporal, mi modelo (fit2) parece ajustarse mejor cuando se ajustó (estaba sesgado crónicamente, he agregado la media residual y el nuevo ajuste parece estar más ajustado alrededor de la serie temporal original Aquí está el ejemplo de los últimos 12 meses y MAPE para los 12 meses más recientes para ambos ajustes:

fit1, fit2 y datos originales

La serie temporal se ve así:

series de tiempo originales

Hasta aquí todo bien. He realizado análisis residuales para ambos modelos, y aquí está la confusión.

El acf (resid (fit1)) se ve muy bien, con mucho ruido blanco:

acf de fit1

Sin embargo, la prueba de Ljung-Box no se ve bien para, por ejemplo, 20 retrasos:

    Box.test(resid(fit1),type="Ljung",lag=20,fitdf=1)

Obtengo los siguientes resultados:

    X-squared = 26.8511, df = 19, p-value = 0.1082

Según tengo entendido, esta es la confirmación de que los residuos no son independientes (el valor p es demasiado grande para permanecer con la Hipótesis de la Independencia).

Sin embargo, para el retraso 1 todo es genial:

    Box.test(resid(fit1),type="Ljung",lag=1,fitdf=1)

me da el resultado:

    X-squared = 0.3512, df = 0, p-value < 2.2e-16

O no entiendo la prueba, o es un poco contradictorio con lo que veo en el diagrama acf. La autocorrelación es ridículamente baja.

Luego verifiqué fit2. La función de autocorrelación se ve así:

acf fit2

A pesar de la autocorrelación tan obvia en varios primeros retrasos, la prueba de Ljung-Box me dio resultados mucho mejores a los 20 retrasos, que fit1:

    Box.test(resid(fit2),type="Ljung",lag=20,fitdf=0)

resultados en:

    X-squared = 147.4062, df = 20, p-value < 2.2e-16

mientras que solo verificar la autocorrelación en lag1, ¡también me da la confirmación de la hipótesis nula!

    Box.test(resid(arima2.fit),type="Ljung",lag=1,fitdf=0)
    X-squared = 30.8958, df = 1, p-value = 2.723e-08 

¿Estoy entendiendo la prueba correctamente? El valor p debería ser preferiblemente más pequeño que 0.05 para confirmar la hipótesis nula de independencia de los residuos. ¿Qué ajuste es mejor usar para pronosticar, fit1 o fit2?

Información adicional: los residuos de fit1 muestran una distribución normal, los de fit2 no.

Zima
fuente
2
No comprende los valores p, y los está interpretando al revés.
Scortchi - Restablece a Monica
Sí, podría ser la cuestión de la comprensión. ¿Podrías por favor expandirte? Por ejemplo, ¿qué significa exactamente si el valor p es mayor que 0.5? He leído la definición del valor p (probabilidad de obtener estadísticas al menos tan extremas como el estadístico de prueba dado que se mantienen las hipótesis nulas). ¿Cómo se aplica a la prueba de Ljung-Box? ¿"Al menos tan extremo" significa "más grande que X al cuadrado"? Estaría agradecido por el ejemplo con mis datos, ya que las pruebas de significación me han resultado difíciles de entender.
zima
55
El estadístico de prueba de Ljung-Box ( X-squared) se hace más grande a medida que las autocorrelaciones de muestra de los residuos se hacen más grandes (vea su definición), y su valor p es la probabilidad de obtener un valor tan grande o más grande que el observado bajo nulo hipótesis de que las verdaderas innovaciones son independientes. Por lo tanto, un pequeño valor p es evidencia contra la independencia.
Scortchi - Restablece a Monica
@Scortchi, creo que lo tengo. Pero eso también hace que mi prueba en lag = 1 para fit1 falle. ¿Cómo podría explicarse esto? No veo ninguna autocorrelación en lag = 1. ¿Existe algún tipo de extremalidad de esta prueba con un pequeño número de retrasos (muestra muy pequeña)?
zima 18/0713
3
El Box-Ljung es una prueba general de independencia en todos los rezagos hasta el especificado. Los grados de libertad utilizados es el no. rezagos menos el no. Parámetros AR y MA ( fitdf) por lo que estaba probando contra una distribución de chi-cuadrado con cero grados de libertad.
Scortchi - Restablece a Monica

Respuestas:

33

Has interpretado mal la prueba. Si el valor p es mayor que 0.05, entonces los residuos son independientes, lo que queremos que el modelo sea correcto. Si simula una serie temporal de ruido blanco utilizando el código siguiente y utiliza la misma prueba para ello, entonces el valor p será mayor que 0.05.

m = c(ar, ma)
w = arima.sim(m, 120)
w = ts(w)
plot(w)
Box.test(w, type="Ljung-Box")
Joe Ferrelly
fuente
3
Una explicación corta y ordenada. +1 para el ejemplo de código.
Dawny33
1
Tu interpretación tampoco es correcta. Un valor p de 0.05 significa que tiene un 5% de posibilidades de cometer un error si rechaza la hipótesis nula de no autocorrelación hasta el orden 1 en su caso.
DJJ
7

Muchas pruebas estadísticas se utilizan para tratar de rechazar algunas hipótesis nulas. En este caso particular, la prueba de Ljung-Box intenta rechazar la independencia de algunos valores. Qué significa eso?

  • Si el valor p <0.05 1 : puede rechazar la hipótesis nula suponiendo una probabilidad del 5% de cometer un error. Por lo tanto, puede suponer que sus valores muestran dependencia mutua.

  • Si valor p> 0.05 1 : No tiene suficiente evidencia estadística para rechazar la hipótesis nula. Por lo tanto, no puede asumir que sus valores son dependientes. Esto podría significar que sus valores son dependientes de todos modos o puede significar que sus valores son independientes. Pero no está probando ninguna posibilidad específica, lo que su prueba realmente dijo es que no puede afirmar la dependencia de los valores, ni puede afirmar la independencia de los valores.

En general, lo importante aquí es tener en cuenta que el valor p <0.05 le permite rechazar la hipótesis nula, pero un valor p> 0.05 sí no permite confirmar la hipótesis nula.

En particular, no puede probar la independencia de los valores de Series temporales utilizando la prueba Ljung-Box. Solo puedes probar la dependencia.


α=0,05

Alejandro Jiménez Rico
fuente
α=0,05
0

De acuerdo con los gráficos de ACF, es obvio que el ajuste 1 es mejor ya que el coeficiente de correlación en el retraso k (k> 1) cae bruscamente y cerca de 0.

Tao
fuente
0

Si está juzgando con ACF, entonces el ajuste 1 es más apropiado. En lugar de confundirse en la prueba de Ljung, aún puede usar el correlograma de los residuos para determinar el mejor ajuste entre fit1 y fit2

Vincent
fuente
1
No entiendo esta respuesta.
Michael R. Chernick
Cuando visitamos las estadísticas de la caja de Ljung, podríamos estar interesados ​​en la verificación de diagnóstico del modelo, es decir, la adecuación del modelo ... Si usar eso es confuso para usted, hay otras formas de verificar la adecuación del modelo que dije anteriormente. Puede trazar el correlograma Ie, ACF y PACF de los datos residuales y luego verificar los límites de la serie si es ruido blanco ...... No es necesario usar la prueba de caja Ljung
Vincent