最终的表示 将被进一步用于多个时间序列分析任务

     使用Batch Renormalization 或 Moving Average BatchNorm,然后在ConvFFN1和ConvFFN2处理后再用另一个投影层将变量数量恢复到M, 时间序列中的变量差异远大于图像中RGB通道的差异仅使用嵌入层无法学习变量之间的复杂依赖关系甚至可能丢失变量的独立特性。

分布更广的光区域表示更大的ERF同时总结出增大核大小比堆叠更多小核更有效, 模型分析         观图4后ModernTCN 在性能方面与最先进的基于 Transformer 的模型竞争表现良好甚至更优且作为 纯卷积模型比基于 Transformer 的模型效率更高训练速度更快内存使用更少,而且 DWConv 中使用了大核函数来增大有效感受野ERF 从而提升了时域建模的能力,经过上述修改得到了如所示的最终 ModernTCN 块, 时间序列中如何维持变量维度以及为什么维持 为什么维持变量维度         在计算机视觉中通常将每个像素的3通道RGB特征嵌入到一个D维向量中以混合RGB通道的信息, 整体架构         在嵌入(embedding)之后嵌入向量 被输入到主干网络中以捕获跨时间和跨变量的依赖关系并学习信息丰富的表示 ,         LayerNorm 的局限性LayerNorm 是对每个样本的所有特征进行归一化更适合全连接层或 Transformer 这样的结构但在卷积网络中可能会导致特征图的空间信息丢失, ERF 理论 根据Luo et al. (2016)的理论 纯卷积模型中的感受野ERF与 O(ks×nl) 成正比其中 ks 表示卷积核尺寸nl 表示层数,         ModernTCN在分类任务中每个训练周期平均节省55.1%的时间3.19秒 VS 7.10秒在异常检测任务中平均节省57.3%的时间132.65秒 VS 310.62秒,虽然这在某些情况下如小 batch 或在线学习更有优势但在 ModernTCN 中可能不如 BatchNorm 有效。

这个结果证明了交通数据集中的862个变量之间存在冗余, MODERNTCN 1D卷积块的重新设计以及存在的问题 1、DWConv负责 在每个特征的基础上学习token之间的时间信息 其作用与Transformer中的自注意力模块相同, 2. BatchNorm 依赖于 mini-batch 的统计量能够捕捉时间序列的时间依赖性, LayerNorm 的效果虽然 LayerNorm 也能加速训练但在卷积网络中BatchNorm 的效果通常更好, DWConv         DWConv 原本是用于学习时间信息的但仅靠它同时学习跨时间和跨变量的依赖性有困难所以不能让它负责跨变量维的信息混合,如表1所示作者的方法可以显著减少内存使用且性能仅有少许下降, 有两点可以改善TCN模型的方法 图1所示首先 提升感受野 , 每个 ConvFFN 的输出通过 reshape 和 permute 操作调整形状然后与残差连接相加, T通常表示时间序列的长度即总的时间点或观测值的数量,         在计算机视觉中最新研究专注于优化卷积本身并提出现代卷积,最终的表示 将被进一步用于多个时间序列分析任务,现代卷积受 Transformer 启发结构与 Transformer 块类似通常 采用大卷积核以增加 ERF ,          纯卷积结构中增加 ERF 的有效方式 在纯卷积结构中扩大卷积核尺寸是增加感受野的一种更有效的方式,         第二用卷积可以 捕获跨变量依赖性 也就是多变量时间序列中变量之间的关系, 表1.Traffic数据集不同M’的结果 3、基于借鉴CV经验对1D卷积的现代化改进发现在时间序列任务中该改进几乎未提升性能原因是上述设计未考虑时间序列的变量维度中设计的卷积块堆叠骨干网络不能妥善处理此维度因 交叉变量信息在多元时间序列中关键所以需要更多时间序列相关修改 以使现代1D卷积更适用于时间序列分析, P通常表示时间序列中用于预测的时间间隔或滞后期数。

在等最近的文章中很多方法采用了 通道独立策略 这种策略直接将多变量序列预测中变量之间关系忽略了反而取得了更好的效果, 在第 个 ModernTCN 块中的前向过程是 其中 是第 个块的输入, 科普几种评价指标的计算方式 ,并且 DWConv、ConvFFN1 和 ConvFFN2 中的每一个都只在时间、特征或变量维度中的一个上混合信息这保持了现代卷积中解耦设计的理念, 输入首先通过深度卷积DWConv和批归一化BN,而传统的卷积呢它是把时间和特征这两个方面的信息一起处理的, 然后通过两个卷积前馈网络ConvFFN1 和 ConvFFN2每个网络都有其自己的组Groups,用不同的M进行实验来验证这个解决方案, 划分过程中的步长为S这也表示两个连续块之间不重叠区域的长度,作者发现ModernTCN中采用大的卷积核所对应的感受野要大很多,         卷积的特性 在卷积操作中特征图的每个通道是独立处理的BatchNorm 对每个通道进行归一化能够更好地适应卷积的特性, ○ 的定义如下   - 当 时   - 当 时 ○ 表示 ModernTCN 块,在这个分开的过程中DWConv这个部分主要负责在时间维度上处理信息ConvFFN这个部分主要负责在特征维度上处理信息, 2、ConvFFN类似于Transformer中的FFN模块由两个PWConvs组成 采用倒瓶颈结构 ConvFFN块的 隐藏通道比输入通道宽r倍 用于独立学习每个令牌的新特征表示 ,共同点都是用了卷积结构但timesnet用的是2d卷积这个用的是1d卷积所以还是不同的, 最终输出通过 reshape 和 permute 操作调整回原始的维度。

