像 GPT-4 和 Llama 2 这样的大型语言模型 (LLM) 的能力近年来呈爆炸式增长。我们知道它们可以写诗、调试代码和总结历史。但是,它们能否看懂代表股价或病人心率的一串数字,并“理解”正在发生的事情?
时间序列分析——即对随时间采集的数据点的研究——对于金融、医疗、气候科学和能源领域至关重要。传统上,这一领域属于统计模型 (如 ARIMA) 或专门的深度学习架构。然而,摩根大通 AI 研究院的研究人员最近提出了一个引人注目的问题: 通用 LLM 能否在没有特定微调的情况下分析时间序列数据?
在他们的论文《Evaluating Large Language Models on Time Series Feature Understanding》 (评估大型语言模型对时间序列特征的理解) 中,作者提出了一个严格的框架来测试这一点。这篇文章将深入探讨他们的方法、新的时间序列特征分类体系,以及现代 AI 如何处理数字序列的惊人 (有时也令人失望) 结果。
核心问题: 文本与时序数据
LLM 是在海量文本语料库上进行训练的。虽然它们会遇到数字,但它们处理数字的方式是将其实视为 token (文本片段) ,而不是数学实体。当数据科学家观察时间序列时,他们寻找的是特定的特征:
- 它是上升还是下降?( 趋势 )
- 它是否每周重复?( 季节性 )
- 周二发生了什么奇怪的事情吗?( 异常 )
- 数据是否变得更加不稳定?( 波动性 )
为了让 LLM 在自动化报告或分析中发挥作用,它需要仅从数据的文本表示中识别这些特征。研究人员旨在确定 LLM 天生能理解哪些特征,以及在哪些方面会失败。
第一步: 时间序列分类体系
为了评估“理解”,首先必须对其进行定义。作者开发了一个全面的时间序列特征分类体系 (Taxonomy) 。 这不仅仅是一个列表;它是一个从简单视觉模式到复杂统计属性的复杂性层级。

如上方的 表 1 所示,该分类体系分为单变量 (单变量) 和多变量 (多变量) 类别:
- 趋势与季节性 (Trend & Seasonality) : 最基本的特征。数据是否在朝着某个方向发展?是否存在周期?
- 异常 (Anomalies) : 峰值、水平偏移 (平均值突然改变的地方) 或缺失数据。
- 波动性 (Volatility) : 这更难。它指的是方差。“波动性聚类”在金融领域很常见,市场会平静一段时间,然后混乱,然后再平静。
- 结构性断点与平稳性 (Structural Breaks & Stationarity) : 这些是高级统计概念。如果生成数据的底层机制发生变化 (例如经济中的政策变化) ,可能会发生结构性断点。平稳性检查统计属性 (均值、方差) 是否随时间保持不变。
- 多变量特征 (Multivariate Features) : 两条线如何关联?它们是否一起移动 (相关性) ?是否一条线引导另一条线 (超前-滞后) ?
第二步: 生成基准数据
评估时间序列模型的一个挑战是,现实世界的数据是混乱的,往往缺乏“基本事实 (ground truth) ”。如果你看一张股票走势图,专家们可能会对趋势究竟何时开始或结束产生分歧。
为了解决这个问题,作者创建了一个合成数据集 。 通过数学方法生成数据,他们确切地知道存在哪些特征。如果他们生成一个在索引 50 处有峰值的正弦波,他们就知道基本事实是“季节性 + 异常”。

图 1 展示了这种合成数据的多样性。你可以看到带有噪声的简单趋势 (左上) 、行为在中间发生转变的复杂机制转换 (右上) ,以及随机游走的非平稳数据 (左下) 。
研究人员不仅生成了数字;他们还为这些数据生成了文本描述 。 这使他们能够测试 LLM 是否能将图表与其描述相匹配。
为了更仔细地观察 LLM 测试的具体形状,请看下面的单变量示例。注意“阶梯状峰值 (Step spike) ” (永久性跳跃) 与“突然峰值 (Sudden spike) ” (短暂的波动) 的区别。

实验: 测试模型
研究人员测试了五个著名的 LLM: GPT-4, GPT-3.5, Llama2-13B, Vicuna-13B, 和 Phi-3 。
他们在四个不同的任务上评估了这些模型:
- 特征检测: 二元“是/否”问题。 (例如,“这个时间序列中有趋势吗?”)
- 特征分类: 多项选择题。 (例如,“趋势是正向、负向还是二次方的?”)
- 信息检索: 查找特定数据点。 (例如,“2024-01-01 的值是多少?”)
- 算术推理: 计算数值。 (例如,“序列中的最小值是多少?”)
他们使用了不同的提示策略,包括零样本 (Zero-Shot) (直接提问) 和思维链 (Chain-of-Thought, CoT) (要求模型“一步一步地思考”) 。
关键结果: 谁是时间序列冠军?
结果突显了专有“前沿”模型 (GPT-4) 与较小的开源模型之间的巨大鸿沟。
1. 总体性能概览
下面的雷达图总结了性能。红线 (GPT-4) 始终包围着其他模型,表明其在几乎所有指标上都具有卓越的性能。

