Мои данные - это временной ряд занятого населения, L, и временной интервал, год.
n.auto=auto.arima(log(L),xreg=year)
summary(n.auto)
Series: log(L)
ARIMA(2,0,2) with non-zero mean
Coefficients:
ar1 ar2 ma1 ma2 intercept year
1.9122 -0.9567 -0.3082 0.0254 -3.5904 0.0074
s.e. NaN NaN NaN NaN 1.6058 0.0008
sigma^2 estimated as 1.503e-06: log likelihood=107.55
AIC=-201.1 AICc=-192.49 BIC=-193.79
In-sample error measures:
ME RMSE MAE MPE MAPE
-7.285102e-06 1.225907e-03 9.234378e-04 -6.836173e-05 8.277295e-03
MASE
1.142899e-01
Warning message:
In sqrt(diag(x$var.coef)) : NaNs produced
почему это происходит? Почему auto.arima выбирает лучшую модель с ошибкой std этих коэффициентов ar * ma *, а не числом? Действительно ли эта выбранная модель действительна?
Моя цель - оценить параметр n в модели L = L_0 * exp (n * year). Любое предложение о лучшем подходе?
ТИА.
данные:
L <- structure(c(64749, 65491, 66152, 66808, 67455, 68065, 68950,
69820, 70637, 71394, 72085, 72797, 73280, 73736, 74264, 74647,
74978, 75321, 75564, 75828, 76105), .Tsp = c(1990, 2010, 1), class = "ts")
year <- structure(1990:2010, .Tsp = c(1990, 2010, 1), class = "ts")
L
Time Series:
Start = 1990
End = 2010
Frequency = 1
[1] 64749 65491 66152 66808 67455 68065 68950 69820 70637 71394 72085 72797
[13] 73280 73736 74264 74647 74978 75321 75564 75828 76105
r
regression
arima
Айви Ли
источник
источник
dput(L)
и вставьте вывод. Это делает репликацию очень простой.Ответы:
auto.arima()
Для ускорения вычислений требуется несколько ярлыков, и, когда он дает модель, которая выглядит подозрительной, хорошей идеей будет отключить эти ярлыки и посмотреть, что у вас получится. В этом случае:Эта модель немного лучше (например, меньший AIC).
источник
approximation=FALSE
иstepwise=FALSE
все еще производит NaNs для SE коэффициентов.Ваша проблема возникает из-за чрезмерной спецификации. Простая модель первого различия с AR (1) вполне достаточно. Не требуется структура МА или преобразование мощности. Вы также можете просто смоделировать это как модель второй разности, так как коэффициент ar (1) близок к 1,0. График Actual / Fit / прогноз и остаточный график с уравнением! введите описание изображения здесь. В итоге, оценка зависит от спецификации модели, которая в данном случае считается не нужной [mene mene tekel upharsin]. Серьезно, я предлагаю вам ознакомиться со стратегиями идентификации моделей, а не пытаться утопить в своих моделях неоправданную структуру. Иногда меньше значит больше! Скупость - это цель! Надеюсь это поможет ! Чтобы ответить на ваши вопросы "Почему auto.arima выбирает лучшую модель с ошибкой std этих коэффициентов ar * ma *, а не числом? Вероятный ответ заключается в том, что решение в пространстве состояний - это не все, что может быть из-за Предполагаемые модели, которые он пытается. Но это только мое предположение. Истинной причиной неудачи может быть ваше предположение о форме журнала. Преобразования похожи на наркотики ... некоторые из них полезны для вас, а некоторые - нет. Силовые преобразования должны использоваться ТОЛЬКО для отделения ожидаемого значения от стандартного отклонения от остатков. Если есть связь, тогда может быть целесообразным преобразование Бокса-Кокса (которое включает в себя журналы). Вытащить трансформацию из-за ушей может не быть хорошей идеей.
Действительно ли эта выбранная модель действительна? Точно нет !
источник
Я сталкивался с похожими проблемами. Пожалуйста, попробуйте поиграть с optim.control и optim.method. Эти NaN представляют собой отрицательные значения диагональных элементов матрицы Гессе. Подгонка ARIMA (2,0,2) является нелинейной проблемой, и оптимизатор, по-видимому, сходится к седловой точке (где градиент равен нулю, но матрица Гессе не определена положительно) вместо максимума вероятности.
источник