3. BatchNorm 对时间序列数据的适应性 时间序列的特性时间序列数据通常具有时间依赖性 BatchNorm 能够通过 mini-batch 的统计量捕捉到这种依赖性, 对于多变量时间序列每个变量的预测可以独立地使用其自身的最后一个观测值, 将长度为L的M变量输入时间序列 划分为N个大小为P的块并在适当的填充后进行划分。

ConvFFN  ​        因为 DWConv 是特征和变量都无关的所以 ConvFFN 应该作为补充来混合跨特征和变量维度的信息。

代码 代码部分为了大家更好的阅读和探讨我在飞书进行上传有问题大家可以在疑问区域直接评论和且代码部分每个公式我也做了详细数学介绍绝对通俗易懂 代码位置 , 5. BatchNorm 的数学表达   6. BatchNorm 的潜在问题与解决方案 小 batch 问题当 batch size 较小时BatchNorm 的统计量可能不准确, 每个 ModernTCN 块以残差方式组织 。

这种设计结构把时间信息和特征信息的混合给分开了, 科普 变量独立嵌入多变量时间序列中的每个单变量时间序列被视为一个独立的样本每个样本具有1个特征并独立进行嵌入处理,于是 把原本只与特征无关的 DWConv 算法改成了与特征和变量都无关 这样它就能单独学习每个单变量时间序列的时间相关性,  2. BatchNorm 对 mini-batch 的依赖性 BatchNorm 依赖于 mini-batch BatchNorm 的归一化是基于 mini-batch 的统计量均值和方差这使得它在训练时能够动态适应数据分布的变化,尽管 ModernTCN 在内存使用上略逊一筹但由于 卷积的快速浮点运算速度其运行时间效率与一些基于 MLP 的基线几乎相同, ModernTCN 的训练数据如果 ModernTCN 的训练数据是时间序列数据且 mini-batch 的大小足够大BatchNorm 可以很好地工作,一种简单的方法是通过单个 ConvFFN 来共同学习特征和变量之间的依赖性但这种方法会导致更高的计算复杂度和更差的性能, 变量混合嵌入整个多变量时间序列被视为一个单一的样本该样本具有M个特征M是变量的数量并作为一个整体进行嵌入处理 由于变量混合嵌入会导致严重的性能下降所以使用变量独立嵌入进行这些实验, 对于单变量时间序列naive 方法的预测是简单地取最后一个已知的观测值作为下一个时间点的预测值, 注在本文中设计了一种瓶颈结构来实现这一目标这是一种简单直接的方法, 感受野ERF与卷积核尺寸呈线性增长而与层数呈次线性增长, LayerNorm 的独立性LayerNorm 不依赖于 mini-batch而是对每个样本进行归一化,比如FEDformer2022在频域中使用低秩近似变换来提高内存效率Crossformer2023使用少量固定的路由器来聚合所有变量的信息以节省内存使用, 和MICN是两个基于TCN的预测模型它们的感受野都很小,因此可以根据这些变量之间的依赖关系学习到它们的低秩近似,这种低秩近似有助于在不过多降低性能的情况下减少内存使用, 3. BatchNorm 在卷积网络中的效果和稳定性已经得到广泛验证, 2、和Cross-LKTCN:Modern Convolution Utilizing Cross-Variable Dependency for Multivariate Time Series Forecasting有相似处 3、要实现多变量预测单变量要怎么实现呢 一种方案是把一些协变量embedding之后作为新的变量将单变量扩充成多变量, 科普 1、嵌入过程 图3 2、注在原论文pipeline章节中讲了不同任务的pipeline 3、traffic         数据集的变量比其他数据集多很多直接将模型应用于该数据集会导致内存占用过高,具体来说 在输入ConvFFN1和ConvFFN2之前 通过一个投影层将变量数量投影到M 其中M比M小很多 ,在CV领域现代卷积都有着很大的卷积核 图1,另一种方案是修改模型中对多变量间建模的模块超参数直接处理单变量。

用公式表示为 其中 表示某种函数关系kernel size 表示核函数的大小,模型中用于处理多个变量之间交互关系的部分, 综合考虑性能和效率ModernTCN 在一般时间序列分析中更具优势, ConvFFN1 负责为每个变量学习新的特征表示 ConvFFN2 负责捕捉每个特征的跨变量依赖性 ,其在 CV 中有效但在时间序列领域受关注较少, 然后将这些块嵌入到D维嵌入向量中。

因此经适当修改和优化卷积有望成为捕获交叉变量依赖性的高效方法 ​ModernTCN block design: 图2.M、N、D是变量、时间和特征维度的大小, 研究目的探讨如何在时间序列分析中更好地利用卷积使卷积重回该领域。

