Что такое feature engineering для time series (lags, rolling stats, datetime features)?
Answer from AI
sobes.tech AI
Feature engineering для временных рядов — это процесс создания новых признаков из исходных данных, которые помогают моделям лучше улавливать временную структуру и зависимости.
-
Lags (запаздывания) — создание признаков, которые представляют значения временного ряда из предыдущих временных точек. Например, значение ряда за 1, 2, 3 периода назад. Это помогает модели учитывать автокорреляцию.
-
Rolling stats (скользящие статистики) — вычисление статистик (среднее, медиана, стандартное отклонение и др.) по скользящему окну. Например, среднее за последние 7 дней. Это помогает выявлять тренды и сглаживать шум.
-
Datetime features (признаки даты и времени) — извлечение из временной метки таких признаков, как день недели, месяц, час, праздничные дни, сезон и т.п. Это помогает модели учитывать сезонность и цикличность.
Пример создания лагов и скользящего среднего на Python с pandas:
import pandas as pd
df = pd.DataFrame({'value': [10, 12, 13, 15, 14, 16, 18]})
# Лаг на 1 период
df['lag_1'] = df['value'].shift(1)
# Скользящее среднее за 3 периода
df['rolling_mean_3'] = df['value'].rolling(window=3).mean()
Таким образом, feature engineering помогает моделям временных рядов лучше понимать структуру данных и улучшать качество прогнозов.