MODERNTCN:一种面向通用时间序列分析的现代纯卷积结构
本文介绍1篇ICLR 2024的论文,这篇论文研究了“如何更高效地将卷积应用于时间序列分析"这一开放性问题,提出了Modern TCN模型,致力于使卷积结构重归时间序列分析的主流舞台。
论文地址:ModernTCN: A Modern Pure Convolution Structure for General Time Series Analysis | OpenReview
论文源码:https://github.com/luodhhh/ModernTCN
1.论文概述
论文通过对传统时序卷积网络(TCN)进行现代化改造,通过时序任务导向的架构调整使其更适配时间序列分析需求。最终提出了ModernTCN这一纯卷积架构。实验表明,ModernTCN在五大主流时序分析任务中均达到与当前最优方法一致的性能,同时保持了卷积模型的高效性,相比基于Transformer和MLP的最优模型实现了效率与性能的更优平衡。进一步研究发现,相较于传统卷积模型,ModernTCN具有显著扩大的有效感受野(ERF),从而能更充分地释放卷积在时序分析中的潜力。
图1:ModernTCN与以往基于卷积方法的有效感受野(ERF)对比。光区分布越广表明ERF越大。我们的ModernTCN能获得比传统卷积方法更大的ERF。同时,增大卷积核尺寸比堆叠更多小核能更有效地扩大ERF。
2.模型介绍
1.现代化的1D卷积块
作者首先重新设计了如下图(b)中所示的1维卷积模块。DWConv(深度可分离卷积)负责在每个特征维度上学习token之间的时间信息,其作用与Transformer中的自注意力模块相同。ConvFFN类似于Transformer中的前馈神经网络(FFN)模块,由两个逐点卷积(PWConv)组成,并采用倒置瓶颈结构,即ConvFFN模块的隐藏通道数是输入通道数的r倍。该模块用于独立地为每个token学习新的特征表示。DWConv与ConvFFN各自沿时间维度和特征维度进行信息混合,这与传统卷积同时在两个维度上联合混合信息的机制存在本质差异。这种解耦设计能降低目标任务的学习难度并减少计算复杂度。但是该1D卷积在时间序列任务中几乎没有带来性能替身。因为上述设计没有考虑到时间序列的变量维度。
图2:ModernTCN模块设计。M、N、D分别表示变量维度、时间维度和特征维度的尺寸。DWConv和 PWConv是深度可分离卷积与逐点卷积的缩写。Groups指分组卷积中的组数。本设计采用批量归一化(BN)和高斯误差线性单元(GeLU)
2.改进
(1)保持变量维度
在计算机视觉(CV)中,通常会在主干网络(backbone)之前,将每个像素的3通道RGB特征嵌入到D维向量中,以混合RGB通道信息。但对于时间序列,直接将M个变量在每个时间步嵌入到D维向量(即变量混合型embedding)并不合适,原因有两点:
- 变量间差异大:时间序列中的变量差异远大于图像中的RGB通道,仅用embedding层难以学习复杂的变量间依赖,且会丢失变量的独立性。
- 丢失变量维度:这种embedding方式会丢弃变量维度,无法进一步建模变量间的依赖关系。
为了解决这个问题,作者提出了patchify variable-independent embedding:
我们将输入时间序列记为 ,其中包含 M个长度为 L的变量。
- 先对每个变量的序列进行padding,然后以patch size为P、stride为S划分为N个patch。
- 每个patch通过1D卷积stem层(核大小为P,步长为S,输入通道1,输出通道D)独立嵌入为D维向量,得到 :
这种方式每个变量独立嵌入,保留了变量维度,为后续建模变量间依赖提供了基础。
(2)DWConv
DWConv(深度可分离卷积)最初的设计目的是用于学习时间维度上的依赖关系(即建模序列的时序信息)。但如果仅靠DWConv来同时学习时间依赖和变量(特征)之间的依赖关系,会变得非常困难。因此,让DWConv同时负责变量间的信息混合是不合适的。
为了解决这个问题,作者对DWConv进行了改进:
- 原本的DWConv只在特征维度上独立操作(即每个特征单独做卷积),现在进一步让它在特征和变量两个维度上都独立操作。
- 这样,DWConv就可以独立地学习每个单变量时间序列的时间依赖,而不会混淆变量间的信息。
此外,作者还采用了大卷积核,以扩大DWConv的有效感受野(ERF),从而提升模型对长时间依赖的建模能力。
(3)ConvFFN
- DWConv 只在时间维度上建模(每个变量、每个特征独立),不混合特征和变量信息。
- ConvFFN 原本可以同时混合特征和变量信息,但这样做计算量大且效果不好。
- 改进方法:将ConvFFN拆成两个部分:
- ConvFFN1:对每个变量独立地学习特征(即在特征维度上混合)。
- ConvFFN2:对每个特征独立地学习变量间依赖(即在变量维度上混合)。
- 这样,每个模块只负责一个维度的信息混合,实现了解耦,既提升了效率,也有助于模型捕捉不同维度的依赖关系。
经过改进后,如图2(d)所示DWConv、ConvFFN1和ConvFFN2分别只在时间、特征或变量这三个维度上混合信息,保持了现代卷积中“解耦设计”的思想。
3.实验
主要结果如图3所示,ModernTCN在五个主流分析任务上取得了与现有最佳性能一致的性能,且效率更高。
图3 模型性能比较(左)和效率比较(右)
1.长期预测
表1 长期预测任务。所有结果都是从4个不同的预测长度,即{24,36,48,60}的ILI和{96,192,336,720}的其他结果中平均得出的。较低的MSE或MAE表示性能更好.
表1显示了ModernTCN在长期预测中的出色表现。具体而言,ModernTCN在9个以上的案例中获得了大部分最佳性能,超过了广泛的基于MLP和Transformer的模型。它在性能方面与最佳基于Transformer的模型PatchTST竞争,同时具有更快的速度和更少的内存使用(图3右),因此提供了更好的性能和效率平衡。值得注意的是,ModernTCN大大超过了现有的基于卷积的模型(MSE减少27.4%,MAE减少15.3%),这表明我们的设计可以更好地释放卷积在时间序列预测中的潜力。
2.短期预测
设置 采用M4数据集作为短期预测基准,将输入长度固定为预测长度的两倍,并计算对称平均绝对百分比误差(SMAPE)、平均绝对缩放误差(MASE)和总体加权平均(OWA)作为指标。为这个特定任务包括了其他基准,如CARD (2023), N-BEATS (2019)和N-HiTS (2023)。由于M4数据集只包含单变量时间序列,我们从ModernTCN和Crossformer中删除了跨变量组件。
结果:M4数据集中的短期预测是一个更具挑战性的任务,因为时间序列样本来自不同的来源,具有非常不同的时间特性。我们的ModernTCN仍然在这个困难的任务中取得了最先进的状态,证明了其卓越的时间建模能力。
表2 短期预测任务。结果是根据不同样本间隔的多个数据集加权平均得出的。较低的指标表示性能更好
其他任务请查看原文ModernTCN: A Modern Pure Convolution Structure for General Time Series Analysis | OpenReview
4.模型分析
1.性能和效率综合比较
ModernTCN在五大主流时间序列分析任务上,性能和效率均优于以往的任务专用模型和SOTA基线,展现了极强的通用性和卷积结构在时序分析中的潜力。ModernTCN不仅在准确率上大幅超越了现有的卷积模型,还在效率上表现突出,实现了性能与效率的良好平衡。与MLP类模型相比,ModernTCN的表达能力更强,虽然内存占用略高,但由于卷积的高效计算,运行速度与一些基于 MLP 的基线几乎持平甚至更快。相比TimesNet,ModernTCN无需将1D时序数据转为2D,也不引入额外的数据变换和聚合模块,结构更简洁,效率更高,性能也更优。
2.感受野分析
本节主要分析了有效感受野(ERF, Effective Receptive Field)对卷积模型在时间序列分析中的重要性,以及ModernTCN为何能优于以往卷积模型。
- ERF的作用:在卷积神经网络中,ERF表示输入序列中有多少点能有效影响输出特征。ERF越大,模型就能捕捉到更长距离的依赖关系,这对时间序列建模非常关键。
- ModernTCN的做法:与传统TCN(通常通过堆叠更多层来扩大ERF)不同,ModernTCN主要通过增大卷积核的尺寸来扩大ERF。在纯卷积结构下,理论上ERF与卷积核大小成线性关系,与层数成次线性关系(即增大核更有效)。
- 理论依据:根据相关理论,ERF 与
成正比,其中ks为卷积核大小,nl为层数。也就是说,增大卷积核比单纯加深网络更能有效扩大ERF。
- 与其它方法对比:有些方法(如MICN、SCINet)通过引入复杂结构来扩大ERF,但由于不是纯卷积结构,ERF难以理论分析。作者通过可视化实验,直观展示了ModernTCN的ERF远大于这些方法。
- 实验结论:ModernTCN能获得更大的ERF,因此能更好地利用卷积结构的潜力,在多个时间序列任务上带来性能提升。
总结:
如图1所示,ModernTCN通过增大卷积核而不是单纯堆叠层数,有效扩大了感受野,使模型能捕捉更长距离的时序依赖,从而在时间序列分析中取得更优表现。
3.消融实验
(1)ModernTCN模块设计
- 去除变量维度(Discard Variable Dimension):如果像计算机视觉那样简单地处理卷积、忽略变量维度,模型性能会明显下降。这验证了作者的观点:变量维度对时间序列建模非常重要,不能像CV那样直接处理。
- ConvFFN结构的解耦:作者将原本单一的ConvFFN模块解耦为ConvFFN1和ConvFFN2,分别处理不同的维度(一个处理特征内信息,一个处理变量间信息)。实验表明,未解耦的ConvFFN性能最差,而解耦后的ConvFFN1+ConvFFN2组合性能最好。
表 4 ModernTCN模块消融实验。我们列出了不同预测时长的平均MSE/MAE指标。
(2)(跨变量组件,ConvFFN2)的消融实验
- ConvFFN2的作用:ConvFFN2专门用于捕捉时间序列中不同变量(特征)之间的依赖关系,是模型结构中针对时间序列特点做出的重要改进。
- 消融实验:作者在插值(imputation)和异常检测(anomaly detection)任务上做了消融实验,即分别测试有无ConvFFN2时模型的表现。
- 实验结果:如表5所示,如果去掉ConvFFN2,模型在这两类任务上的性能会大幅下降。
- 结论:这说明在时间序列分析中,建模变量间的依赖关系(cross-variable dependency)非常重要,ConvFFN2模块不可或缺。
表 5:跨变量组件的消融
5.结论
本文从一个时间序列领域较少探索的角度出发,探讨了如何更好地利用卷积进行时间序列分析。作者通过结合时间序列特性,对传统TCN模块进行了现代化和改进,提出了ModernTCN,并成功让卷积模型在时间序列分析中重新焕发活力。实验结果表明,ModernTCN具有很强的任务通用性,在性能上与最先进的Transformer模型持平或更优,同时保持了卷积模型高效的计算优势,实现了性能与效率的更好平衡。由于卷积模型在时间序列分析领域长期被忽视,作者希望本研究的新结果能为该领域带来新的视角,促使大家重新思考卷积在时间序列分析中的重要性。