IBM Granite 时间序列集成 R1 发行说明

概述

IBM Granite 时间序列集成 (Granite Timeseries Ensemble) 提供了一个统一的时间序列预测接口,聚合了四种互补模型架构的预测结果。通过结合这些模型,该系统为预测任务提供了一个可靠的默认方案,减少了针对特定数据集或预测范围手动选择单一架构的需求。

集成架构

默认方案利用了四个预训练的 Granite 模型,每个模型采用不同的架构来捕捉不同的趋势、季节性和局部变化:

  • Granite PatchTST-FM-r1: 一种分块 Transformer 模型。
  • Granite PatchTST-FM-r2: 一种分块 Conformer 模型。
  • Granite FlowState-r1.1: 一种状态空间模型。
  • Granite TTM-r3: 一种微型时间混合器 (MLP mixer) 模型。

由于这些模型处理数据的方式不同,它们的误差分布并不重合,这使得集成模型平均而言能够产生比任何单一成员更稳定、更准确的结果。

聚合方法

该集成支持两种主要的预测组合方法,且均无需拟合或训练:

  • 概率集成 (默认): 该方法使用均匀概率池化,使每个成员具有同等的影响力。由于其简单且无需调整超参数,建议作为大多数应用程序的起点。
  • IQR 集成: 这种自适应方法根据预测范围对成员进行加权,偏向于区间较窄的模型。它适用于将预测的不确定性视为重要信息的应用场景。

性能与评估

在 97 个 GIFT-Eval 数据集配置上的评估表明,与单一模型相比,集成方法提供了更优的鲁棒性。虽然像 PatchTST-FM-r2 这样的单一模型有时可能在特定指标(如聚合 CRPS)上优于集成模型,但集成模型在不同数据集上始终能获得更高的排名。其主要优势在于无需预先确定最佳架构,即可在各种序列中提高可靠性。

实现

该集成可通过 granite-tsfm 库访问。该系统设计为可扩展的,允许用户在现有接口中替换或添加兼容的预测器。

from tsfm_public.models.ensemble.modeling_ensemble import QuantileEnsembleForecaster

# Load the default ensemble
ensemble = QuantileEnsembleForecaster.from_pretrained(
    "ibm-granite/granite-timeseries-ensemble-r1",
)

# Generate forecasts
result = ensemble(
    df.tail(1024),
    timestamp_column="date",
    target_columns=["OT"],
    context_length=1024,
    prediction_length=24,
)

限制与注意事项

用户应注意以下几点操作限制:

  • 资源使用: 集成模型在运行时会下载并运行四个检查点,与单一模型部署相比,这增加了内存消耗和推理延迟。
  • 独立通道: 当前实现独立处理多变量通道,并未利用跨通道相关性。
  • 校准: 虽然集成模型提高了聚合准确性,但它不能保证校准或对显著分布偏移的鲁棒性。建议在代表性数据上进行回测,以验证特定用例的性能。

Sources