团队 清华大学精密仪器系 目录 AbstractConclusion 研究背景基于Transformer 及 MLP 模型在时间序列分析中迅速崛起并占据主导卷积在时间序列任务中因性能欠佳而势头渐弱, 传统的变量混合嵌入例如简单地将M个变量嵌入到每个时间步的D维向量中不适用于时间序列数据, 实验 图4.模型性能和效率比较 注 作者在不同任务长短期预测、插值、分类和异常检测上都做了实验效果基本都趋于领先只有像是weather或者traffic大数据集的效果稍弱一丢丢, 这种嵌入设计忽略了变量维度无法进一步研究变量之间的依赖关系,       讨论重点了解 1、modernTCN和Times Net的有啥实质性区别         思路、动机、方法完全不同,         通过扩大卷积核尺寸来增加 ERF ModernTCN 通过扩大卷积核尺寸来增加感受野ERF而不是像其他传统TCN时序卷积网络那样通过堆叠更多的层,现在我们这种把时间和特征分开处理的设计 解耦设计 有两个好处:一个是能让我们要完成的任务变得更容易学习和理解另一个是可以减少计算的复杂程度让计算变得更简单、更快, idea: 卷积可有效地捕捉多元时间序列中变量间的相关性早期研究已尝试用卷积捕获交叉变量相关性虽其性能尚不具竞争力但证明了卷积在此方面的可行性, 作者认为变量之间关系仍然重要 但是要精心设计模型结构来捕获,例如在某些模型中可能会使用前P个时间点的数据来预测下一个时间点的值, 解决策略 提出了一种分块的变量独立嵌入方法。

因为多元时间序列中的变量相互依赖所以一种可能的解决办法是当变量数量M很大时为这些变量找到 低秩近似 , 通过扩大卷积核尺寸获得更大的 ERF 通过扩大卷积核尺寸ModernTCN 可以更容易地获得更大的感受野ERF从而进一步提升性能。

INTRODUCTION 为什么之前修改卷积没有大的改变         一些先前基于卷积的模型虽试图让卷积重回时间序列分析领域但它们专注于设计复杂结构配合传统卷积 忽视卷积本身的更新 且性能不如先进的基于Transformer和MLP的模型, 4、在ModrenTCN中为什么用batchnorm不用layernorm 1. BatchNorm 更适合卷积结构         BatchNorm 的设计初衷BatchNorm 是为卷积神经网络CNN设计的它通过对每个 mini-batch 的每个通道进行归一化能够有效缓解内部协变量偏移Internal Covariate Shift问题, 什么是modren卷积以及如何想到将modern convolution应用到时间序列分析中,       推理时的统计量在推理时BatchNorm 使用训练时计算的移动平均值而不是 mini-batch 的统计量这可以保证推理时的稳定性, ModernTCN 在所有五个任务中都优于所有基于 MLP 的基线因为其具有更好的表示能力而基于 MLP 的模型为减少内存使用采用轻量级骨干导致表示能力不足和性能较差, 研究方法 对传统 TCN 进行现代化改进 使其更适用于时间序列任务提出 ModernTCN在五个主流时间序列分析任务中达到先进水平同时保持卷积模型的效率优势揭示 ModernTCN 具有更大的有效感受野 能更好地发挥卷积在时间序列分析中的潜力而且它也保持了基于卷积的模型的效率优势提供了 性能和效率的更好平衡 , 然而这样做会使得模型的表示能力受到限制进而导致分类性能不佳,。

补充          M4 数据集只包含单变量时间序列 所以在 ModernTCN 和 Crossformer 中删除了交叉变量分量,可以通过以下方法缓解       使用 Group Normalization 或 Instance Normalization*作为替代, LayerNorm 的局限性 LayerNorm 对每个时间步独立归一化可能会破坏时间序列的时间依赖性导致模型性能下降 , ConvFFN1 使用 M 作为组数而 ConvFFN2 使用 D 作为组数。

PatchTST和DLinear没有考虑交叉变量相关性         基于多层感知机MLP的模型为了 实现轻量级的骨干结构往往会舍弃一些特征维度。

当然如果任务场景特殊如 batch size 非常小也可以尝试使用 LayerNorm 或其他归一化方法, 总结 在 ModernTCN*中使用 BatchNorm而不是 LayerNorm主要是因为 1. BatchNorm 更适合卷积结构能够更好地处理时间序列数据,我们打算在时间序列分析中对卷积进行现代化改进以考察其能否增加 ERF 并提升性能,原因是这些模型的ERF有限阻碍性能提升, 4. BatchNorm 的加速训练效果  加速收敛BatchNorm 能够加速模型的训练过程因为它 减少了内部协变量偏移使得梯度更加稳定。

这个过程可以用公式表示为: 主干网络Backbone 主干网络由堆叠的 ModernTCN 块组成,因此通过将 PWConvs 替换为分组的 PWConvs 并设置不同的组数将单个 ConvFFN 进一步分解为 ConvFFN1 和 ConvFFN2。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://acg.inmoke.com/zixun/Jk/43141.html