He estado tratando de aprender y aplicar los modelos ARIMA. He estado leyendo un texto excelente en ARIMA por Pankratz - Pronóstico con Univariante de Box - Jenkins Modelos: Conceptos y Casos. En el texto, el autor destaca especialmente la priciple de la parsimonia en la elección de los modelos ARIMA.
Comencé a jugar con el auto.arima()
función en R paquete de previsión. Aquí es lo que yo hice, me simulado ARIMA y, a continuación, aplica auto.arima()
. A continuación son 2 ejemplos. Como se puede ver en el ejemplo auto.arima()
identificado claramente un modelo que muchos considerarían no parsimonioso. Especialmente en el ejemplo 2, donde auto.arima()
identificado ARIMA(3,0,3) cuando en realidad ARIMA(1,0,1) sería suficiente y parsimonioso.
A continuación son mis preguntas. Agradecería cualquier sugerencia y recomendaciones.
- ¿Hay alguna orientación sobre cuándo utilizar/modificar los modelos identificados mediante algoritmos automáticos tales como
auto.arima()
? - ¿Hay algún hoyo cae en sólo el uso de AIC (que es lo que creo
auto.arima()
usa) para identificar los modelos? - Puede un algoritmo automático incorporado que es tacaño?
Por la forma en que solía auto.arima()
sólo como un ejemplo. Esto se podría aplicar a cualquier algoritmo automático.
A continuación es un Ejemplo #1:
set.seed(182)
y <- arima.sim(n=500,list(ar=0.2,ma=0.6),mean = 10)
auto.arima(y)
qa <- arima(y,order=c(1,0,1))
qa
A continuación presentamos los resultados de auto.arima()
. Por favor, tenga en cuenta que todos los coeficientes son insignificantes. es decir, $t$ valor < 2.
ARIMA(1,0,2) with non-zero mean
Coefficients:
ar1 ma1 ma2 intercept
0.5395 0.2109 -0.3385 19.9850
s.e. 0.4062 0.4160 0.3049 0.0878
sigma^2 estimated as 1.076: log likelihood=-728.14
AIC=1466.28 AICc=1466.41 BIC=1487.36
A continuación son los resultados de la ejecución de regular arima()
con el fin de ARIMA(1,0,1)
Series: y
ARIMA(1,0,1) with non-zero mean
Coefficients:
ar1 ma1 intercept
0.2398 0.6478 20.0323
s.e. 0.0531 0.0376 0.1002
sigma^2 estimated as 1.071: log likelihood=-727.1
AIC=1462.2 AICc=1462.28 BIC=1479.06
Ejemplo 2:
set.seed(453)
y <- arima.sim(n=500,list(ar=0.2,ma=0.6),mean = 10)
auto.arima(y)
qa <- arima(y,order=c(1,0,1))
qa
A continuación presentamos los resultados de auto.arima()
:
ARIMA(3,0,3) with non-zero mean
Coefficients:
ar1 ar2 ar3 ma1 ma2 ma3 intercept
0.7541 -1.0606 0.2072 0.1391 0.5912 0.5491 20.0326
s.e. 0.0811 0.0666 0.0647 0.0725 0.0598 0.0636 0.0939
sigma^2 estimated as 1.027: log likelihood=-716.84
AIC=1449.67 AICc=1449.97 BIC=1483.39
A continuación son los resultados de la ejecución de regular arima()
con el fin de ARIMA(1,0,1)
Series: y
ARIMA(1,0,1) with non-zero mean
Coefficients:
ar1 ma1 intercept
0.2398 0.6478 20.0323
s.e. 0.0531 0.0376 0.1002
sigma^2 estimated as 1.071: log likelihood=-727.1
AIC=1462.2 AICc=1462.28 BIC=1479.06