从雷达图中得出的关键结论:
- 特征检测 (左图) : 几乎所有模型都能很好地表示“趋势 (Trend) ” (趋势轴上的得分很高) 。然而,看看“平稳性 (Stationarity) ”和“结构性断点 (Struct.Break) ”。得分向中心塌陷。这表明虽然 LLM 能看懂“涨”或“跌”,但它们难以应对复杂的统计概念。
- 算术 (右图) : 差异巨大。GPT-4 和 GPT-3.5 在查找最小/最大值和日期方面近乎完美。较小的模型 (Vicuna, Llama2) 在这些检索任务中非常吃力。
2. “理解”的局限性
虽然 GPT-4 的雷达图看起来不错,但详细的细分揭示了局限性。
- 趋势: 使用思维链提示,GPT-4 在趋势检测中获得了 0.89 的 F1 分数。
- 季节性: 它的得分高达 0.98 。
- 困难部分: 对于“平稳性” (均值是否恒定?) ,GPT-4 的零样本得分为 0.33——基本上就是随机猜测或拒绝回答。
有趣的是,对于像平稳性这样的复杂统计问题,GPT-4 经常产生幻觉或简单地声明它无法执行所需的统计检验,这在技术上是正确的 (它是语言模型,不是统计软件包) 。
3. 算术与检索
人们可能认为,在数字列表中查找最大值对计算机来说很容易。但对于基于概率预测下一个 token 的 LLM 来说,数字是很棘手的。

表 2 显示,GPT-4 在检索数值和查找最小值方面几乎完美 (1.00 准确率) 。然而,像 Llama2-13B 这样的较小模型在检索特定日期的数值时,准确率下降到 0.54 。 这表明精确的数值推理是一种“涌现属性”——它只在能力最强的模型中可靠地出现。
深入探究: 哪些因素会让模型崩溃?
研究人员不仅关注简单的准确率得分,还调查了模型失败的原因。他们确定了三个关键因素: 格式、长度和位置偏差。
因素 1: 数据格式
你如何将时间序列输入 ChatGPT?是使用 CSV 格式吗?还是在数字之间加空格?
研究人员测试了大约 9 种不同的文本格式。结果有些反直觉。

如 表 4 所示:
- 纯文本 (Plain text) (例如:
Date: 2020-01-01, Value: 100) 在检索任务中通常优于 CSV 或 JSON 等结构化格式。 - “空格 (Spaces) “ (在数字之间插入空格,以前的文献提议这样做以帮助 token 化) 实际上破坏了性能 , 对于像 Llama2 和 Vicuna 这样的模型 (准确率下降到约 0.05) 。
- 符号化 (Symbolic) : 添加箭头 (\(\uparrow\), \(\downarrow\)) 来指示方向,这对趋势分类有显著帮助,起到了给模型“提示”的作用。
因素 2: 时间序列长度
LLM 有上下文窗口 (处理文本数量的限制) 。但即使在这个窗口内,随着复杂性的增加,性能也会下降。

图 3 显示,随着数据点数量的增加 (x 轴) ,准确率 (y 轴) 呈下降趋势。
- GPT-3.5 (蓝色) 和 Phi3 (橙色) 相对稳健。它们的线条保持在较高位置。
- Llama2 (绿色) 和 Vicuna (红色) 严重崩溃。一旦时间序列超过大约 60 个数据点,Llama2 检索信息的能力就会直线下降。这表明较小的模型在长数字序列中会失去“焦点”。
因素 3: 位置偏差
答案在哪里重要吗?如果最大值位于列表的最末尾,模型是否更有可能找到它?
研究发现存在位置偏差 (Position Bias) (或近因偏差) 。特别是在较小的模型中,性能会根据包含目标信息的“象限”而变化。模型通常更善于识别出现在上下文窗口后期 (最近生成/读取的文本) 的特征或数值。值得注意的是,GPT-4 基本上不受此影响,在整个序列中保持了一致的注意力。
结论与未来启示
这篇研究论文为“AI 万能”的炒作列车提供了一次现实检验。
优点: 最先进的 LLM (GPT-4) 是基础任务的优秀零样本分析师。它们可以可靠地检测趋势、季节性,并在中短长度的时间序列上执行算术检索。它们可以生成关于这些图表的准确文本描述。
缺点: 它们在“定量”方面很吃力。当前的 LLM 对平稳性、波动性聚类和结构性断点等概念 (对金融风险建模至关重要) 理解得很差。它们只是缺乏通过文本准确诊断这些特征所需的统计直觉 (或计算内部统计数据的能力) 。
给学生的启示: 如果你正在构建一个汇总数据的应用程序:
- 使用可用的最大模型。 数值推理能力随模型规模减小而急剧下降。
- 预处理数据。 不要只扔原始数字。格式很重要。使用“纯文本”格式或用符号提示 (箭头、差值) 丰富数据会有显著帮助。
- 不要相信 AI 的统计数据。 使用 Python/R 进行繁重的统计计算 (计算波动率、检查平稳性) ,并使用 LLM 来解释这些结果,而不是要求 LLM 从原始数据中计算它们。
未来可能在于能直接“看到”绘图图像的多模态模型 , 或者是允许 LLM 访问代码解释器 (如 Python 沙箱) 以便在生成观点之前进行数学运算的系统。
](https://deep-paper.org/en/paper/2404.16563/images/cover.png)