Интерактивная статистика
Модуль 8 «Временные ряды и прогноз»
Прогресспройдено 0 / 63

Автокорреляция: сегодня похоже на вчера

В регрессии наблюдения независимы: одна строка ничего не знает о соседней. В ряду это не так — сегодняшняя выручка похожа на вчерашнюю, а воскресная на прошлое воскресенье. Такая связь ряда с самим собой называется автокорреляцией, и у неё две стороны. Плохая: обычная регрессия на таких данных занижает свою ошибку и выдаёт слишком уверенный прогноз. Хорошая: если сегодня зависит от вчера, то по прошлому ряда можно предсказывать будущее — на этом и стоят все модели дальше.

сам рядy(t) и y(t−1)r = 0.67коррелограмма: корреляция на каждом лаге1714лаг →

Каждая палочка — корреляция ряда с самим собой, сдвинутым на k дней. Внутри серой полосы значение неотличимо от нуля.

Возьмём ряд и сдвинем его копию на один день. Получатся пары: значение вчера — значение сегодня. Каждая такая пара нарисована точкой на правой панели, а бирюзовые отрезки на левой соединяют дни, из которых пары составлены. Число r под панелью — обычная корреляция из прошлого модуля, посчитанная по этим парам.

Что это значит

Коррелограмма — рабочий инструмент диагностики, а не украшение. Медленное затухание говорит, что ряд надо дифференцировать; пики на кратных лагах называют период сезонности; всё внутри полосы значимости означает, что моделировать нечего.

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

Рядом с ACF обычно смотрят частную автокорреляцию (PACF): она показывает связь на лаге k, из которой вычтено влияние промежуточных дней. По паре ACF и PACF классически подбирают порядки p и q — этим займёмся в уроке про ARIMA.

Где это встречается

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

На автокорреляции построена интуиция «завтра будет как сегодня» — простейший прогноз погоды, который трудно превзойти на горизонте в сутки.

Обратный случай — отрицательная автокорреляция: за большим значением систематически идёт малое. Так ведут себя запасы после закупки или отдача после интенсивной тренировки.

Определения

Лаг
сдвиг ряда на заданное число шагов назад: лаг 1 — вчерашнее значение, лаг 7 — значение неделю назад.
По-простому: на сколько дней сдвинули ряд назад.
Автокорреляцияrk=corr(yt,ytk)r_k = corr(y_t, y_{t−k})
корреляция ряда с самим собой, сдвинутым на k шагов.
По-простому: насколько сегодня похоже на «k дней назад».
Коррелограмма (ACF)
график автокорреляции по всем лагам сразу; по форме затухания определяют тип ряда и период цикла.
По-простому: график корреляций для всех сдвигов.
Полоса значимости±1.96/√n
границы, внутри которых автокорреляцию нельзя отличить от случайной.
По-простому: коридор, внутри которого значение неотличимо от нуля.

Когда метод врёт (допущения)

Автокорреляция измеряет линейную связь — как и обычная корреляция. Нелинейная зависимость от прошлого (например, всплеск после порога) может дать r около нуля при реальной предсказуемости ряда.

Полоса ±1.96/√n выведена в предположении, что настоящих корреляций нет вовсе. При множестве лагов часть палочек вылезет за неё случайно: это те же множественные сравнения, что и в модуле про гипотезы.

Подробный разбор: математика и механизм (необязательно)

Почему нельзя просто добавить в регрессию признак «вчерашнее значение» и забыть про автокорреляцию: оценка коэффициента при лаге смещена вниз на конечной выборке (смещение порядка 1/n), а если в остатках модели сохранилась своя автокорреляция, оценки перестают быть состоятельными вовсе. Отсюда и отдельный класс моделей вместо приёма «подставим лаг признаком».

Формально ряд, у которого автокорреляция ненулевая только на лаге 1, — это MA(1), а ряд с экспоненциально затухающей ACF — AR(1). Пара «затухает плавно» против «обрывается на лаге q» и есть тот язык, на котором коррелограмма подсказывает структуру модели.

Дальше →
Такие разборы — в канале

Пишу про аналитику простыми словами: как считать метрики, не наврать в A/B, что спрашивают на собесах и как я собираю этот сайт. Без воды.

Подписаться на канал