《PyraFormer》学习笔记-基于金字塔注意力机制的长序列预测算法

本文介绍PYRAFORMER,一种结合了低复杂度金字塔注意力模块(PAM)和粗尺度构建模块(CSCM)的模型,用于处理长程依赖性的时间序列预测。PAM通过C-ary树结构减少计算复杂度,而CSCM通过层次卷积引入多分辨率信息。实验表明PYRAFORMER在多个数据集上表现出色,尤其是在处理时间交互作用和不同分辨率特征方面。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

《PYRAFORMER: LOW-COMPLEXITY PYRAMIDAL ATTENTION FOR LONG-RANGE TIME SERIES MODELING
AND FORECASTING》

ICLR 2022

摘要

长程依赖性的特征是时间序列中任意两个位置之间最长信号穿越路径的长度。

(1)金字塔注意力模块(PAM)

(2)CSCM

可以参考的资料

https://www.bilibili.com/video/BV1js4y1T76D/?spm_id_from=333.999.0.0&vd_source=eb71d7c928b99f97f15bbf2fd815b3fb

https://blog.youkuaiyun.com/m0_46581836/article/details/134742755

绪论

CNN实现了较低的时间复杂度,与时间序列长度 L 成线性关系,但其信号穿越的最大长度为 O(L),因此难以学习远距离位置之间的依赖关系。

另一个极端是,Transformer 将最大路径长度大幅缩短为 O(1)。还没有算法能够在大大降低时间和空间复杂度的同时,使最大路径长度小于 O(L)。

image-20231203193939912

image-20231203193956211

image-20231203194013868

image-20231203194106599

相关工作

统计方法( ARIMA和 Prophet)和基于神经网络的方法CNN,Transformer。

CNN和RNN具有较低的时间和空间复杂度(即O(L)),但需要O(L)的路径来描述远程依赖性。

Transformer可以通过O(1)的复杂度捕获远程依赖性,但是注意力机制计算的复杂性是O(L*L)。

Informer利用注意力分数的稀疏性,以引入更长的最大路径长度为代价大幅降低复杂度(即O(Llog L))。

Longformer算局部滑动窗口或扩展滑动窗口内的注意力。虽然复杂度降低到0 (AL),其中A是局部窗口大小,但有限的窗口大小使得全局交换信息变得困难。因此最大路径长度为0 (L/A)。

Reformer利用局部敏感散列(LSH)将序列划分为几个桶,然后在每个桶内执行关注。它还采用可逆变压器进一步减少内存消耗,因此可以处理非常长的序列。然而,它的最大路径长度与桶的数量成正比。

模型

最细尺度的节点对应原始时间序列中的时间点(如每小时的观测数据),而较粗尺度的节点则表示分辨率较低的特征(如日、周和月模式)

image-20231203194614268

先将观测数据、协变量(例如hour-of-the-day)和位置信息分别嵌入,然后将它们加在一起,和Informer 相同。

然后使用粗尺度构建模块(CSCM)构建了一棵多分辨率C元树,其中粗尺度节点总结了相应细尺度C个节点的信息

引入了金字塔注意力模块(PAM),利用金字塔图中的注意力机制传递消息。

最后,根据下游任务的不同,采用不同的网络结构来输出最终的预测。

(1)PAM

在这里插入图片描述

尺度间连接形成一个C-ary树,下层是细尺度(分钟),上层是粗尺度(月,周,天)

image-20231203195042495

A代表相邻节点,C代表孩子节点,P代表父亲节点。作者假设序列长度L可以被c(s−1)s-1层的孩子节点个数,整除。

一个节点最多和a + C + 1个节点做运算

transformer的计算复杂度O(L*L)

transformer

PAM的计算复杂度O(L)

在这里插入图片描述

image-20231203195358735

最大穿越路径O(1)

image-20231203195454393

(2)CSCM

image-20231203200145227

在将序列输入到堆叠的卷积层之前,通过一个全连接层将每个节点的维数减少,并在所有卷积后恢复它。这个操作大大减少了模块中的参数数量,可以防止过拟合。

然后对相应的子节点C (s) r进行卷积,从下到上逐比例地引入粗尺度节点,对嵌入序列依次施加核大小为C、步长为C的几个卷积层,得到尺度为s的长度为L/Cs的序列

在将这些细到粗的序列输入 PAM 之前,先将它们串联起来

