Что такое автокорреляция и частичная автокорреляция (ACF, PACF)?
Ответ от нейросети
sobes.tech AI
Что хотят услышать интервьюеры:
ACF показывает, насколько текущее значение ряда связано с его прошлыми значениями на разных лагах. PACF показывает «чистую» связь с лагом после исключения влияния промежуточных лагов. Эти метрики используют для анализа структуры временного ряда и подбора параметров моделей, например ARIMA.
Определение:
Автокорреляция (ACF) — это корреляция временного ряда с самим собой, но сдвинутым на k шагов назад. Она отвечает на вопрос: насколько значение ряда на текущем шаге связано с значением k шагов назад.
Частичная автокорреляция (PACF) — это связь между рядом и лагом k после удаления влияния всех более коротких лагов 1..k-1. Она показывает прямой эффект именно этого лага, без посредников.
Иными словами:
- ACF измеряет общую зависимость с прошлыми значениями;
- PACF измеряет прямую зависимость с конкретным лагом.
Пример использования:
Допустим, есть ряд дневных продаж. Если ACF сильно положительна на лагах 1, 7 и 14, это может означать краткосрочную инерцию и недельную сезонность. Если PACF резко обрывается после лага 1, это часто указывает на AR-компоненту порядка 1.
import statsmodels.api as sm
import matplotlib.pyplot as plt
# series — временной ряд, например pandas.Series
fig, axes = plt.subplots(1, 2, figsize=(12, 4))
sm.graphics.tsa.plot_acf(series, lags=30, ax=axes[0])
axes[0].set_title("ACF")
sm.graphics.tsa.plot_pacf(series, lags=30, ax=axes[1], method="ywm")
axes[1].set_title("PACF")
plt.tight_layout()
plt.show()
Пояснение кода:
Здесь строятся два графика:
plot_acf(...)показывает корреляцию ряда с его лагами от 1 до 30;plot_pacf(...)показывает частичную автокорреляцию на тех же лагах.
По графику ACF можно увидеть:
- есть ли сезонные пики;
- насколько долго сохраняется зависимость во времени;
- похож ли ряд на стационарный или нет.
По графику PACF можно:
- оценить порядок авторегрессионной части;
- понять, на каких лагах есть прямое влияние;
- отличить прямую зависимость от эффекта накопления через промежуточные лаги.
Ключевые моменты:
- ACF — это общая корреляция ряда с лагами.
- PACF — это корреляция с лагом после вычитания влияния предыдущих лагов.
- ACF полезна для поиска сезонности и оценки скользящей средней.
- PACF часто используют для выбора порядка
pв AR-моделях. - В практике ACF и PACF применяют вместе, а не по отдельности.
- Для нестационарных рядов интерпретация графиков может быть искажена, поэтому часто сначала делают преобразования или дифференцирование.