Ответ вслух Senior RNN и LSTM обновлено

Нейросеть для временных рядов

Вопрос

Нужно прогнозировать нагрузку на серверы по минутам. Стоит ли брать LSTM или трансформер? Как бы вы подошли?

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Сначала строю бейзлайны: значение неделю или сутки назад и градиентный бустинг на лагах, скользящих статистиках и календарных признаках. На практике бустинг часто оказывается очень сильным, и нейросеть должна его обойти.

Что должно прозвучать в ответе

  • Сначала сильные бейзлайны: сезонная наивная модель, бустинг на лагах и календаре

  • Нейросети оправданы при множестве связанных рядов и сложных паттернах

  • Варианты: LSTM, TCN, трансформеры для рядов, предобученные модели рядов

  • Корректная валидация по времени, без утечек в нормализации

  • Квантильный прогноз и мониторинг дрейфа

Что могут спросить следом

  • Как нормализовать ряды разного масштаба?
  • Когда бустинг выигрывает у нейросети на рядах?

Разбор

Сначала строю бейзлайны: значение неделю или сутки назад и градиентный бустинг на лагах, скользящих статистиках и календарных признаках. На практике бустинг часто оказывается очень сильным, и нейросеть должна его обойти. Нейросети оправданы, когда рядов много и они связаны, паттерны сложные, а данных достаточно: тогда пробую LSTM или GRU по окну истории, временные свёрточные сети (TCN) или трансформеры для рядов с патчами, а также предобученные foundation-модели временных рядов как zero-shot бейзлайн. Валидация строго по времени, нормализацию считаю только по истории (часто на окно), чтобы не подсмотреть будущее. Для планирования мощностей важны квантили, поэтому учу квантильную потерю, а не только среднее. В проде слежу за дрейфом: релизы и маркетинговые акции меняют нагрузку.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.