202402 arxiv
1 intro
1.1 大模型+时间序列预测
- 一般有两种类型的方法
- 使用海量时间序列数据重新训练一个时间序列领域的大模型
- 直接利用现有的大模型,设计prompt,将时间序列数据转换成大模型理解的文本,实现时间序列预测
- 代价小+有成熟的可供使用的大模型
1.2 本文思路
- 之前的方法大多集中在如何将时间序列数据转换成文本上
- 将时间序列的数字直接当成文本处理
- 将时间序列翻译成上涨或下跌这种文本,输入到NLP大模型中,生成预测结果
- 很少有工作研究如何针对时间序列数据的特殊形式,设计独特的prompt
- 这篇论文针对时间序列数据,设计了一套prompt的方法
2 方法
- 为零样本时间序列预测(TSF time-series forecasting)任务量身定制的LSTPrompt提示策略
- 由两部分组成
- TimeDecomp,将TSF任务分解为子任务以进行系统性推理
- TimeBreath,允许在预测窗口内定期休息以调整预测策略
2.1 TimeDecomp
- 利用思维链的思路
- 将询问分解为更简单、顺序的步骤,而不是直接向LLMs提出复杂问题
- ——>将TSF任务分解为短期和长期预测子任务
- 这是由于短/长期预测的不同预测机制所驱动的
- 短期预测强调趋势变化和动态模式
- 长期预测强调统计属性和周期性模式
- TimeDecomp提示LLMs将预测时间步分为短期和长期,并引导LLMs通过每个子任务,指导它们专注于长期/短期这一特定方面
- 这是由于短/长期预测的不同预测机制所驱动的
2.2 TimeBreath
- TSF任务涉及不同时间步骤的推理,过长的预测范围可能会压倒LLMs的推理能力
- ——>引入“深呼吸”,提出了TimeBreath
- 在TSF的顺序推理过程中引导LLMs进行“有节奏的呼吸”
- 在具有H时间步预测范围的TSF任务中,TimeBreath指导LLMs每隔k步进行一次有节奏的呼吸,其中k是一个决定呼吸频率的超参数
- 这里的“呼吸”指的是定期重新预测
深呼吸这个,应该是来自谷歌2023-09的paper (LARGE LANGUAGE MODELS AS OPTIMIZERS)
2.3 Prompt 举例
3 实验
3.0 baseline
zero-shot部分的baseline,其中PTM表示pre-train model,也就是至少经过fine-tune的模型,开销比直接prompt是要高的
3.1 baseline 比较
3.1.1 202306之前的数据
大部分大模型都是在2022之前的数据上训练的,所以这些数据可能大模型看到过
metric:MAE
这个TimePrompt可以把预测结果的趋势“抬起来”,应该是因为“深呼吸”的缘故?
3.1.2 大模型肯定没看到过的数据(202306之后的数据)
- 为了评估LSTPrompt的真正零样本能力,论文使用了几个202306之后的数据
3.2 消融实验
\TD 表示去掉时间序列分解
3.3 超参数敏感性
主要是k,多少步“深呼吸”一次