Модель ARIMA построена на данных тренировки и, как правило, использует метод наименьших квадратов для максимального соответствия ее данным тренировки. Он использует AI C или аналогичный для выбора между подходящими моделями для предотвращения переоснащения.
Минимизация СКО между моделью и данными испытаний зависит от двух вещей: модели и данных испытаний. Вы не можете попросить саму модель уменьшить среднеквадратическое среднеквадратичное отклонение, если модель также не знает данные испытаний. Но весь смысл прогнозирующей модели заключается в том, что вы хотите спросить, каким будет будущее значение переменной, поэтому, конечно, вы не можете включить это в модель.
Когда вы думаете об этом, вы спрашиваете: «Как мне заставить мою модель смотреть в будущее?»
Это не значит, что вы не можете получить более низкое среднеквадратичное значение для вашей модели. проверить данные, изменив параметры arima.auto
, но это можно сделать только путем сравнения выходных данных с данными test
.
Если вы хотите проверить различные параметры и посмотреть, какая модель лучше всего подходит для данных теста Вы можете автоматизировать несколько подгонок моделей следующим образом:
test_seasons <- function(train, test)
{
seasonal = c("seas", "ocsb", "hegy", "ch")
RMSE <- 1000
for(i in 1:3)
{
latest_model <- auto.arima(train, lambda = 0, biasadj = TRUE, seasonal.test = seasonal[i])
latest_RMSE <- accuracy(forecast(latest_model, h = 12), test)[2, 2]
if(latest_RMSE < RMSE)
{
RMSE <- latest_RMSE
output <- latest_model
best_season <- seasonal[i]
}
}
cat("The optimal seasonal.test parameter was \"", best_season, "\" (RMSE ",
RMSE, ")", sep = "")
}
Таким образом, вы можете сделать
test_seasons(train, test)
# The optimal seasonal.test parameter was "seas" (RMSE 18.78836)
Однако, этот метод будет очень медленным, если вы хотите найти оптимальное числовые параметры.
Со статистической точки зрения я бы также с осторожностью подходил к выбору модели для использования на основе того, насколько хорошо она прогнозирует один год. Если у вас есть данные за дополнительный год, лучше всего использовать их в своей модели, а не настраивать параметры вручную.