时间序列预测这件事,过去 50 年的进展可以用一句话概括:从 ARIMA 到 XGBoost,从 XGBoost 到 LSTM,从 LSTM 到 Transformer。
每一步都更复杂,但每一步都没有解决一个根本问题:你仍然需要为每个新场景从头训练模型。电商销量预测、电力负载预测、服务器流量预测——每个场景都需要标注数据、特征工程、模型调参。一个新业务上线,数据科学家要花几周才能给出一个还过得去的预测。
TimesFM 做的事情是:把 NLP 里”预训练 + 零样本泛化”的范式搬到时间序列领域。你不需要标注数据,不需要特征工程,给它一段历史数据,它直接预测未来。
Decoder-only:为什么时间序列不需要 Encoder
TimesFM 最反直觉的设计是它用了 decoder-only 架构。
在 NLP 里,decoder-only(GPT 系列)的成功是因为语言生成本质上是”给定前文预测下一个 token”。但时间序列预测不也是”给定历史值预测下一个值”吗?
是的,但有一个关键区别:语言是离散的(token 是离散的),时间序列是连续的。你不能直接把连续值当 token 输入。
TimesFM 的解决方案是 分块量化:把连续的时间序列切成长度为 32 的块,每块量化成一个 token。这样一段长度 1024 的时间序列就变成了 32 个 token,可以直接喂进 decoder-only 模型。
这个设计让 TimesFM 可以直接复用 LLM 的训练范式:大规模无监督预训练 + 自回归生成。不需要标注数据,只需要大量的时间序列数据。
200M 参数的”小模型”哲学
TimesFM 2.5 的参数量是 200M。作为对比,GPT-4 的参数量是 1.7 万亿。
为什么 200M 就够了?因为时间序列的信息密度远低于自然语言。一段 1024 个 token 的文本可能包含一个完整的故事,有情节、有情感、有逻辑关系。一段 1024 个点的时间序列可能只是一个服务器的 CPU 使用率曲线,信息量有限。
TimesFM 团队发现,200M 参数已经足以拟合时间序列的统计规律。更大的模型没有带来显著的性能提升,反而增加了推理成本。
这个设计决策让 TimesFM 可以在普通 GPU 上运行,甚至支持 Apple Silicon。你不需要 A100 集群来做时间序列预测——一个 200M 的模型在笔记本上就能跑。
16K 上下文:从短期预测到长期趋势
TimesFM 2.5 的另一个升级是上下文长度从 2048 增加到 16K。
这不只是数字游戏。2048 个点(约 32 个块)的上下文只够看几天的分钟级数据,做短期预测。16K 个点可以看几个月的数据,捕捉周期性模式——周周期、月周期、甚至季节性周期。
对于实际业务场景,这个区别至关重要。电商需要预测下个月的销量(月周期),电力公司需要预测夏季用电高峰(季节周期),这些都需要更长的上下文窗口。
零样本预测:训练在 A 场景,推理在 B 场景
TimesFM 最核心的承诺是零样本泛化:在大量公开时间序列数据上预训练后,直接对新场景做预测,不需要微调。
论文里的实验结果:TimesFM 的零样本性能接近全监督模型。这意味着什么?意味着你可以拿一个预训练好的 TimesFM,直接用在你的业务场景上,不需要标注数据,不需要训练新模型。
Google 已经把 TimesFM 集成到了三个产品中: – BigQuery ML:企业级 SQL 查询,直接在数据仓库里做预测 – Google Sheets:电子表格里做时间序列预测 – Vertex Model Garden:Docker 化端点,支持 agentic 调用
从研究到产品的路径很短,说明 Google 内部对 TimesFM 的实用性有信心。
协变量支持:不只是看历史值
TimesFM 2.5 加回了协变量支持(通过 XReg)。这意味着除了目标变量本身,你还可以输入外部特征:
– 预测销量时,加入促销日历、天气数据 – 预测电力负载时,加入温度、湿度 – 预测服务器流量时,加入部署事件、营销活动
协变量支持让 TimesFM 从”纯零样本预测”进化到”零样本 + 外部信息增强”。你仍然不需要标注数据来训练模型,但可以在推理时提供额外的上下文信息。
基础模型的范式迁移
TimesFM 的意义不只是”又一个时间序列模型”。它验证了一个更大的假设:基础模型范式可以从 NLP 迁移到其他领域。
NLP 的基础模型范式:大规模无监督预训练 + 少样本/零样本泛化。这个范式在 NLP 里已经被 GPT/LLaMA 等模型验证了。
TimesFM 把同样的范式应用到时间序列:大规模时间序列数据预训练 + 零样本预测。架构是 decoder-only,训练目标是自回归,输入是量化后的块 token。
这个迁移的成功暗示了一件事:基础模型范式的核心不是”语言”,而是”序列”。任何可以被切分成 token 序列的数据,都可能用这个范式来建模。
从 NLP 到时间序列,下一个可能是蛋白质序列、音乐旋律、代码执行轨迹。TimesFM 不是终点,而是范式迁移的一个里程碑。
—
相关链接: – GitHub: https://github.com/google-research/timesfm – 论文: https://arxiv.org/abs/2310.10688 – HuggingFace: https://huggingface.co/collections/google/timesfm-release – Google Research Blog: https://research.google/blog/
