Встречается на собеседованиях • сегодня

Как настроить валидацию временных рядов

Для временных рядов стандартный k-fold не подходит из-за временной зависимости. Используйте:

  1. TimeSeriesSplit из sklearn - сохраняет порядок временных рядов:
python
from sklearn.model_selection import TimeSeriesSplit
tscv = TimeSeriesSplit(n_splits=5)
for train_idx, test_idx in tscv.split(X):
    X_train, X_test = X[train_idx], X[test_idx]
  1. Walk-forward validation - последовательное расширение обучающего окна:
python
train_size = int(len(X)*0.7)
for i in range(train_size, len(X)):
    X_train, X_test = X[:i], X[i:i+1]
  1. Оконный подход - фиксированное окно для обучения и теста:
python
window_size = 100
for i in range(len(X)-window_size):
    X_train, X_test = X[i:i+window_size], X[i+window_size]

Ключевые моменты:

  • Сохраняйте временной порядок
  • Учитывайте сезонность при разбиении
  • Для долгосрочного прогнозирования увеличивайте горизонт теста
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы