Проблема выбора и решение IBM
Одной из главных проблем при использовании предобученных моделей временных рядов является необходимость выбора оптимальной архитектуры под конкретный тип данных. Модель, эффективная для гладких промышленных сигналов, может провалиться на зашумленных розничных продажах. IBM Research предлагает решение — Granite Timeseries Ensemble R1. Это не просто еще одна модель, а «рецепт» объединения четырех различных архитектур Granite, который работает как default-решение (по умолчанию) без необходимости подбора весов или дообучения на ваших данных.
Архитектурное разнообразие: 4 модели в одном
Ансамбль комбинирует четыре предобученные модели с принципиально разными подходами к извлечению признаков. Это снижает риск коррелирующих ошибок: если одна архитектура не улавливает сезонность, другая может это компенсировать. В состав ансамбля входят:
| Модель | Архитектура | Ключевая особенность |
|---|---|---|
| Granite PatchTST-FM-r1 | Patched Transformer | Трансформер с патчингом, эффективный для длинных контекстов |
| Granite PatchTST-FM-r2 | Patched Conformer | Гибрид CNN и Transformer, хорошо ловит локальные вариации |
| Granite FlowState-r1.1 | State-space model (SSM) | Линейная сложность, эффективен для очень длинных последовательностей |
| Granite TTM-r3 | Tiny Time Mixers (MLP) | Легковесная MLP-архитектура для быстрого инференса |
Два метода агрегации: от простого к адаптивному
IBM предлагает два способа объединения прогнозов (quantile forecasts) от этих моделей. Обе методы не требуют фитинга (подгонки) на исторических ошибках, что критично для zero-shot сценариев.
- Probabilistic Ensemble (Рекомендуемый по умолчанию): Использует равномерное распределение весов (uniform probability pooling). Каждая модель вносит равный вклад. Это решение устойчиво к «загадке комбинирования прогнозов» (forecast combination puzzle), где простые средние часто превосходят сложные взвешенные методы.
- IQR Ensemble (Адаптивный): Взвешивает модели на основе их разброса прогнозов (Inter Quartile Range). Модели с более узкими доверительными интервалами получают больший вес. Метод использует изотоническую регрессию для предотвращения пересечения квантилей. Позволяет настраивать «температуру» для сглаживания весов.
Результаты бенчмарков GIFT-Eval
Эксперименты проводились на датасете GIFT-Eval (97 конфигураций). Важно, что тестовые цели не использовались для настройки агрегации. Ансамбли превзошли все четыре отдельные модели по совокупным показателям.
| Метрика | Granite Ensemble R1 (Prob) | Granite PatchTST-FM-r2 (Лучшая одиночная) | Granite TTM-r3 (Худшая одиночная) |
|---|---|---|---|
| MASE (точечный прогноз, ниже лучше) | 0.683 ★ | 0.685 | 0.724 |
| CRPS / MWQL (вероятностный, ниже лучше) | 0.471 ★ | 0.467 | 0.520 |
| Средний ранг MASE (в рамках лидерборда) | 47.175 | 51.371 | 83.062 |
Примечание: В таблице CRPS для ансамбля и PatchTST-FM-r2 близки, однако ансамбль выигрывает по MASE и среднему рангу, что подтверждает его стабильность на разнообразных данных.
Как начать использовать
Решение доступно через библиотеку granite-tsfm (версия >= 0.3.11). Модель лицензирована пермиссивно, что позволяет коммерческое использование. Для запуска достаточно загрузить конфиг из Hugging Face:
pip install "granite-tsfm>=0.3.11"
from tsfm_public.models.ensemble.modeling_ensemble import QuantileEnsembleForecaster
# Загрузка ансамбля (Probabilistic по умолчанию)
ensemble = QuantileEnsembleForecaster.from_pretrained(
"ibm-granite/granite-timeseries-ensemble-r1"
)
# Запуск прогноза
result = ensemble(
df.tail(1024),
timestamp_column="date",
target_columns=["OT"],
context_length=1024,
prediction_length=24
)
# Доступ к точечному прогнозу и квантилям (0.1-0.9)
print(result.prediction_outputs)
print(result.quantile_outputs)
Ансамбль возвращает как точечный прогноз (prediction_outputs), так и распределение вероятностей (quantile_outputs), что позволяет бизнесу оценивать риски (например, интервал 0.1–0.9 дает 80% покрытие).
Источник: Hugging Face blog ↗
