У меня вопрос / путаница в отношении стационарных рядов, необходимых для моделирования с помощью ARIMA (X). Я думаю об этом больше с точки зрения логического вывода (эффекта вмешательства), но хотел бы знать, если прогнозирование против логического вывода имеет какое-либо значение в ответе.
Вопрос:
Все вводные материалы, которые я прочитал, утверждают, что ряд должен быть стационарным, что имеет смысл для меня, и именно здесь появляется «я» в ариме (различие).
Что меня смущает, так это использование трендов и дрейфов в ARIMA (X) и последствий (если таковые имеются) для стационарных требований.
Отменяет ли использование термина «константа / дрейф» и / или трендовую переменную в качестве экзогенной переменной (то есть добавление «t» в качестве регрессора) отрицание требования, что ряд является стационарным? Отличается ли ответ в зависимости от того, имеет ли ряд единичный корень (например, тест adf) или имеет детерминированный тренд, но не имеет единичного корня?
ИЛИ
Всегда ли серии должны быть стационарными, сделаны с помощью различий и / или трендендинга перед использованием ARIMA (X)?
источник
Помните, что существуют разные виды нестационарности и способы борьбы с ними. Четыре общих из них:
1) Детерминированные тренды или стационарность трендов. Если ваша серия такого рода лишена тенденции или включите временную тенденцию в регрессию / модель. Возможно, вы захотите проверить теорему Фриша-Во-Ловелла об этом.
2) Сдвиги уровней и структурные разрывы. Если это так, вы должны включать фиктивную переменную для каждого перерыва или, если ваш образец достаточно длинный, смоделируйте каждый режим отдельно.
3) Изменение дисперсии. Либо моделируйте выборки отдельно, либо моделируйте изменяющуюся дисперсию, используя класс моделирования ARCH или GARCH.
4) Если ваша серия содержит единичный корень. В общем случае вы должны затем проверить наличие коинтегрирующих отношений между переменными, но, поскольку вы заинтересованы в одномерном прогнозировании, вы должны различие между ними раз или два в зависимости от порядка интеграции.
Чтобы смоделировать временной ряд с использованием класса моделирования ARIMA, необходимо выполнить следующие шаги:
1) Посмотрите на ACF и PACF вместе с графиком временного ряда, чтобы увидеть, является ли ряд стационарным или нестационарным.
2) Проверьте серию на наличие корневого модуля. Это можно сделать с помощью широкого спектра тестов, среди которых наиболее распространенными являются тест ADF, тест Филлипса-Перрона (PP), тест KPSS с нулевой стационарностью или тест DF-GLS, который является наиболее эффективным. из вышеупомянутых испытаний. НОТА! Что в случае, если ваша серия содержит структурный разрыв, эти тесты смещены в сторону того, чтобы не отклонять ноль корневого элемента. Если вы хотите проверить надежность этих испытаний и если вы подозреваете один или несколько структурных разрывов, вам следует использовать эндогенные структурные тесты на разрушение. Двумя распространенными являются тест Зивота-Эндрюса, который допускает одно эндогенное структурное разрушение, и критерий Клементе-Монтаньеса-Рейеса, который допускает два структурных разрушения. Последний допускает две разные модели.
3) Если в ряду есть единичный корень, то вы должны отличать ряд. После этого вы должны посмотреть на ACF, PACF и график временных рядов и, возможно, проверить, находится ли второй корень модуля в безопасности. ACF и PACF помогут вам решить, сколько терминов AR и MA вы должны включить.
4) Если ряд не содержит единичного корня, но график временного ряда и ACF показывают, что у ряда есть детерминированный тренд, следует добавить тренд при подгонке модели. Некоторые люди утверждают, что совершенно справедливо просто отличать ряд, если он содержит детерминистическую тенденцию, хотя в процессе может быть потеряна информация. Тем не менее, это хорошая идея, чтобы отличить его, чтобы увидеть, как много терминов AR и / или MA вам нужно будет включить. Но тренд времени действителен.
5) Установите различные модели и выполните обычную диагностическую проверку. Возможно, вы захотите использовать информационный критерий или MSE, чтобы выбрать лучшую модель с учетом того образца, на который вы ее поместили.
6) Делайте выборочные прогнозы по наилучшим образом подобранным моделям и рассчитывайте функции потерь, такие как MSE, MAPE, MAD, чтобы увидеть, какие из них действительно лучше всего работают при использовании их для прогнозирования, потому что это то, что мы хотим сделать!
7) Делайте свои прогнозы, как босс, и будьте довольны результатами!
источник
Определение того, является ли тренд (или другой компонент, такой как сезонность) детерминированным или стохастическим, является частью головоломки при анализе временных рядов. Я добавлю пару пунктов к тому, что было сказано.
1) Важно различать детерминированные и стохастические тренды, потому что если в данных присутствует корень единицы (например, случайное блуждание), то тестовая статистика, используемая для логического вывода, не следует традиционному распределению. Смотрите этот пост для некоторых деталей и ссылок.
Мы можем смоделировать случайное блуждание (стохастический тренд, в котором должны быть взяты первые различия), проверить значимость детерминированного тренда и увидеть процент случаев, когда ноль детерминированного тренда отклоняется. В R мы можем сделать:
При уровне значимости 5% мы ожидаем отклонить ноль в 95% случаев, однако в этом эксперименте он был отклонен только в ~ 89% случаев из 10000 смоделированных случайных блужданий.
Мы можем применить тесты корневого модуля для проверки наличия корневого модуля. Но мы должны знать, что линейный тренд может, в свою очередь, привести к невозможности отклонить нулевой корень единицы. Чтобы справиться с этим, тест KPSS рассматривает нулевую стационарность вокруг линейного тренда.
2) Другой проблемой является интерпретация детерминированных компонентов в процессе по уровням или первым различиям. Эффект перехвата отличается от модели с линейным трендом от случайного блуждания. Смотрите этот пост для иллюстрации.
Мы прибываем в:
Если графическое представление ряда показывает относительно четкую линейную тенденцию, мы не можем быть уверены, связано ли это с наличием детерминированной линейной тенденции или с дрейфом в процессе случайного блуждания. Дополнительная графика и статистика тестов должны быть применены.
Следует иметь в виду некоторые предостережения, поскольку анализ, основанный на единичном корне и статистике других тестов, не является надежным. Некоторые из этих тестов могут зависеть от наличия отдаленных наблюдений или сдвигов уровня и требуют выбора порядка запаздывания, который не всегда прост.
В качестве обходного пути к этой загадке, я думаю, что обычная практика состоит в том, чтобы брать различия данных до тех пор, пока ряды не будут выглядеть стационарными (например, смотреть на функцию автокорреляции, которая должна стремиться к нулю быстро), а затем выбирать модель ARMA.
источник
Очень интересный вопрос, я также хотел бы знать, что говорят другие. Я инженер по образованию, а не статистик, так что кто-то может проверить мою логику. Как инженеры, мы хотели бы смоделировать и поэкспериментировать, поэтому у меня была мотивация смоделировать и протестировать ваш вопрос.
Как эмпирически показано ниже, использование переменной тренда в ARIMAX устраняет необходимость в дифференцировании и делает серию тренда стационарной. Вот логика, которую я использовал для проверки.
Ниже приведен код R и графики:
AR (1) Имитация сюжета
AR (1) с детерминированным трендом
ARIMAX Остаточный PACF с трендом как экзогенный. Резидулы случайные, без рисунка
Как видно из вышеизложенного, моделирование детерминированной тенденции как экзогенной переменной в модели ARIMAX сводит на нет необходимость дифференцирования. По крайней мере, в детерминированном случае это сработало. Интересно, как это будет вести себя со стохастическим трендом, который очень сложно предсказать или смоделировать.
Чтобы ответить на ваш второй вопрос, ДА все ARIMA, включая ARIMAX, должны быть стационарными. По крайней мере, так говорят учебники.
Кроме того, как прокомментировано, см. Эту статью . Очень четкое объяснение тренда детерминистического тренда и стохастического тренда и как его удалить, чтобы сделать тренд стационарным, а также очень хороший обзор литературы по этой теме. Они используют его в контексте нейронной сети, но это полезно для общей проблемы временных рядов. Их окончательная рекомендация - когда он четко определен как детерминированный тренд, применяется линейный трендендинг, в противном случае применяется дифференцирование, чтобы сделать временной ряд стационарным. Жюри все еще существует, но большинство исследователей, цитируемых в этой статье, рекомендуют дифференцирование, а не линейный трендендинг.
Редактировать:
Ниже приведена случайная прогулка с дрейфовым случайным процессом, использующим экзогенную переменную и ариму разности. Оба, кажется, дают один и тот же ответ, и в сущности они одинаковы.
Надеюсь это поможет!
источник