Я намагався вивчити та застосувати моделі ARIMA. Я читав чудовий текст про ARIMA Pankratz - Прогнозування за допомогою Univariate Box - Дженкінс Моделі: поняття та випадки . У тексті автор особливо наголошує на принципі парсизму у виборі моделей ARIMA.
Я почав грати з auto.arima()
функцією в R пакета прогнозу . Ось що я зробив, я імітував ARIMA і потім застосував auto.arima()
. Нижче наведено 2 приклади. Як ви бачите, в обох прикладах auto.arima()
чітко визначена модель, яку багато хто вважатиме б непасимонічною. Особливо в прикладі 2, де auto.arima()
ідентифікована ARIMA (3,0,3), коли насправді ARIMA (1,0,1) була б достатньою і парсимонічною.
Нижче мої запитання. Буду вдячний за будь-які пропозиції та рекомендації.
- Чи є вказівки щодо використання / зміни моделей, визначених за допомогою автоматичних алгоритмів, таких як
auto.arima()
? - Чи є якісь падіння ями просто за допомогою AIC (що я думаю, що
auto.arima()
використовує) для ідентифікації моделей? - Чи може бути побудований автоматичний алгоритм, який є парсимонічним?
До речі, я використовував auto.arima()
лише як приклад. Це стосується будь-якого автоматичного алгоритму.
Нижче наведено приклад №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
Нижче наведені результати з auto.arima()
. Зверніть увагу, що всі коефіцієнти незначні. тобто значення <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
Нижче наведено результати регулярного запуску arima()
із замовленням 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
Приклад 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
Нижче наведено результати 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
Нижче наводяться результати, що працюють регулярно arima()
з замовленням 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