Думая об использовании повторяющихся нейронных сетей для прогнозирования временных рядов. Они в основном реализуют своего рода обобщенную нелинейную авторегрессию по сравнению с моделями ARMA и ARIMA, которые используют линейную авторегрессию.
Если мы выполняем нелинейную авторегрессию, все еще необходимо, чтобы временной ряд был стационарным, и нужно ли нам выполнять дифференцирование, как в моделях ARIMA?
Или нелинейный характер модели дает ей возможность обрабатывать нестационарные временные ряды?
Другими словами, является ли требование стационарности (в среднем и дисперсии) для моделей ARMA и ARIMA из-за того, что эти модели являются линейными, или из-за чего-то другого?
time-series
autoregressive
nonlinear
stationarity
Скандер Х. - Восстановить Монику
источник
источник
Ответы:
Если целью вашей модели является прогнозирование и прогнозирование, то короткий ответ - ДА, но стационарность не обязательно должна быть на уровнях.
Я объясню. Если вы сводите прогнозирование к его основной форме, это будет извлечение инварианта. Подумайте об этом: вы не можете предсказать, что меняется. Если я скажу вам, что завтра будет отличаться от сегодняшнего дня во всех мыслимых аспектах , вы не сможете дать какой-либо прогноз .
Только когда вы сможете продлить что-то с сегодняшнего дня на завтра, вы можете сделать любой прогноз. Я приведу несколько примеров.
В каждом случае разумного прогноза мы сначала извлекаем что-то постоянное из процесса и распространяем его на будущее. Следовательно, мой ответ: да, временные ряды должны быть стационарными, если дисперсия и среднее значение являются инвариантами, которые вы собираетесь распространить в будущее из истории. Более того, вы хотите, чтобы отношения с регрессорами также были стабильными.
Просто определите, что является инвариантом в вашей модели, будь то средний уровень, скорость изменения или что-то еще. Эти вещи должны остаться такими же в будущем, если вы хотите, чтобы ваша модель обладала какой-либо прогнозирующей способностью.
Пример Холта Винтерса
Фильтр Холта Винтерса упоминался в комментариях. Это популярный выбор для сглаживания и прогнозирования определенных видов сезонных рядов, и он может работать с нестационарными рядами. В частности, он может обрабатывать серии, где средний уровень растет со временем линейно. Другими словами, где уклон устойчивый . В моей терминологии наклон является одним из инвариантов, которые этот подход извлекает из ряда. Давайте посмотрим, как он терпит неудачу, когда наклон неустойчивый.
На этом графике я показываю детерминированный ряд с экспоненциальным ростом и аддитивной сезонностью. Другими словами, наклон со временем становится все круче:
Вы можете видеть, как фильтр очень хорошо вписывается в данные. Установленная линия красная. Однако, если вы попытаетесь предсказать с помощью этого фильтра, он потерпит неудачу. Истинная линия - черная, а красная - с синей доверительной границей на следующем графике:
Причину неудачи легко понять, изучив уравнения модели Холта Уинтерса . Он извлекает склон из прошлого и распространяется на будущее. Это работает очень хорошо, когда уклон стабилен, но когда он постоянно растет, фильтр не может идти в ногу, он на один шаг позади, и эффект накапливается в растущей ошибке прогноза.
Код R:
В этом примере вы можете улучшить производительность фильтра, просто ведя журнал серии. Когда вы берете логарифм экспоненциально растущего ряда, вы снова делаете его наклон устойчивым и даете этому фильтру шанс. Вот пример:
Код R:
источник
Я также согласен с @Aksakal, что если основная цель состоит в прогнозировании, то основные характеристики стационарного ряда должны сохраняться.
источник