长时间预测模型DLinear、NLinear模型
共 8714字,需浏览 18分钟
·
2023-06-20 11:25
向AI转型的程序员都关注了这个号👇👇👇
今年发布8月份发布的一篇有关长时间序列预测(SOTA)的文章,DLinear、NLinear在常用9大数据集(包括ETTh1、ETTh2、ETTm1、ETTm2、Traffic等)上MSE最低,模型单变量、多变量实验数据:
在计算资源与效率上,DLinear模型时间复杂度为O(L),且模型非常小巧,下面为其他Transformer时间预测模型计算资源与效率:
论文下载:Are Transformers Effective for Time Forecasting,代码以及使用说明GitHub项目地址
https://github.com/cure-lab/ltsf-linear
这是我第一次做论文解读,建议大家去认真读一读原文,这篇文章写作很棒,也很值得学习,作者对于Transformer模型在长时间序列问题上效用做了非常详细的分析。
基于Transformer的长时间序列预测模型不断涌现,并且性能在过去几年力不断提高,但Transformer是否对长时间序列问题有效?
具体来说,Transformer是提取长序列中各元素间语义关联最成功的模型,但是在时间序列模型中,我们需要在一个有序的连续点集合中提取时间关系。虽然采用位置编码和使用tokens嵌入子序列有利于保留一些排序信息,但变化无常的自注意力机制不可避免的导致部分时间信息丢失。所以为了验证我们的想法,我们引入了一组名为LTSF-Linear的简单单层线性模型,实验结果表明LTSF-Linear在所有数据集上都出乎意料的优于现有基于Transformer的复杂LSTF模型,而且往往有很大优势。
此外我们还进行了全面的验证实验,探讨LTSF模型各种设计元素对时间关系提取能力的影响,我们也主张在未来重新检查Transformer对其他时间序列分析任务的有效性。
简介
在当今数据驱动的世界中,时间序列无处不在。考虑到历史数据,时间序列预测(TSF)是一项长期的任务,具有广泛的应用,包括但不限于交通流量估计、能源管理、金融投资。在过去十几年里,(TSF)解决方案经历了从传统的统计方法(如ARIMA)和机器学习技术(如GBRT)到基于深度学习的解决方案,如循环神经网络(RNN)和时间卷积网络(TCN)的发展。
Transformer可以以说是最成功的序列模型架构。在自然语言处理(NLP)、语音识别和计算机视觉等各种方面有着非常显著的优势。最近,基于Transformer的时间序列预测模型也在不断涌现,最值得注意的是专注于解决长期时间序列预测(LTSF)问题的模型,包括LogTrans(NeurIPS2019),Informer(AAAI2021最佳论文)。Autoformer(NeurIPS 2021),Pyraformer(ICLR2022 Oral),Triformer(IJCAI 2022)和FED-former(ICML 2022)。
Transformer主要依赖多头注意力机制工作,它具有提取长序列中各元素(如文本中的单词或图像中的块)之间语义关联显著的能力。然而自注意力机制在某种程度上是无序的(特征之间没有空间位置关系)。虽然使用各种类型的位置编码技术可以保留一些排序信息,但在这些技术之上应用自注意力机制后,仍然不可避免会有部分信息损失。这对于NLP等语义丰富的应用来说,通常不是一个严重的问题,例如,即使我们对句子中的一些词重新排序,句子的语义也基本保留下来。但是,在分析时间序列数据时,数值型数据缺乏语义,而我们主要对连续点间趋势变化进行建模,也就是说顺序本身起着最关键的作用,因此,我们提出以下耐人寻味的问题。Transformer对长时间序列预测真的有效吗?
此外,虽然现有基于Transformer的LTSF模型显示出比传统方法更好的结果,在所有实验中,被比较的(非Transformer)基线都形成了自回归或多步骤迭代预测(IMS),这些方法在LTSF问题上有显著的误差积累效应。因此在这项工作中,我们用多步骤直接预测(DWS)策略与基于Transformer的模型进行对比,以验证其实际性能。
并非所有的时间序列都是可预测的,更不用说长期预测了(例如对于混乱的系统而言)。我们假设,长期预测只对那些具有相对明确趋势和周期性的时间序列可行。由于线性模型已经可以提取这样的信息,我们引入一组名为LTSF-Liner的简单线性模型作为新的比较基线。LTSF-Liner用单层线性模型对历史时间序列进行回归,以直接预测未来的时间序列。我们在9个广泛使用的基准数据集上进行了广泛的实验,这些数据集包含了各种现实生活中的应用交通、能源、经济、天气和疾病。令人惊讶的是,我们的结果显示,LTSF-Liner线性模型在所有情况下都优于现有基于Transformer的复杂模型,而且往往有很大的优势(20%~50%)。此外,我们发现,与现有Transformer模型中的主旨相比,大部分Transformer模型都未能提取出长序列时间上的关系,也就是说,预测误差并没有随着回视窗口大小的增加而减少(有时甚至增加)。最后我们对现有基于Transformer模型进行了各种分析研究,以研究其中各种设计元素的影响,总而言之,这项工作包括:
这是一项挑战Transformer模型对长期时间序列预测任务的有效性工作
根据LTSF-Liner在9个基准数据集上的表现,LTSF-Liner可以成为LSTF问题的一个新基线
对现有基于Transformer模型各个方面进行全面实证研究,包括对长输入的建模能力,对时间序列顺序的敏感性,位置编码和子序列嵌入的影响,模型复杂度比较
综上所述,我们认为,至少对于LTSF-Liner来说,基于Transformer的模型对长时间序列预测任务的有效性被严重夸大了。同时,虽然LTSF-Liner取得了较好的准确率,但它只是作为未来研究TSF问题的一个简单基线,我们也主张在未来重新审视基于Transformer的模型在其他时间序列分析任务中的有效性。
基于Transformer的LSTF解决方案
基于Transformer的模型在自然语言处理和计算机视觉等许多长期人工智能任务中取得了较好的表现,这都要归功于多头注意力机制的有效性。同时也引发了人们对基于Transformer的时间序列建模的大量研究。特别是大量的研究工作致力于LTSF任务。考虑到Transformer模型擅长捕捉长距离依赖关系的能力,他们中的大多数都集中在探索较少数据的长期预测问题上(T > > 1 )
时间序列分解
对于数据的预处理,在LSF中常见的是zero-mean方法。此外,Autoformer首次在每个神经块后面应用季节性趋势分解,这是时间序列分析中的一种标准方法,可以使原始数据更加可预测。具体来说,该模型使用移动平均核(moving average kernel)来提取时间序列的趋势周期成分。原始序列与趋势成分间差值被视为季节性成分。在Autoformer模型分解方案的基础上,FEDformer进一步提出了专家混合策略,以融合不同移动平均核所提取的趋势成分。
输入embedding策略
Transformer架构中自我注意力层无法保留时间序列的位置信息,然而局部位置信息(即时间序列的顺序)是很重要的。此外,全局时间信息,如分层时间戳(周、月、年)和不可知的时间戳(假期和事件),也是有信息量的。为了增强时间序列输入的时间背景,在基于SOTATransformer的方法中,一个实用的设计是将7种方法嵌入模型,如固定位置编码、通道投影嵌入和可学习时间模块。此外,还引入了带有时间卷积层的嵌入层或可学习时间戳。
解码器(Decoder)
vanilla Tranformer解码器以自回归方式输出序列,导致了缓慢的输入速度和错误累积效应,特别是对于长时间序列预测。Informer为DMS预测设计了生成式解码器。其他Transformer变体也采用类似的DMS策略。例如,Pyraformer使用全连接层串联空间时间轴(fully-connected layer concatenating Spatio-temporal axes)作为解码器。Autoformer分别提取趋势、周期特征并与季节成分自动相关机制叠加得到最终的预测结果。FEDformer也使用了相似的频率衰减块分解得到最终结果。
Transformer模型效果依赖成对元素之间的语义关系,而自注意力机制本身是无序的(permutation-invariant),它对时间关系的建模能力主要取决于与输入标记相关的位置编码。考虑到时间序列中的原始数值数据(如股票价格或电力价值),它们之间几乎没有任何点状的语义关联。在时间序列建模中,我们主要对一组连续点间时间关系感兴趣,这些元素的顺序起着关键性作用,而并非成对关系。虽然采用位置编码和嵌入(embedding)模块有利于保留一些排序信息,但自我注意力机制的性质不可避免的导致时间信息丢失。根据上述观察,我们对重新审视基于Tranformer的LSTF解决方案有了兴趣。
一个简单的基线模型
现有基于Transformer的LTSF解决方案(T >> 1)实验中所有被比较的非Transformer模型基线都是IMS预测技术,众所周知,这种策略会受到显著的错误累积效应影响。我们假设,这些作品的性能改进主要是由于其使用了DMS策略。
与Transformer比较
在下表中,我们按照上述实验设置,在9个基准上广泛评估了所有提到的Transformer模型。令人惊讶的是,LTSF-Linear的性能在9个基准测试中得到了改善。在大多数情况下,LTSF-Linear比SOTA FEDformer在多变量预测上有20%~50%的改进,其中LTSF-Linear甚至不对变量之间的关联性进行建模。对于不同的时间序列基准,NLinear和DLinear在处理分布偏移和趋势季节性特征方面显示出优越性。我们还在附录中提供了ETT数据集的单变量预测结果,其中LTSF-Linear仍然以很大优势持续优于基于Transformer的LTSF解决方案。
FEDformer在ETTh1数据集上实现了有竞争力的预测精度。这是因为FEDformer采用了经典的时间序列分析技术,如频率处理,这带来了时间序列的归纳偏差,有利于时间特征的提取能力。综上所述,这些研究结果显示,现有基于复杂Transformer模型在现有的9个基准上似乎并不有效,而LTSF-Linear可以成为一个强大的基线。另一个有趣的现象是,尽管Repeat模型在预测长期季节性数据(如电力和交通)时显示出较差的结果,但他在Exchange-Rate数据集上出人意料地超过了所有基于Transformer的方法(超出大约45%)。这主要是由于基于Transformer的方法对趋势错误预测造成的,它可能会对训练数据中突然变化的噪音进行过度拟合,从而导致显著的性能下降。相反Repeat没有偏向性如下图(b)
如上图所示,我们绘制了在三个选定时间序列数据集上使用Transformer解决方案和LTSF-Linear的预测结果,这些数据具有不同的时间间隔。当输入为96个时间步长,输出为336个时间步长时,Transformer不能捕捉到电力和ETT2数据的偏向性。此外,它们也很难预测诸如汇率等非线性数据的趋势。这些现象进一步表明现有基于Transformer的解决方案对LTSF任务是不够的。
更多关于LSTF-Transformer的分析
现有的LSTF-Transformer能否从较长输入序列中很好的提取时间关系?回视窗口(look-back window)大小对预测的准确性影响很大,因为它决定了我们能从历史数据中学习多少。一般来说,一个具有强大时间关系提取能力的LSTF模型应该能够在较大的回视窗口尺寸下取得更好的结果。
为研究输入回视窗口大小对模型的影响,我们分别使用{24,48,72,96,120,144,168,192,336,504,672,720}作为回视窗口大小预测720个时间步长,下图显示了在两个数据集上MSE。与之前研究类似,当回视窗口大小增加时,现有基于Transformer的模型性能会下降或保持稳定,相比之下,所有的LTSF-Linear性能都随着回视窗口大小的增加而明显提升。因此,如果给定一个较长的序列,现有的解决方案倾向于过度拟合时间噪声,而不是提取时间信息,而输入时间步长96正好适合大多数Transformer模型。
虽然回视窗口的时间动态性对短期时间序列预测的准确性有显著影响,但我们假设长期预测取决于模型是否能够很好的捕捉趋势和周期性,也就是说,预测范围越远,回视窗口本身的影响越小。
为了验证上述假设,在下表中,我们比较了同一数据集两个不同回视窗口对未来720个时间步长的准确性。从实验结果来看,SOTATransformer性能略有下降,表明这些模型只能从相邻时间序列中捕捉到类似的时间信息。由于捕捉数据集的内在特征一般不需要大量的参数,即1个参数可以代表周期性。使用过多参数甚至会导致过拟合,这也部分解释了为什么LSTF-Linear比基于Transformer方法表现更好。
自注意力机制对LTSF有效吗?我们验证了现有Transformer中这些复杂的设计是否是有效的。前者(如Informer)是必不可少的。在下表中,我们逐步将Informer转换为Linear。首先,我们将每个自注意力层与一个线性层组合,称为Att.Linear,因为自注意层可以被视为一个权重动态变化的全连接层。此外,我们抛弃了Informer中其他辅助设计(例如FFN),留下嵌入层和线性层,命名为Embed-Linear。最后,我们将该模型简化为一个线性层。令人惊讶的是,Informer的性能随着结构逐渐简化而增长,这表明至少对于现有的LTSF基准来说,自注意力机制和其他复杂模块是不必要的。
现有的LSTF-Tansformer模型能否很好的保存时间秩序?自注意力机制在本质上是permutation-invariant的,顺序因素影响不大。然而,在时间序列预测中,序列顺序往往起着关键作用。我们认为,即使有了位置和时间信息的嵌入,现有的基于Transformer的方法仍然会丢失时间信息。在下表中,我们在嵌入策略之前对原始输入进行了洗牌。两种洗牌策略,Shuf:随机清洗整个输入序列。Half-Ex:将输入序列的前一半与后一半交换。有趣的是,在汇率数据集上,与原始输入相比,即使输入序列被随机洗牌,所有基于Transformer的方法性格都没有波动。相反,LTSF-Linear性能却很差。这表明,具有不同位置和时间嵌入的LTSF-Transformer保留了相当有限的时间关系,在嘈杂的金融数据上容易过拟合,而LTSF-Linear可以自然的建立秩序关系,使用较少参数避免过拟合。
对于ETTh1数据集,FEDformer和Autoformer在其模型中引入了时间序列的inductive bias,使得它们可以在具有明显时间趋势(如周期性)的数据集中提取某些时间信息。因此,在Shuf模式下,模型失去了秩序信息,两模型平均降幅为73.28%和56.91%。此外,Informer在Shuf和Half-Ex模式下收到的影响较小,因为它没有时间上的inductive bias。总的来说,在所有情况下,LTSF-Linear平均降幅都大于基于Transformer的方法,这表明Transformer不能很好的保存时间顺序。
不同的嵌入策略效果如何?我们研究了基于Transformer的方法中使用的位置和时间戳嵌入的好处。在下表中,如果没有位置嵌入(wo/Pos.),Informer的预测错误会大大增加。如果没有时间戳嵌入(wo/Temp),随着预测长度的增加,Informer性能将逐渐受损。由于Informer对每个标记使用一个时间步长,因此有必要在标记中引入时间信息。
FEDformer和Autoformer不是在每个标记中使用单一时间步长,而是输入一连串的时间戳来嵌入时间信息。因此,它们可以在没有固定的位置嵌入情况下达到相当的甚至更好的性能。然而,如果没有时间戳嵌入,Autoformer的性能会迅速下降,因为它失去了全局时间信息。相反,由于FEDformer提出的频率增强模块引入了时间上的inductive bias,它在去除任何位置/时间戳后受到的影响较小。
训练数据的大小是现有LTSF-Transformer的限制因素吗?有些人可能会认为,基于Transformer的解决方案性能不佳是由于基准数据集规模太小。与计算机视觉或自然语言处理任务不同,LTSF是在多姿多彩的时间序列上进行的,因此很难扩大训练数据的规模。事实上,训练数据的大小将对模型的性能产生重大影响。因此,我们对交通数据集进行了实验,比较了在完整数据集(17544 * 0.7小时)、缩短后数据集(8760小时,即1年)上模型的精度。出乎意料的是,如下表,在大多数情况下,减少训练集误差也会随之减少。这可能是因为整年的数据比长但不完整的数据规模更能保持清晰的时间特征。虽然我们不能得出结论:我们应该使用更少的数据进行训练,但这表明训练数据的规模并不是影响Autoformer和FEDformer性能的限制性原因。
结论和展望
结论
这项工作对新兴的基于Transformer的长时间序列预测问题解决方案的有效性提出质疑。我们使用一个简单的线性模型LTSF-Linear作为DWS预测基线来验证我们的想法。请注意我们的贡献不在于提出了一个线性模型,而在于提出了一个重要的问题,展示了令人惊讶的对比,并通过各种角度证明了为什么LTSF-Transformer并不像这些作品中所说那样有效。我们真诚的希望我们的研究能对这一领域的未来的工作有所帮助。
展望
LSTF-Linear模型效果有限,它只是为未来的研究提供了一个简单而有竞争力的基线,具有很强的可解释性。例如,单层线性网络很难捕捉到由变化点引起的时间动态变化。因此我们认为在新的模型设计、数据处理和基准方面有很大的潜力来解决困难的LSTF问题。
机器学习算法AI大数据技术
搜索公众号添加: datanlp
长按图片,识别二维码
阅读过本文的人还看了以下文章:
基于40万表格数据集TableBank,用MaskRCNN做表格检测
《深度学习入门:基于Python的理论与实现》高清中文PDF+源码
2019最新《PyTorch自然语言处理》英、中文版PDF+源码
《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码
PyTorch深度学习快速实战入门《pytorch-handbook》
【下载】豆瓣评分8.1,《机器学习实战:基于Scikit-Learn和TensorFlow》
李沐大神开源《动手学深度学习》,加州伯克利深度学习(2019春)教材
【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类
如何利用全新的决策树集成级联结构gcForest做特征工程并打分?
Machine Learning Yearning 中文翻译稿
斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)
中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程
不断更新资源
深度学习、机器学习、数据分析、python
搜索公众号添加: datayx