Хорошая практика при прогнозировании временных рядов

10

Я месяцами работал над краткосрочным прогнозированием нагрузки и использованием климатических / погодных данных для повышения точности. У меня есть опыт работы в области компьютерных наук, и поэтому я стараюсь не делать больших ошибок и несправедливых сравнений, работая с инструментами статистики, такими как модели ARIMA. Я хотел бы знать ваше мнение о нескольких вещах:

  1. Я использую обе модели (S) ARIMA и (S) ARIMAX для исследования влияния данных о погоде на прогнозирование. Как вы думаете, будет ли необходимо использовать также методы экспоненциального сглаживания?

  2. Имея временной ряд из 300 ежедневных выборок, я начинаю с первых двух недель и выполняю прогноз на 5 дней вперед, используя модели, построенные с помощью функции auto.arima R (пакет прогноза). Затем я добавляю еще одну выборку в свой набор данных, снова калибрую модели и выполняю прогноз на 5 дней и так далее до конца доступных данных. Считаете ли вы, что этот способ работает правильно?

Спасибо за ваши предложения, хотя целью нашей работы является статья в инженерном журнале, я хотел бы сделать работу максимально строгой со статистической точки зрения.

Маттео де Феличе
источник
1
Этот вопрос, похоже, тесно связан: stats.stackexchange.com/questions/16915/…
whuber
1
Вот старый ответ stats.stackexchange.com/questions/6513/…
bill_080

Ответы:

9
  1. Я думаю, что стоило бы изучить и модели экспоненциального сглаживания. Модели экспоненциального сглаживания являются принципиально отличным классом моделей от моделей ARIMA и могут давать разные результаты для ваших данных.

  2. Это звучит как правильный подход и очень похож на метод перекрестной проверки временных рядов, предложенный Робом Хиндманом .

Я бы суммировал ошибку перекрестной проверки для каждого прогноза (экспоненциальное сглаживание, ARIMA, ARMAX) и затем использовал общую ошибку для сравнения трех методов.

Вы также можете рассмотреть «поиск по сетке» для параметров ARIMA, а не использовать auto.arima. При поиске по сетке вы изучаете каждый возможный параметр для модели арима, а затем выбираете «лучшие» с использованием точности прогноза.

Zach
источник
Спасибо за ответ, я использую auto.arima с отключенным поиском STEPWISE, и я думаю, что таким образом он будет исследовать все параметры между минимальным и максимальным диапазоном (я еще не читал статью о Hyndman & Kandahar 2008)
Маттео де Феличе,
@Matteo De Felice: дело в том, что он оптимизирует эти параметры на основе AIC. Я предположил, что, возможно, стоило бы оптимизировать эти параметры по их производительности вне выборки, которую можно оценить путем перекрестной проверки. Кроме того, если вы хотите сравнить другие модели (например, ETS), вам потребуется показатель производительности вне выборки, поскольку вы не можете сравнить AIC между различными типами моделей (такими как auto.arima и ets).
Зак
в этот момент я выполнил поиск по сетке (используя auto.arima с stepwise = FALSE), а затем попробовал наиболее часто используемые модели, чтобы оценить их производительность.
Маттео де Феличе
@Matteo De Felice: Если у вас возникли проблемы с перекрестной проверкой временных рядов, этот пост в блоге может помочь: robjhyndman.com/researchtips/tscvexample
Зак
Следует отметить, что модели ARIMA и ETS принципиально не отличаются. Фактически, линейные модели экспоненциального сглаживания являются частными случаями моделей ARIMA. Смотрите здесь: otexts.org/fpp/8/10 .
Бородавка