点关注,不迷路,用心整理每一篇算法干货~
今天给大家介绍一篇清华大学的时间序列预测最新工作,提出了统一的Transformer时序预测模型,能同时处理单变量和多变量时序预测,并将时序预测的上下文长度首次扩充到千级别。
论文标题:TIMER-XL: LONG-CONTEXT TRANSFORMERS FOR UNIFIED TIME SERIES FORECASTING
下载地址:https://arxiv.org/pdf/2410.04803v1
构建类似NLP领域的统一大模型是时序预测领域近期研究的焦点。虽然前序已经涌现很多工作,但是这些建模方法只能处理最多几百长度的上下文序列,比如根据历史200个数据点预测未来时刻的序列值。而NLP中的建模可以利用千级别甚至万级别的上下文信息。历史序列长度的不足,导致时序预测模型无法根据完整的、长周期的历史信息进行预测,影响了预测效果。
为了解决上述问题,本文构建了基于Decoder-only Transformer模型的统一时间序列预测模型Timer-XL,可以同时处理单变量和多变量的时序预测,并同时建模变量间关系,对比其他SOTA模型实现了效果提升。
类似NLP中的语言模型,Timer-XL使用了Next Token Prediction任务进行模型训练。在语言模型中,Next Token Prediction任务的目标是根据前面的token,预测下一个token是什么。在时间序列中,Time-XL将token定义为一个窗口内的时间序列,也就是一个patch作为一个token。优化的目标就变成了预测下一个patch的时间序列,以MSE为目标进行拟合。
上述方式只适用于单变量时间序列。为了扩展到多变量时间序列,Timer-XL采用了多元Next Token Prediction的建模方式。整体可以理解为,每个变量仍然独立的预测下一个token,但是会根据所有变量的历史序列来预测各个变量的下一个token,公式可以表示为如下形式:
通过这种多变量Next Token Prediction的扩展,模型可以同时建模序列关系和变量间关系,实现了从1D建模到2D建模的扩展。
Timer-XL整体基于Transformer Decoder的模型结构,位置编码采用目前主流语言模型使用较多的RoPE。
其中一个核心问题是,引入多元Next Token Prediction任务后,如何构建attention。文中提出了TimeAttention模块,其基本思路也很简单,在预测每一个变量的值时,通过attention mask的方式让其只和各个变量该时刻之前的值进行attention。比如下图中预测A序列的第3个token的值,会和A、B的第一个时刻、第二个时刻的tokne计算attention。
此外,这种attention mask的方式也可以灵活引入变量间关系的建模。比如可以根据两个变量之间是否相互依赖,修改整个attention mask的构造方式,融合时间(序列)和空间(变量间)的关系。
在实验部分,文中对比了和各类时序预测模型,包括统计模型、深度模型等SOTA方法的效果,本文的整体MSE都取得了较明显的下降。
实验部分也重点论证了Timer-XL的通用性,一个模型可以用于各类数据集,包括在训练数据内的数据集,以及非训练数据的数据集,有较强的泛化性。
投稿&加交流群请加微信,备注机构+方向拉群~