公司动态
TimesFM 零样本时间序列预测:能力边界与选型参考
TimesFM 零样本时间序列预测能力边界与选型参考【免费下载链接】timesfmTimesFM (Time Series Foundation Model) is a pretrained time-series foundation model developed by Google Research for time-series forecasting.项目地址: https://gitcode.com/GitHub_Trending/ti/timesfmTimesFMTime Series Foundation Model是 Google Research 团队开发并开源的时间序列基础模型采用 Apache 2.0 协议当前最新版本为 2.5。它与传统统计模型ARIMA、ETS 等的核心差异在于模型已在大规模时间序列数据上预训练落地时不需要逐序列拟合与调参直接传入历史序列即可得到零样本预测。它与其他预训练模型如 Chronos的差异主要体现在推理效率和概率头设计上——2.5 版将参数量从 500M 压缩到 200M上下文长度从 2048 提升到 16k。本文梳理它的能力、实测数据与使用边界帮助你判断是否值得引入自己的预测链路以及如何完成最小验证。项目定位与核心差异TimesFM 是一个为单变量时间序列预测任务预训练的 decoder-only Transformer 模型其训练方式与传统方法有本质不同统计模型逐序列求解参数而 TimesFM 先从大规模数据中学习序列分布规律再对未见过的序列做推理泛化。预训练替代逐序列拟合相比 ARIMA、ETS它省掉了每个序列看特征、选阶、调参数这一步传入历史数据即可出预测。零样本预测的含义在当前版本中输入 1~16,384 个历史点即可同时得到点预测和分位数预测2.5 版移除了 frequency 指标输入无需显式告知序列频率。双后端实现提供 PyTorch 与 Flax 两种实现且 2.5 兼容 HuggingFace Transformers 接口可走标准 PEFTLoRA工作流做轻量微调。值得注意的是仓库中 1.0/2.0 版代码归档在v1目录下文引用的基准数据均为 1.0 版实测2.5 版尚无对等的公开对比数据。能力拆解能做什么、做到什么程度以下数据来自仓库内置的基准实验均跑在 g2-standard-32 GPU 上PAX 后端。 跨数据集零样本预测在 26 个公开数据集电力、汇率、旅游、M3/M4 系列等上TimesFM-1.0200M与 Chronos、TimeGPT-1、SeasonalNaive 及统计集成做零样本对比。在 australian-electricity-demand 上TimesFM 的 MASE 为 0.955Chronos (Large) 为 1.253SeasonalNaive 为 1.909MAPE 分别为 0.043 与 0.47。在 exchange-rate 上MASE 低至 0.0004。GM of Relative Scores越低越好1.0 表示打平TimesFM 0.810Chronos (Large) 0.813StatisticalEnsemble 0.836——头部差距很小区分度主要在效率侧。图 1扩展基准中各时间序列基础模型在不同数据集上的 MASE/MAPE 与推理耗时对比来源v1/experiments/extended_benchmarks适用前提该基准只覆盖长周期数据上的一个 horizon 窗口滚动长窗口任务需看下一节。⚡ 长序列推理效率在 ETT 系列数据集etth1、etth2、ettm1、ettm2上上下文固定 512horizon 取 96/192/336 做滚动验证平均推理耗时TimesFM 0.606 秒Chronos-Large 1079.626 秒Chronos-Mini 252.649 秒比 Chronos-Large 快 1000 倍以上。etth1 horizon 336TimesFM wape 0.574Chronos-Large 0.590两者 sMAPE 同为 0.795。并非全线占优etth2 在 192/336 步上Chronos-Large 的 wape0.280/0.276反而低于 TimesFM0.288/0.295。图 2上下文 512、预测步长 96/192/336 时各时间序列预训练模型的 WAPE、sMAPE 与推理时间来源v1/experiments/long_horizon_benchmarks适用前提耗时为单卡 PAX 实测绝对数值取决于你的硬件。概率预测与分位数输出默认输出为均值加第 10 至第 90 百分位、共 10 个分位数形状为(batch, horizon, 10)2.5 版新增可选的 30M 参数分位数头支持最多 1k 步的连续分位数预测。需要说明的是官方 README 明确这 10 个分位数头在预训练后未做校准用于风险决策前应在自己的留出集上先校准或 conformalize。最小验证路径最短路径是直接从 PyPI 安装当前 2.0.2无需克隆仓库pip install timesfm[torch]下面这段代码会加载 2.5 的 200M 检查点约 800MB首次运行需联网从 HuggingFace 下载对一条线性假数据做 12 步零样本预测输出点预测与分位数的形状import numpy as np import timesfm model timesfm.TimesFM_2p5_200M_torch.from_pretrained(google/timesfm-2.5-200m-pytorch) point, quantiles model.forecast(horizon12, inputs[np.linspace(0, 1, 100)]) print(point.shape) # (1, 12) print(quantiles.shape) # (1, 12, 10): mean, then 10th to 90th quantiles仓库自带端到端示例timesfm-forecasting/examples/global-temperature/用 36 个月全球气温异常序列做 12 个月零样本预测输出下图所示的带置信区间结果图协变量预测XReg与 LoRA 微调分别在对应的 examples 子目录中不在本文展开。图 3温度异常序列的零样本预测示例红色为 12 个月预测浅色带为 60%/80% 置信区间来源timesfm-forecasting/examples/global-temperature适用场景与落地边界是否采用取决于三件事是否需要省掉逐序列建模、能否接受分位数校准成本、是否强依赖外生变量。适合用单变量序列的零样本基线销售、电力需求、传感器、气象等序列需要快速得到一个可对比的预测基线且不想为每个序列单独建模批量预测200M 参数在 CPU 上约占 1.5GB 内存、GPU 上约 1GB 显存可对成百上千条序列批量出预测需要概率输出风险、库存类决策需要同时拿到均值与分位数区间暂不适合用可解释性要求需要模型系数可解释的场景应选 ARIMA、回归等传统统计模型强外生变量场景当前版本协变量支持依赖可选的 XReg 模块需额外安装并不原生支持多变量预测分位数精度要求高分位数头未经预训练后校准直接用于风险指标不合适需自行校准另外该开源版本并非 Google 官方支持产品企业级部署需评估商业渠道BigQuery ML、Vertex AI 等。相关资源v1/experiments/extended_benchmarks/ — 26 数据集扩展基准脚本与结果timesfm-forecasting/examples/finetuning/ — LoRA 微调示例HuggingFace Transformers PEFTsrc/timesfm/ — 2.5 核心模型源码Torch/Flax 双实现TimesFM 的价值主张是把逐序列训练替换为预训练 零样本推理2.5 版在压缩参数的同时扩展了上下文与分位数能力但仓库内公开基准数据仍停留在 1.0 版选型前建议先用自己的数据跑一遍最小验证路径确认精度再决定落地规模。更多细节见仓库根目录 README 与timesfm-forecasting/目录。【免费下载链接】timesfmTimesFM (Time Series Foundation Model) is a pretrained time-series foundation model developed by Google Research for time-series forecasting.项目地址: https://gitcode.com/GitHub_Trending/ti/timesfm创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考