license: apache-2.0
pipeline_tag: 时间序列预测
tags:
- 时间序列
- 预测
- 预训练模型
- 基础模型
- 时间序列基础模型
- 时序分析
Chronos-Bolt⚡ (小尺寸版)
🚀 2025年2月14日更新:Chronos-Bolt模型现已登陆Amazon SageMaker JumpStart!查看教程笔记本,学习如何用几行代码部署Chronos端点至生产环境。
Chronos-Bolt是一系列可用于零样本预测的预训练时间序列模型。该模型基于T5编码器-解码器架构,训练数据涵盖近千亿时间序列观测点。其创新性地将历史时间序列上下文分块为多观测点片段输入编码器,解码器则直接基于这些表征生成多步分位数预测——这种直接多步预测方法使Chronos-Bolt在精度更高的同时,比原版Chronos同尺寸模型提速250倍,内存效率提升20倍。
性能表现
下图对比了Chronos-Bolt与原版Chronos模型在512观测点上下文长度、64步预测范围内,批量预测1024条时间序列的推理耗时。
Chronos-Bolt不仅速度显著提升,预测精度也更胜一筹。下图展示了模型在27个数据集上的综合表现(详见Chronos论文),采用加权分位数损失(WQL)和平均绝对比例误差(MASE)作为评估指标。值得注意的是,尽管训练阶段未接触这些数据集,零样本预测的Chronos-Bolt仍超越常规统计模型和深度学习模型(标*者),也优于其他基础模型(标+者,表示已在部分基准数据集预训练)。更惊艳的是,Chronos-Bolt(基础版)在预测精度上超越原版Chronos(大尺寸版)的同时,推理速度提升超600倍。
Chronos-Bolt提供以下尺寸版本:
使用指南
AutoGluon零样本推理
安装依赖:
pip install autogluon
执行预测:
from autogluon.timeseries import TimeSeriesPredictor, TimeSeriesDataFrame
df = TimeSeriesDataFrame("https://autogluon.s3.amazonaws.com/datasets/timeseries/m4_hourly/train.csv")
predictor = TimeSeriesPredictor(prediction_length=48).fit(
df,
hyperparameters={
"Chronos": {"model_path": "autogluon/chronos-bolt-small"},
},
)
predictions = predictor.predict(df)
进阶功能如微调和协变量预测详见本教程。
部署至SageMaker
更新SageMaker SDK:
pip install -U sagemaker
部署推理端点:
from sagemaker.jumpstart.model import JumpStartModel
model = JumpStartModel(
model_id="autogluon-forecasting-chronos-bolt-small",
instance_type="ml.c5.2xlarge",
)
predictor = model.deploy()
发送JSON格式时序数据进行预测:
import pandas as pd
df = pd.read_csv("https://raw.githubusercontent.com/AileenNielsen/TimeSeriesAnalysisWithPython/master/data/AirPassengers.csv")
payload = {
"inputs": [
{"target": df["#Passengers"].tolist()}
],
"parameters": {
"prediction_length": 12,
}
}
forecast = predictor.predict(payload)["predictions"]
Chronos-Bolt支持CPU/GPU实例部署及协变量预测,端点API详情参见示例笔记本。
引用文献
若Chronos或Chronos-Bolt对您的研究有所助益,请引用相关论文:
@article{ansari2024chronos,
title={Chronos: Learning the Language of Time Series},
author={Ansari, Abdul Fatir and Stella, Lorenzo and Turkmen, Caner and Zhang, Xiyuan, and Mercado, Pedro and Shen, Huibin and Shchur, Oleksandr and Rangapuram, Syama Syndar and Pineda Arango, Sebastian and Kapoor, Shubham and Zschiegner, Jasper and Maddix, Danielle C. and Mahoney, Michael W. and Torkkola, Kari and Gordon Wilson, Andrew and Bohlke-Schneider, Michael and Wang, Yuyang},
journal={Transactions on Machine Learning Research},
issn={2835-8856},
year={2024},
url={https://openreview.net/forum?id=gerNCVqqtR}
}
许可协议
本项目采用Apache-2.0许可证。