Sobes.tech
Middle — Senior
23

Что такое feature engineering для time series (lags, rolling stats, datetime features)?

Companies where asked
филиппинский банк Salmon

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 помогает моделям временных рядов лучше понимать структуру данных и улучшать качество прогнозов.