Модель ARIMA
Модель ARIMA (авторегрессионная интегрированная скользящая средняя, от англ. AutoRegressive Integrated Moving Average) — это класс статистических моделей, применяемых для анализа и прогнозирования временных рядов. Модель описывает динамику процесса через его собственные прошлые значения (авторегрессионная составляющая), ошибки прогноза (скользящая средняя) и разности для устранения нестационарности (интегрированная часть). ARIMA широко используется в эконометрике, финансах, метеорологии, производстве и других областях, где требуется прогнозирование временных последовательностей.
История развития
Методология ARIMA была разработана в 1970 году Джорджем Боксом и Гвилимом Дженкинсом, которые предложили систематический подход к идентификации, оценке и проверке моделей временных рядов. Этот подход получил название «методология Бокса—Дженкинса». В её основе лежала идея о том, что любой стационарный или приводимый к стационарности временной ряд может быть описан комбинацией авторегрессионных и скользящих средних членов. Развитие вычислительной техники в 1970–1980-х годах позволило широко внедрить ARIMA в практику прогнозирования, заменив более простые методы (например, экспоненциальное сглаживание). В последующие десятилетия появились расширения модели: сезонная ARIMA (SARIMA), модели с экзогенными переменными (ARIMAX) и интегрированные с машинным обучением гибридные подходы.
Структура и обозначения
Модель ARIMA записывается в виде ARIMA(p, d, q), где:
- p — порядок авторегрессионной (AR) составляющей, то есть количество лаговых значений временного ряда, используемых для прогноза;
- d — порядок дифференцирования (интегрирования), число разностей, которые необходимо применить к ряду для достижения стационарности;
- q — порядок скользящей средней (MA), количество лаговых ошибок прогноза, включаемых в модель.
Уравнение модели для стационарного после дифференцирования ряда (обозначается \( y_t \)) имеет вид:
\[ y_t = c + \phi_1 y_{t-1} + \phi_2 y_{t-2} + \dots + \phi_p y_{t-p} + \varepsilon_t + \theta_1 \varepsilon_{t-1} + \theta_2 \varepsilon_{t-2} + \dots + \theta_q \varepsilon_{t-q} \]
где:
- \( c \) — константа (свободный член);
- \( \phi_i \) — коэффициенты авторегрессии;
- \( \theta_j \) — коэффициенты скользящей средней;
- \( \varepsilon_t \) — ошибка (белый шум) в момент \( t \).
Если исходный ряд нестационарен, то сначала вычисляется разность \( d \)-го порядка: \( w_t = \Delta^d X_t \), где \( X_t \) — исходный ряд. Полученный ряд \( w_t \) подставляется в уравнение.
Условия стационарности и обратимости
Для корректного применения ARIMA необходимо, чтобы после дифференцирования ряд был стационарным — его среднее, дисперсия и автокорреляционная функция не зависели от времени. Стационарность ряда проверяется статистическими тестами (например, расширенный тест Дики—Фуллера). Кроме того, модель должна быть обратимой — корни характеристического полинома MA-части должны лежать внутри единичного круга на комплексной плоскости; это гарантирует, что модель можно представить в виде бесконечной авторегрессии.
Методология Бокса—Дженкинса
Процесс построения модели ARIMA состоит из четырёх этапов:
1. Идентификация порядка модели
На этом этапе определяются значения p, d, q. Используются графики автокорреляционной функции (ACF) и частной автокорреляционной функции (PACF). Например:
- ACF убывает медленно — ряд, вероятно, нестационарен, требуется дифференцирование (\( d > 0 \));
- ACF резко обрывается после лага q — это указывает на MA(q);
- PACF обрывается после лага p — указывает на AR(p).
2. Оценка параметров
Коэффициенты \( \phi_i, \theta_j \) и константа \( c \) оцениваются с помощью методов наименьших квадратов или метода максимального правдоподобия. Для ARIMA с большим числом параметров применяют алгоритмы оптимизации (например, метод Ньютона—Рафсона).
3. Диагностическая проверка
После подгонки модели проверяют, являются ли остатки (разность между фактическими значениями и прогнозами) белым шумом. Используют тест Льюнга—Бокса, график ACF остатков и проверку на нормальность. Если остатки коррелированы, модель признаётся неадекватной и процесс идентификации повторяется.
4. Прогнозирование
С помощью итоговой модели вычисляются точечные и интервальные прогнозы на заданное число шагов вперёд. Прогнозные значения получаются рекурсивно: для каждого следующего момента подставляются предыдущие прогнозируемые или фактические значения.
Сезонная модель SARIMA
Для данных с выраженной сезонностью (например, ежемесячные данные с годовым циклом) используется расширение — SARIMA(p, d, q)(P, D, Q, s), где:
- P, D, Q — сезонные порядки AR, интегрирования и MA;
- s — длина сезонного периода (например, 12 для месячных данных).
Модель включает как несезонные, так и сезонные лаги. Например, для s=12 в уравнение добавляются члены \( \Phi_1 y_{t-12} \) и \( \Theta_1 \varepsilon_{t-12} \).
Модель ARIMAX
ARIMAX (ARIMA с экзогенными переменными) позволяет включать в модель внешние регрессоры — факторы, которые могут влиять на прогнозируемый ряд. Такие модели описываются как:
\[ y_t = \beta_1 x_{1t} + \beta_2 x_{2t} + \dots + \beta_k x_{kt} + \text{ARIMA}(p,d,q) \]
где \( x_{it} \) — экзогенные переменные, \( \beta_i \) — их коэффициенты. ARIMAX применяется в макроэкономическом прогнозировании, когда, например, ВВП страны моделируется с учётом уровня безработицы и инфляции.
Выбор порядка модели и информационные критерии
На практике порядки p и q редко превышают 5–10. Для выбора среди конкурирующих моделей используются информационные критерии:
- AIC (информационный критерий Акаике): \( AIC = -2 \ln L + 2k \), где \( L \) — максимальное значение функции правдоподобия, \( k \) — число параметров;
- BIC (байесовский информационный критерий): \( BIC = -2 \ln L + k \ln n \), где \( n \) — длина ряда.
Предпочтение отдаётся модели с наименьшим значением критерия.
Применение
Финансы и экономика
ARIMA используется для прогнозирования курсов валют, цен акций, индексов, объёмов ВВП, инфляции, безработицы. Например, центральные банки применяют SARIMA для моделирования денежной массы и процентных ставок.
Производство и логистика
Модели ARIMA позволяют прогнозировать спрос на продукцию, объёмы выпуска, уровень запасов, что помогает оптимизировать цепочку поставок.
Энергетика
Прогнозирование потребления электроэнергии, нагрузки на сети, цен на нефть и газ. Сезонные модели учитывают суточные и годовые циклы.
Климатология и метеорология
ARIMA применяется для прогноза температуры, количества осадков, уровня воды в реках и других природных процессов с долгосрочной автокорреляцией.
Медицина и эпидемиология
Моделирование числа заболевших, госпитализаций, распространения эпидемий (например, гриппа или COVID-19) на основе исторических временных рядов.
Ограничения и критика
- Линейность — ARIMA предполагает линейную зависимость между прошлыми и будущими значениями, что не всегда выполняется в сложных системах.
- Стационарность — необходимость приведения ряда к стационарности путём дифференцирования может привести к потере информации (например, долговременных трендов).
- Чувствительность к выбросам — резкие скачки в данных (кризисы, природные катаклизмы) могут исказить оценки параметров и прогнозы.
- Сложность выбора порядка — процесс идентификации p, d, q может быть субъективным, особенно при коротких рядах или наличии множества локальных минимумов автокорреляционных функций.
- Неспособность учета нелинейных и сложных паттернов — для задач, где данные имеют нелинейную динамику (например, финансовые крахи), более эффективными могут быть нейросети или модели машинного обучения.
Расширения и альтернативы
В начале XXI века были разработаны более гибкие модели: ARFIMA (дробно-интегрированная) для долгосрочной памяти, GARCH для волатильности, а также гибридные модели, сочетающие ARIMA с нейронными сетями (например, ARIMA-ANN) или методами опорных векторов. В последние годы для прогнозирования временных рядов всё чаще применяются глубокие нейронные сети (LSTM, Transformer), которые способны обрабатывать нелинейные и долгосрочные зависимости без явной спецификации структуры.
Пример построения модели на практике
Допустим, имеется ежемесячный временной ряд числа продаж за 3 года (36 точек). Шаги:
- Визуализация ряда — заметен возрастающий тренд и сезонность.
- Тест Дики—Фуллера: p-value > 0.05 — ряд нестационарен.
- Взятие первой разности (d=1): ряд становится стационарным.
- Изучение ACF и PACF дифференцированного ряда: ACF спадает после 2-го лага (q=2), PACF обрывается после 2-го лага (p=2). Сезонный лаг 12: ACF показывает значимый пик на лаге 12 (P=1, D=1, Q=0, s=12).
- Оценка модели SARIMA(2,1,2)(1,1,0,12): вычисление коэффициентов, проверка значимости.
- Анализ остатков: тест Льюнга—Бокса даёт p-value > 0.05 — модель адекватна.
- Прогноз на 6 месяцев вперёд с 95% доверительными интервалами.
Источники
- Box, G. E. P., Jenkins, G. M. (1970). Time Series Analysis: Forecasting and Control. Holden-Day.
- Hamilton, J. D. (1994). Time Series Analysis. Princeton University Press.
- Enders, W. (2014). Applied Econometric Time Series (4th ed.). Wiley.
- Hyndman, R. J., Athanasopoulos, G. (2018). Forecasting: Principles and Practice (2nd ed.). OTexts.
- Brockwell, P. J., Davis, R. A. (2016). Introduction to Time Series and Forecasting (3rd ed.). Springer.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →