论文笔记-时序预测-Pyraformer

在这里插入图片描述
论文标题:
Pyraformer: Low-Complexity Pyramidal Attention for Long-Range Time Series Modeling and Forecasting
论文链接:
https://openreview.net/pdf?id=0EXmFzUn5I
源码链接:
https://github.com/alipay/Pyraformer

摘要

根据过去的时间序列数据对未来进行准确预测至关重要,因为它为提前进行决策和风险管理打开了大门。在实践中,面临的挑战是构建一个灵活但简约的模型,该模型可以捕获大范围的时间依赖关系。本文通过研究时间序列的多分辨率表示,提出了 Pyraformer 算法。具体来说,我们引入了金字塔注意模块(PAM) ,其中尺度间的树状结构概括了不同分辨率的特征,尺度内的相邻连接模型模拟了不同范围的时间依赖关系。在温和的条件下,Pyraformer 信号穿越路径的最大长度与序列长度 L 相比是一个常数(即 O (1)) ,而其时间和空间复杂度与 L 呈线性关系。广泛的实验结果显示,无论是在单步预测任务还是在长距离多步预测任务中,Pyraformer 都能以最少的时间和内存消耗达到最高的预测精度,特别是当序列较长时。

在这里插入图片描述
在这里插入图片描述
可以看出,优势很明显。

模型结构

在这里插入图片描述
主要贡献

1.提出了 Pyraformer,以多分辨率的方式同时捕捉不同范围的时间依赖关系。
2.理论上证明了通过适当选取参数,Pyraformer 可以同时实现O(1)的最大信息传播路径和O(L)的时空复杂度。
3.实验表明,不论是单步预测任务还是长程预测任务,Pyraformer 在多个真实数据集上都取得了比 Transformer 及其变体更好的效果,并且消耗的时间和显存更低。

方法

金字塔注意力模块(PAM)

金字塔形的图结构,以多分辨率的方式表征历史序列中的时间依赖关系。在金字塔图中,假设最底层的节点对应了我们观察到的时序。比如,观察到的时序是小时粒度,那每个节点对应了一个小时。
上层的节点,可以认为是总结了每天,每周,和每月的信息。为了进行精准的时序预测,需要做的就是找到过去和未来的关系,然后基于过去才能预测未来。这里,通过连接每一层节点,来建模过去与未来。比如每个小时之间的关系,在底层进行了建模,而每个月之间的关系在顶层进行了建模。
由于,月与月之前的关系在顶层进行了建模,到了周这一层,就不再需要考虑本周与上个月同一周之间的关系了,只需要考虑相邻的一两周之间的关系。因此,每一层里,只考虑相邻节点之间的关系。整个图通过attention机制构建,即把Transformer中的全连接图换成金字塔图。

粗粒度构造模块(CSCM)

CSCM的目的是初始化金字塔图上的粗尺度节点,以便后续的PAM在这些节点之间交换信息。这里通过带bottleneck的卷积网络实现。
在这里插入图片描述
在这里插入图片描述
预测模块

单步预测,直接一层全连接

多步预测,有两种方式。第一种和单步预测类似,但需要将所有尺度上的最后一个节点分批映射到所有 M 个未来时间步骤。第二种,是用两层全连接注意力层作为解码器。

实验

单步预测

在这里插入图片描述
长程预测
在这里插入图片描述
速度和显存占用
在这里插入图片描述

总结

在蚂蚁预测性扩缩容任务上工程化落地效果很好。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
您好!对于CNN-LSTM时序预测,您可以将其视为一个将卷积神经网络(CNN)和长短期记忆网络(LSTM)结合使用的模型。这种模型通常用于处理具有时序特征的数据,比如时间序列数据或者文本数据。 具体来说,CNN用于提取输入数据的局部特征,而LSTM则用于捕捉输入数据中的长期依赖关系。这样的结合使得模型能够同时考虑到数据的局部和长期上下文信息,从而更好地进行时序预测。 您可以按照以下步骤来构建CNN-LSTM模型进行时序预测: 1. 数据准备:准备训练数据集和测试数据集,并对其进行预处理,如归一化、序列划分等。 2. CNN特征提取:使用CNN模型对输入数据进行特征提取。您可以使用卷积层和池化层来捕捉输入数据的局部特征。 3. 数据转换:将CNN提取的特征转换为适合LSTM输入的形式。通常是将每个时间步的特征表示作为LSTM的输入。 4. LSTM建模:构建LSTM模型,可以包含多个LSTM层和其他正则化层,如Dropout层,以避免过拟合。 5. 输出层设计:根据您的具体问题,设计适当的输出层。例如,对于回归问题,可以使用一个全连接层输出连续值;对于分类问题,可以使用softmax层输出类别概率。 6. 模型训练:使用训练数据对CNN-LSTM模型进行训练,可以使用适当的损失函数和优化算法。 7. 模型评估:使用测试数据评估模型的性能,可以使用各种指标如均方误差(MSE)或准确率等。 8. 预测:使用已训练好的模型对新的输入数据进行预测。 希望以上信息对您有所帮助!如果您有任何更多的问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值