(3)预测头

  1. 单步预测

    将历史序列(t-L+1到t)输入嵌入层之前,在其末尾添加一个结束标记(设置 t+1 = 0)。序列经 PAM 编码后,收集金字塔图中所有尺度的最后节点给出的特征,将其串联起来,然后输入全连接层进行预测。

  2. 多步预测

    两个预测模块。

    第一个模块与单步预测模块相同,只不过原先只设置t+1为0,现在设置从t+1到t+M为0。第二个模块则采用具有两个FullAttention的解码器。将预测值和真实值嵌入,将真实值、协变量和位置嵌入的总和称为 "预测标记 "Fp。然后,第一层注意力将预测标记 Fp 作为Q,将编码器 Fe 的输出(即 PAM 中的所有节点)作为K和V,并得出 Fd1。

    第二层将 Fd1 作为Q,但将 Fd1 和 Fe 的连接作为K和V。历史信息 Fe 直接输入到两个注意力层,通过一个跨通道维度的全连接层获得最终预测结果。和informer一样,将所有未来预测一起输出。

实验

作者固定了S尺度个数和N堆叠层数,这样就不用调参了,但是为什么要取这个数字,作者是通过大量实验得到这俩数字效果最好,为什么好没有解释A相邻节点个数只能取3或5,与序列长度L没有关系。

image-20231203203559666

在PAM中,一个节点最多可以处理a + C + 1个节点。现有的深度学习库(如Pytorch和TensorFlow)不支持这种稀疏注意力机制。

使用TVM为PAM构建了一个定制的CUDA内核

Wind, App Flow, Electricity, and ETT. 等四个实际数据集前三个数据集用于单步预测,后两个数据集用于多步预测。

只关注了在构建金字塔图时,A 和 S 是固定的,C 随 L 的增加而增加的情况。

image-20231203202939310

  1. 单步预测

    采用 NRMSE(归一化均方根误差)和 ND(归一化偏差)作为评价指标

    image-20231203203300853

    image-20231203201534829

    (1)Pyraformer预测结果最好,可以更好地解释时间序列中的时间交互作用

    (2)Pyraformer 中 Q-K 对的数量最少,对于较长的时间序列,这一计算增益将继续增加

    (3)Pyraformer 的参数数量略多于其他模型,这是 CSCM 的结果。然而,该模块非常轻量级,与其他模型相比,仅产生了 5%的模型大小开销。

  2. 多步预测

    数据集:Electricity, ETTh1, and ETTm1.

    对于 ETTh1 和 ETTm1,同时预测了未来的油温和 6 个电力负荷特征,

    第一个预测模块的结果优于第二个预测模块。一种可能的解释是,基于全注意力层的第二个预测模块无法区分不同分辨率的特征,而基于单个全连接层的第一个模块可以自动充分利用这些特征。

    image-20231203202741132

    image-20231203201804600

  3. 内存占用

    image-20231203202315970

  4. 消融实验

    (1) 为了减少预测误差,最好随 着L 的增加来增加 C,从而上每层树上的节点趋于稳定,但将 A 固定为一个小常数

    (2) 带瓶颈的卷积在预测准确性和参数数量之间取得了平衡,因此我们将其用作 CSCM;

    (3) 更多的真实数据有助于提高预测准确性;

    (4) PAM 金字塔注意力模块是这个模型提高准确率最重要的部分

    image-20231203202537048

image-20231203203436285
们将其用作 CSCM;

(3) 更多的真实数据有助于提高预测准确性;

(4) PAM 金字塔注意力模块是这个模型提高准确率最重要的部分

在这里插入图片描述

在这里插入图片描述

Pyraformer是一种用于长程时间序列建模和预测的低复杂度、金字塔注意力机制。它通过多分辨率的方式捕捉不同范围的时间依赖关系,并且在理论上证明了在适当选择参数的情况下,Pyraformer能够同时实现O(1)的最大信息传播路径和O(L)的时空复杂度。该方法在多个真实数据集上的实验表明,无论是单步预测任务还是长程预测任务,Pyraformer都取得了比Transformer及其变体更好的效果,并且所需的时间和显存消耗更低。如果您需要更多关于Pyraformer的详细信息,您可以参考引用中的论文标题和引用中的论文链接和源码链接。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [[2022 ICLR] Pyraformer: Low-Complexity Pyramidal Attention for Long-Range 时空序列建模和预测](https://blog.youkuaiyun.com/qq_33866063/article/details/124332826)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [论文笔记-时序预测-Pyraformer](https://blog.youkuaiyun.com/weixin_44611266/article/details/128265508)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

懒羊羊吃辣条

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值