大语言模型潜力被激发——
无需训练大语言模型就能实现高精度时序预测,超越一切传统时序模型。
来自蒙纳士大学、蚂蚁、IBM研究院提出了一种通用框架,结果成功激活大语言模型跨模态处理时序数据的能力。
时序预测有益于城市、能源、交通、遥感等典型复杂系统的决策制定。
自此,大模型有望彻底改变时序/时空数据挖掘方式。
通用大语言模型重编程框架
简单来说,研究团队提出了一个通用框架,将大语言模型轻松用于一般时间序列预测,而无需做任何训练。
主要提出两大关键技术:时序输入重编程;提示做前缀。
Time-LLM首先使用文本原型(Text Prototypes)对输入的时序数据进行重编程,通过使用自然语言表征来表示时序数据的语义信息,进而对齐两种不同的数据模态,使大语言模型无需任何修改即可理解另一个数据模态背后的信息。
为了进一步增强LLM对输入时序数据和对应任务的理解,作者提出了提示做前缀(Prompt-as-Prefix,PaP)的范式,通过在时序数据表征前添加额外的上下文提示与任务指令,充分激活LLM在时序任务上的处理能力。
主要贡献包括:
- 提出了通过重编程大型语言模型用于时序分析的全新概念,无需对主干语言模型做任何修改。
- 提出一个通用语言模型重编程框架Time-LLM,它包括将输入时序数据重新编程为更自然的文本原型表示,并通过声明性提示(例如领域专家知识和任务说明)来增强输入上下文,以指导LLM进行有效的跨域推理。
- 在主流预测任务中的表现始终超过现有最好的模型性能,尤其在少样本和零样本场景中。此外,Time-LLM在保持出色的模型重编程效率的同时,能够实现更高的性能。大大释放LLM在时间序列和其他顺序数据方面尚未开发的潜力。
具体来看这一框架,首先,输入时序数据先通过RevIN归一化操作,然后被切分成不同patch并映射到隐空间。
时序数据和文本数据在表达方式上存在显著差异,两种属于不同的模态。
时间序列既不能直接编辑,也不能无损地用自然语言描述。因此,我们需要将时序输入特征对齐到自然语言文本域上。
而对齐不同模态的一个常见方式是cross-attention,但是LLM固有的词汇表很大,因此无法有效直接将时序特征对齐到所有词上,而且也并不是所有词都和时间序列有对齐的语义关系。
为了解决这个问题,这项工作对词汇表进行了线形组合来获取文本原型,其中文本原型的数量远小于原始词汇量,组合起来可以用于表示时序数据的变化特征。
而为了充分激活LLM在指定时序任务上的能力,这项工作提出了提示做前缀的范式。
通俗点说,就是把时间序列数据集的一些先验信息,以自然语言的方式,作为前缀prompt,和对齐后的时序特征拼接喂给LLM,是不是能够提升预测效果?
在实践中,作者确定了构建有效提示的三个关键组件:
数据集上下文;(2)任务指令,让LLM适配不同的下游任务;(3)统计描述,例如趋势、时延等,让LLM更好地理解时序数据的特性。
团队在长程预测上经典的8大公开数据集上进行了全面的测试。
结果Time-LLM在基准比较中显著超过此前领域最优效果,比如对比直接使用GPT-2的GPT4TS,Time-LLM有明显提升,表明了该方法的有效性。
此外,在zero-shot场景中也表现了很强的预测能力。
本项目获得蚂蚁集团智能引擎事业部旗下AI创新研发部门NextEvo支持。
感兴趣的小伙伴可戳下方链接了解论文详情~
论文链接https://arxiv.org/abs/2310.01728。