star开源代码! 5k 清华大学最新深度时序模型综述
当天给大家引见一篇清华大学对于深度时序模型的最新综述性上班。这篇文章的着眼点是深度期间序列模型的模型结构方面,提供了各类期间序列疑问的深度学习模型结构开展环节和成果对比,并提供了一套复现各类深度时序模型的开源代码,目前git上曾经5k+个star。
上方全体引见一下本文的外围内容,包含义务类型、基础模块、模型结构、Benchmark、试验评价等5个局部。其中,开源代码的代码解析,曾经逐渐更新到了常识星球中,感兴味的同窗欢迎添加星球,在【代码解析专栏】失掉相应资料。
论文题目:Deep Time Series Models: A Comprehensive Survey and Benchmark
开源代码:
1.义务类型
2.基础模块
在引见模型结构之前,本文重点引见了深度期间序列相配套的基础模块。基础模块局部重要是如何处置原始的期间序列数据,让其更好适配深度时序模型。详细可以分为以下几个模块。
颠簸性处置:包含ReVIN等的期间序列预处置方法,让输入序列具有颠簸的均值、方差等统计量;
分解:包含趋向项、节令项分解,或许相似NBeats中basis裁减、多变量预测中的变量维度/期间维度的矩阵分解等;
傅里叶变换:包含各类的傅里叶变换,将期间序列数据从时域转换成频域,在频域建模这类方法。
3.模型结构
下图展现了深度期间序列模型的各种结构,以及各个模型的提出期间,涵盖了深度时序模型的开展历程。这些模型在常识星球中基本都有详细解析,此外目前在常识星球继续更新的期间序列预测专题,也依照相似的思绪详细整顿了各个模型结构的原理,感兴味的同窗可以添加检查相应专栏。
第一类模型是基于MLP的建模方法。这类模型很便捷,以历史序列作为输入,经过一个全衔接网络,映射到输入维度;
第二类模型是基于RNN的建模方法,外围是基于RNN的自回归建模才干,对历史法令启动捕捉,并自回归的一一解码出未来每个期间步的预测结果;
第三类模型是基于CNN的建模方法,包含基础的1D建模,以及在TimesNet中提出的2D建模方法;
第四类模型是基于GNN的建模方法,重要用在多变量期间序列建模中,将各个变量之间的相关,经过图学习的模式描写进去;
第五类模型是基于Transformer的建模方法,也是目前最常常出现的模型。文中又依据attention的建模维度,进一步分为point-wise、patch-wise、series-wise类型。Point-wise就是最基础的Transformer,每个期间步之间计算attention score;patch-wise就是PatchTST中的方法,将相邻几个期间步的序列聚分解patch,attention作用到patch之间;series-wise指的是iTransformer这种方法,将一个序列作为全体,attention重要用在变量间相关的计算。
4.Benchmark
文中搭建了一套完整的深度期间序列模型Benchmark,全体结构如下图,包含数据源、模型Layer、全体模型、适配不同义务的head、模型评价等模块。
5.试验评价
基于上述的深度时序模型Benchmark,本文启动了一系列试验,评价各个模型在各类义务上的成果。下图是辨别CNN、RNN、MLP、Transformer等模型结构在不同义务上的成果。全体来看,Transformer模型在各个义务上都取得了更好的成果,而CNN模型在分类疑问、填充疑问、意外检测疑问上,可以取得比Transformer更优的成果。
在详细的模型成果上,下图罗列了不同SOTA模型在各个义务上的成果排名,其中iTransformer、Transformer、PatchTST在时序预测上取得了最优成果了;TimesNet则在残余的填充义务、分类义务、意外检测义务中取得了最优成果。