Авторегрессионная интегрированная скользящая средняя - Autoregressive integrated moving average
В статистика и эконометрика, и в частности в анализ временных рядов, авторегрессионная интегрированная скользящая средняя (ARIMA) модель является обобщением авторегрессионная скользящая средняя (ARMA) модель. Обе эти модели подходят для Временные ряды данные либо для лучшего понимания данных, либо для прогнозирования будущих точек в серии (прогнозирование ). Модели ARIMA применяются в некоторых случаях, когда данные свидетельствуют о наличии нестационарность в смысле среднего (но не дисперсии /автоковариация ), где начальный шаг дифференцирования (соответствующий "интегрированный" часть модели) можно применить один или несколько раз, чтобы устранить нестационарность функции среднего (т. е. тренда).[1] Когда сезонность отображается во временном ряду, сезонная разница[2] может применяться для устранения сезонной составляющей. Поскольку ARMA модель, согласно теореме разложения Вольда,[3][4] теоретически достаточно, чтобы описать стационарный в широком смысле временного ряда, мы мотивированы сделать стационарный нестационарный временной ряд, например, с помощью разности, прежде чем мы сможем использовать ARMA модель.[5]
В AR часть ARIMA указывает на то, что развивающаяся интересующая переменная регресс сами по себе запаздывающие (т.е. априорные) значения. В MA часть указывает, что ошибка регрессии на самом деле линейная комбинация терминов ошибок, значения которых имели место одновременно и в разное время в прошлом.[6] В я (для «интегрированного») указывает, что значения данных были заменены разницей между их значениями и предыдущими значениями (и этот процесс сравнения мог быть выполнен более одного раза). Цель каждой из этих функций - сделать модель максимально подходящей для данных.
Несезонные модели ARIMA обычно обозначаются ARIMA (п,d,q) куда параметры п, d, и q неотрицательные целые числа, п это порядок (количество временных лагов) авторегрессионная модель, d - степень разности (количество раз, когда из данных вычитались прошлые значения), и q это порядок модель скользящего среднего. Сезонные модели ARIMA обычно обозначаются ARIMA (п,d,q)(п,D,Q)м, куда м относится к количеству периодов в каждом сезоне, а заглавные буквы п,D,Q относятся к условиям авторегрессии, дифференцирования и скользящего среднего для сезонной части модели ARIMA.[7][2]
Когда два из трех членов равны нулю, к модели можно обратиться на основе ненулевого параметра, отбрасывая "AR", "я" или же "MA"от аббревиатуры, описывающей модель. Например, является AR (1), является Я (1), и является Массачусетс (1).
Модели ARIMA можно оценить, следуя Бокс – Дженкинс подход.
Определение
Учитывая данные временного ряда Икст куда т - целочисленный индекс, а Икст настоящие числа, модель дается
или эквивалентно
куда это оператор запаздывания, то - параметры авторегрессионной части модели, - параметры части скользящего среднего и являются ошибочными условиями. Условия ошибки обычно считаются независимые, одинаково распределенные переменные, взятые из нормальное распределение с нулевым средним.
Предположим теперь, что многочлен имеет единичный корень (фактор ) кратности d. Тогда его можно переписать как:
ARIMA (п,d,q) процесс выражает это свойство полиномиальной факторизации с помощью п=п'-д, и определяется как:
и поэтому может рассматриваться как частный случай ARMA (п + д,q) процесс, имеющий авторегрессионный полином с d единичные корни. (По этой причине ни один процесс, который точно описывается моделью ARIMA с d > 0 это стационарный в широком смысле.)
Сказанное выше можно обобщить следующим образом.
Это определяет ARIMA (п,d,q) процесс с дрейф .
Другие специальные формы
Явная идентификация факторизации полинома авторегрессии на факторы, как указано выше, может быть распространена на другие случаи, во-первых, для применения к полиному скользящего среднего, а во-вторых, для включения других специальных факторов. Например, имея фактор в модели - это один из способов включения нестационарной сезонности периода s в модель; этот фактор имеет эффект повторного выражения данных как изменений от s периодов назад. Другой пример - фактор , который включает (нестационарную) сезонность периода 2.[требуется разъяснение ] Эффект первого типа факторов состоит в том, чтобы позволить значениям каждого сезона раздельно смещаться во времени, тогда как значения второго типа для смежных сезонов перемещаются вместе.[требуется разъяснение ]
Идентификация и спецификация соответствующих факторов в модели ARIMA может быть важным шагом в моделировании, поскольку это может позволить уменьшить общее количество параметров, которые необходимо оценить, в то же время позволяя наложить на модель типы поведения, которые, как подсказывают логика и опыт, должны будь там.
Различие
Свойства стационарного временного ряда не зависят от времени, в которое этот ряд наблюдается. В частности, для стационарный в широком смысле временной ряд, среднее и дисперсия /автоковариация сохраняйте постоянство с течением времени. Различие в статистике - это преобразование, применяемое к нестационарному временному ряду, чтобы сделать его стационарным. в среднем смысле (а именно, чтобы удалить непостоянный тренд), но не имеющий ничего общего с нестационарность дисперсии /автоковариация. Точно так же сезонная разница применяется к сезонному временному ряду, чтобы удалить сезонную составляющую. С точки зрения обработки сигналов, особенно Спектральный анализ Фурье Тем не менее, тренд - это низкочастотная часть в спектре нестационарного временного ряда, а сезон - это периодическая частотная часть в его спектре. Следовательно, разность работает как высокая частота (т. е. нижний предел) и сезонную разность как гребенчатый фильтр для подавления низкочастотного тренда и периодического частотного сезона в спектральной области (а не непосредственно во временной области), соответственно.[5] Эта точка зрения объясняет философию, математику, силу и недостатки разности и сезонной разницы.
Чтобы различать данные, вычисляется разница между последовательными наблюдениями. Математически это показано как
Дифференцирование устраняет изменения в уровне временного ряда, устраняя тенденцию и сезонность и, следовательно, стабилизируя среднее значение временного ряда.[5]
Иногда может потребоваться различить данные во второй раз, чтобы получить стационарный временной ряд, который называется разность второго порядка:
Другой метод дифференцирования данных - это сезонная дифференциация, которая включает в себя вычисление разницы между наблюдением и соответствующим наблюдением в предыдущем сезоне, например, году. Это показано как:
Затем разностные данные используются для оценки ARMA модель.
Примеры
Некоторые хорошо известные частные случаи возникают естественным образом или математически эквивалентны другим популярным моделям прогнозирования. Например:
- Модель ARIMA (0, 1, 0) (или Я (1) модель) дается - это просто случайная прогулка.
- ARIMA (0, 1, 0) с константой, задаваемой - что представляет собой случайное блуждание со сносом.
- Модель ARIMA (0, 0, 0) - это белый шум модель.
- Модель ARIMA (0, 1, 2) - это модель Демпфированного Холта.
- Модель ARIMA (0, 1, 1) без константы - это базовое экспоненциальное сглаживание модель.[8]
- Модель ARIMA (0, 2, 2) задается формулой - что эквивалентно линейному методу Холта с аддитивными ошибками, или двойное экспоненциальное сглаживание.[8]
Выбираем заказ
Порядок p и q может быть определен с использованием метода автокорреляционной функции выборки (ACF), функции частичной автокорреляции (PACF) и / или метода расширенной автокорреляционной функции (EACF).[9]
Другие альтернативные методы включают AIC, BIC и т. Д.[9] Чтобы определить порядок несезонной модели ARIMA, полезным критерием является Информационный критерий Акаике (AIC). Написано как
куда L вероятность данных, п - порядок авторегрессионной части и q - порядок части скользящей средней. В k представляет собой пересечение модели ARIMA. Для AIC, если k = 1, то в модели ARIMA есть перехват (c ≠ 0) и если k = 0, то в модели ARIMA нет пересечения (c = 0).
Исправленный AIC для моделей ARIMA можно записать как
В Байесовский информационный критерий (BIC) можно записать как
Цель состоит в том, чтобы минимизировать значения AIC, AICc или BIC для хорошей модели. Чем ниже значение одного из этих критериев для ряда исследуемых моделей, тем лучше модель будет соответствовать данным. AIC и BIC используются для двух совершенно разных целей. В то время как AIC пытается приблизить модели к реальности, BIC пытается найти идеальное соответствие. Подход BIC часто критикуют за то, что он никогда не идеально подходит для реальных сложных данных; тем не менее, это по-прежнему полезный метод выбора, поскольку он более серьезно наказывает модели за наличие большего количества параметров, чем в случае с AIC.
AICc можно использовать только для сравнения моделей ARIMA с одинаковым порядком сравнения. Для ARIMA с разными порядками дифференцирования RMSE можно использовать для сравнения моделей.
Оценка коэффициентов
Этот раздел пуст. Вы можете помочь добавляя к этому. (Март 2017 г.) |
Прогнозы с использованием моделей ARIMA
Модель ARIMA можно рассматривать как «каскад» двух моделей. Первый нестационарный:
а второй стационарный в широком смысле:
Теперь можно делать прогнозы по процессу , используя обобщение метода авторегрессионное прогнозирование.
Интервалы прогнозов
Интервалы прогноза (доверительные интервалы для прогнозов) для моделей ARIMA основаны на предположении, что остатки некоррелированы и нормально распределены. Если одно из этих предположений не выполняется, то интервалы прогноза могут быть неверными. По этой причине исследователи строят ACF и гистограмму остатков, чтобы проверить предположения, прежде чем создавать интервалы прогноза.
95% интервал прогноза: , куда это дисперсия .
За , для всех моделей ARIMA независимо от параметров и порядков.
Для ARIMA (0,0, q),
- [нужна цитата ]
Как правило, интервалы прогнозов по моделям ARIMA будут увеличиваться по мере увеличения горизонта прогноза.
Варианты и расширения
Обычно используется ряд вариаций модели ARIMA. Если используются несколько временных рядов, то можно рассматривать как векторы, и модель VARIMA может быть подходящей. Иногда в модели подозревают сезонный эффект; в этом случае обычно считается лучше использовать модель SARIMA (сезонная ARIMA), чем увеличивать порядок частей модели AR или MA.[10] Если есть подозрение, что временной ряд демонстрирует дальнодействующая зависимость, то d параметру может быть разрешено иметь нецелые значения в авторегрессионное дробно-интегрированное скользящее среднее модель, которую также называют фракционной моделью ARIMA (FARIMA или ARFIMA).
Программные реализации
Различные пакеты, которые применяют методологию, например Бокс – Дженкинс доступна оптимизация параметров, чтобы найти правильные параметры для модели ARIMA.
- EViews: имеет обширные возможности ARIMA и SARIMA.
- Юля: содержит реализацию ARIMA в пакете TimeModels[11]
- Mathematica: включает ARIMAProcess функция.
- MATLAB: the Инструменты эконометрики включает Модели ARIMA и регрессия с ошибками ARIMA
- NCSS: включает несколько процедур для
ARIMA
примерка и прогнозирование.[12][13][14] - Python: the "statsmodels" Пакет включает модели для анализа временных рядов - одномерный анализ временных рядов: AR, ARIMA - векторные авторегрессионные модели, VAR и структурный VAR - описательную статистику и модели процессов для анализа временных рядов.
- р: стандартный R статистика пакет включает арима функция, которая задокументирована в «Моделирование временных рядов ARIMA». Кроме часть, функция также включает сезонные факторы, член пересечения и экзогенные переменные (xreg, называемые «внешними регрессорами»). Представление задачи CRAN на Временные ряды это ссылка со многими другими ссылками. В "прогноз" пакет в р может автоматически выбирать модель ARIMA для данного временного ряда с помощью
auto.arima ()
функция, а также может моделировать сезонные и несезонные модели ARIMA с помощьюsimulate.Arima ()
функция.[15] - Рубин: the "statsample-timeseries" gem используется для анализа временных рядов, включая модели ARIMA и фильтрацию Калмана.
- JavaScript: the "арима" пакет включает модели для анализа и прогнозирования временных рядов (ARIMA, SARIMA, SARIMAX, AutoARIMA)
- C: the "ctsa" пакет включает ARIMA, SARIMA, SARIMAX, AutoARIMA и несколько методов анализа временных рядов.
- БЕЗОПАСНЫЕ ЯЩИКИ ДЛЯ ИНСТРУМЕНТОВ: включает ARIMA моделирование и регрессия с ошибками ARIMA.
- SAS: включает расширенную обработку ARIMA в свою систему эконометрического анализа и анализа временных рядов: SAS / ETS.
- IBM SPSS: включает моделирование ARIMA в свои статистические пакеты Statistics и Modeler. Функция Expert Modeler по умолчанию оценивает диапазон сезонной и несезонной авторегрессии (п), интегрированный (d) и скользящей средней (q) и семь моделей экспоненциального сглаживания. Expert Modeler может также преобразовать данные целевого временного ряда в квадратный корень или натуральный логарифм. Пользователь также имеет возможность ограничить эксперт по моделированию моделями ARIMA или вручную ввести несезонный и сезонный ARIMA. п, d, и q настройки без Expert Modeler. Автоматическое обнаружение выбросов доступно для семи типов выбросов, и обнаруженные выбросы будут включены в модель временных рядов, если эта функция выбрана.
- SAP: пакет APO-FCS[16] в SAP ERP из SAP позволяет создавать и настраивать модели ARIMA с использованием методологии Бокса – Дженкинса.
- Службы аналитики SQL Server: из Microsoft включает ARIMA в качестве алгоритма интеллектуального анализа данных.
- Stata включает моделирование ARIMA (с использованием его команды arima) начиная с Stata 9.
- StatSim: включает модели ARIMA в Прогноз веб-приложение.
- Терадата Vantage имеет функцию ARIMA как часть своего механизма машинного обучения.
- TOL (Time Oriented Language) разработан для моделирования моделей ARIMA (включая варианты SARIMA, ARIMAX и DSARIMAX) [1].
- Scala: искры Библиотека содержит реализацию ARIMA для Scala, Java и Python. Реализация предназначена для работы на Apache Spark.
- PostgreSQL / MadLib: Анализ временных рядов / ARIMA.
- X-12-ARIMA: от Бюро переписи населения США
Смотрите также
Рекомендации
Эта статья включает в себя список общих Рекомендации, но он остается в основном непроверенным, потому что ему не хватает соответствующих встроенные цитаты.Май 2011 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
- ^ Для получения дополнительной информации о стационарности и различии см. https://www.otexts.org/fpp/8/1
- ^ а б Гайндман, Роб Дж; Афанасопулос, Джордж. 8.9 Сезонные модели ARIMA. Прогнозирование: принципы и практика. oTexts. Получено 19 мая 2015.
- ^ Гамильтон, Джеймс (1994). Анализ временных рядов. Издательство Принстонского университета. ISBN 9780691042893.
- ^ Папулис, Афанасиос (2002). Вероятность, случайные величины и случайные процессы. Тата Макгроу-Хилл Образование.
- ^ а б c Ван, Шисюн; Ли, Чуншоу; Лим, Эндрю (2019-12-18). «Почему ARIMA и SARIMA недостаточно». arXiv: 1904.07632 [cs, math, stat].
- ^ Коробка, Джордж Э. П. (2015). Анализ временных рядов: прогнозирование и контроль. ВИЛИ. ISBN 978-1-118-67502-1.
- ^ «Обозначение для моделей ARIMA». Система прогнозирования временных рядов. Институт САС. Получено 19 мая 2015.
- ^ а б «Введение в модели ARIMA». people.duke.edu. Получено 2016-06-05.
- ^ а б Государственный университет Миссури. «Спецификация модели, анализ временных рядов» (PDF).
- ^ Свейн, S; и другие. (2018). Разработка модели ARIMA для ежемесячного прогнозирования осадков в районе Хорда, Одиша, Индия. Недавние открытия в методах интеллектуальных вычислений (достижения в области интеллектуальных систем и вычислений). Достижения в интеллектуальных системах и вычислениях. 708. С. 325–331). Дои:10.1007/978-981-10-8636-6_34. ISBN 978-981-10-8635-9.
- ^ TimeModels.jl www.github.com
- ^ ARIMA в NCSS,
- ^ Автоматический ARMA в NCSS,
- ^ Автокорреляции и частичные автокорреляции в NCSS
- ^ 8.7 Моделирование ARIMA в R | OTexts. www.otexts.org. Получено 2016-05-12.
- ^ "Бокс модель Дженкинса". SAP. Получено 8 марта 2013.
дальнейшее чтение
- Астериу, Димитрос; Холл, Стивен Г. (2011). «Модели ARIMA и методология Бокса – Дженкинса». Прикладная эконометрика (Второе изд.). Пэлгрейв Макмиллан. С. 265–286. ISBN 978-0-230-27182-1.
- Миллс, Теренс С. (1990). Методы временных рядов для экономистов. Издательство Кембриджского университета. ISBN 978-0-521-34339-8.
- Персиваль, Дональд Б.; Уолден, Эндрю Т. (1993). Спектральный анализ для физических приложений. Издательство Кембриджского университета. ISBN 978-0-521-35532-2.