Открыть сервис

DeepAR

DeepAR — это алгоритм вероятностного прогнозирования временных рядов, разработанный компанией Amazon Web Services (AWS). Относится к классу моделей глубокого обучения, использующих рекуррентные нейронные сети (RNN) для построения распределения будущих значений на основе исторических данных и статических признаков. DeepAR предназначен для решения задач прогнозирования спроса, загрузки серверов, финансовых показателей, погодных условий и других метрик, изменяющихся во времени.

История и контекст появления

Алгоритм DeepAR был впервые представлен исследователями из Amazon в 2017 году в статье «DeepAR: Probabilistic Forecasting with Autoregressive Recurrent Networks». Разработка была мотивирована необходимостью создания универсального инструмента для прогнозирования временных рядов в масштабах инфраструктуры AWS, где требуется обрабатывать тысячи различных рядов (например, потребление ресурсов каждым клиентом облачных сервисов). До появления DeepAR традиционные методы, такие как ARIMA, экспоненциальное сглаживание или Prophet, требовали ручной настройки для каждого ряда и плохо справлялись с нелинейными зависимостями и большим количеством временных рядов.

DeepAR стал частью сервиса Amazon SageMaker (платформа для машинного обучения в AWS), где доступен как встроенный алгоритм. Позднее его реализация была опубликована в открытом доступе в библиотеке GluonTS (Apache 2.0), что позволило исследователям и разработчикам использовать модель вне экосистемы AWS.

Архитектура и принцип работы

Основные компоненты

DeepAR основан на архитектуре рекуррентной нейронной сети с долгой краткосрочной памятью (LSTM). Модель обрабатывает временной ряд как последовательность, где каждый шаг зависит от предыдущих. Ключевая особенность — способность моделировать не только среднее значение прогноза, но и полное вероятностное распределение будущих значений.

Входные данные

Модель принимает три типа входных данных:

  1. Целевой временной ряд — последовательность числовых значений, которые необходимо прогнозировать.
  2. Динамические признаки — переменные, которые меняются во времени и известны как на прошлых, так и на будущих шагах (например, день недели, праздники, курс валют).
  3. Статические признаки — характеристики, не изменяющиеся для конкретного ряда (например, идентификатор товара, категория, регион).

Процесс прогнозирования

DeepAR работает в два этапа:

  • Обучение: модель настраивается на исторических данных всех временных рядов одновременно (глобальная модель). Для каждого временного шага сеть предсказывает параметры вероятностного распределения (обычно гауссовского или отрицательного биномиального) для следующего значения. Функция потерь — отрицательное логарифмическое правдоподобие, что позволяет модели учиться на неопределённости.
  • Инференс: для нового ряда модель генерирует несколько траекторий будущих значений (сэмплов), из которых вычисляются квантили (например, 10-й, 50-й, 90-й процентили) или полное распределение. Это даёт не точечный прогноз, а интервалы уверенности.

Отличия от классических методов

В отличие от ARIMA или экспоненциального сглаживания, DeepAR не требует стационарности ряда, может учитывать множественные сезонности и внешние регрессоры. В отличие от моделей машинного обучения (например, градиентного бустинга), DeepAR явно моделирует временную зависимость через рекуррентные связи и выдаёт вероятностные прогнозы, а не детерминированные числа.

Классификация и варианты

DeepAR относится к категории глубоких вероятностных моделей временных рядов. Существуют следующие модификации и родственные подходы:

  • DeepAR (базовая версия) — с LSTM и гауссовским распределением.
  • DeepAR с отрицательным биномиальным распределением — для счётных данных (например, количество заказов).
  • DeepAR с трендовыми и сезонными компонентами — расширение, добавляющее декомпозицию ряда.
  • DeepAR в составе GluonTS — открытая реализация с поддержкой различных архитектур (CNN, Transformer) и распределений.

Применение

Коммерческое и промышленное

DeepAR широко используется в сферах, где требуется массовое прогнозирование большого количества временных рядов:

Научные исследования

В академической среде DeepAR применяется для анализа климатических данных, эпидемиологического моделирования (например, прогнозирование заболеваемости), а также как базовый метод для сравнения с новыми алгоритмами в области прогнозирования временных рядов.

Примеры реализации

В России и мире DeepAR используется в платформах управления цепочками поставок, системах рекомендаций и мониторинга инфраструктуры. Например, в сервисах облачного мониторинга AWS CloudWatch и Azure Monitor применяются алгоритмы, основанные на схожих принципах.

Преимущества и недостатки

Преимущества

  • Вероятностный прогноз: позволяет оценивать риски и принимать решения с учётом неопределённости.
  • Глобальное обучение: одна модель может обрабатывать тысячи рядов, автоматически выявляя общие паттерны.
  • Автоматическая обработка пропусков: модель может обучаться на неполных данных.
  • Учёт внешних факторов: динамические и статические признаки улучшают точность.

Недостатки

  • Высокие требования к вычислительным ресурсам: обучение на больших наборах данных требует GPU и значительного времени.
  • Сложность интерпретации: в отличие от линейных моделей, DeepAR является «чёрным ящиком».
  • Чувствительность к гиперпараметрам: для достижения хороших результатов требуется настройка количества слоёв, размера скрытого состояния, скорости обучения.
  • Необходимость большого объёма данных: на коротких рядах (менее 30–50 точек) модель может работать хуже простых методов.

Критика и ограничения

Основная критика DeepAR связана с его ресурсоёмкостью и сложностью внедрения в организациях, не имеющих доступа к мощной инфраструктуре. Некоторые исследователи отмечают, что для рядов с чётко выраженной сезонностью и небольшим количеством аномалий традиционные статистические методы (SARIMA, ETS) могут давать сопоставимые результаты при меньших затратах. Также указывается, что вероятностные прогнозы DeepAR иногда оказываются излишне широкими (слишком большая неопределённость), что снижает их практическую ценность.

В России алгоритм DeepAR не имеет статуса запрещённой или нежелательной технологии, однако его использование в коммерческих и государственных системах регулируется общими нормами оборота данных и лицензирования программного обеспечения.

Интересные факты

  • Название «DeepAR» является аббревиатурой от «Deep Autoregressive» (глубокий авторегрессионный).
  • В 2018 году DeepAR занял первое место в соревновании M4 Competition по прогнозированию временных рядов в категории «машинное обучение», показав высокую точность на разнородных данных.
  • Алгоритм лёг в основу более поздних моделей, таких как DeepState и DeepFactors, которые комбинируют глубокое обучение с классическими методами декомпозиции.

Источники

  • Salinas D., Flunkert V., Gasthaus J., Januschowski T. «DeepAR: Probabilistic Forecasting with Autoregressive Recurrent Networks» (2017).
  • Документация Amazon SageMaker: «DeepAR Algorithm» (AWS).
  • GluonTS: библиотека вероятностного прогнозирования временных рядов (Apache 2.0).
  • Makridakis S., Spiliotis E., Assimakopoulos V. «The M4 Competition: Results, findings, conclusion and way forward» (2018).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →