效果远超Transformer!AAAI 2021最佳论文Informer:最强最快的序列预测神器

点击上方“CVer”,选择加"星标"置顶

重磅干货,第一时间送达

本文转载自:炼丹笔记

作者:一元,四品炼丹师

Informer:最强最快的序列预测神器

01

简介

在很多实际应用问题中,我们需要对长序列时间序列进行预测,例如用电使用规划。长序列时间序列预测(LSTF)要求模型具有很高的预测能力,即能够有效地捕捉输出和输入之间精确的长程相关性耦合。最近的研究表明,Transformer具有提高预测能力的潜力。

然而,Transformer存在一些严重的问题,如:

  • 二次时间复杂度、高内存使用率以及encoder-decoder体系结构的固有限制。

为了解决这些问题,我们设计了一个有效的基于变换器的LSTF模型Informer,它具有三个显著的特点:

  • ProbSparse Self-Attention,在时间复杂度和内存使用率上达到了 ,在序列的依赖对齐上具有相当的性能。

  • self-attention 提取通过将级联层输入减半来突出控制注意,并有效地处理超长的输入序列。

  • 产生式decoder虽然概念上简单,但在一个正向操作中预测长时间序列,而不是一步一步地进行,这大大提高了长序列预测的推理速度。

在四个大规模数据集上的大量实验表明,Informer的性能明显优于现有的方法,为LSTF问题提供了一种新的解决方案。

02

背景

 

Intuition:Transformer是否可以提高计算、内存和架构效率,以及保持更高的预测能力?

原始Transformer的问题

  • self-attention的二次计算复杂度,self-attention机制的操作,会导致我们模型的时间复杂度为 ;

  • 长输入的stacking层的内存瓶颈:J个encoder/decoder的stack会导致内存的使用为 ;

  • 预测长输出的速度骤降:动态的decoding会导致step-by-step的inference非常慢。

本文的重大贡献

本文提出的方案同时解决了上面的三个问题,我们研究了在self-attention机制中的稀疏性问题,本文的贡献有如下几点:

  • 我们提出Informer来成功地提高LSTF问题的预测能力,这验证了类Transformer模型的潜在价值,以捕捉长序列时间序列输出和输入之间的单个的长期依赖性;

  • 我们提出了ProbSparse self-attention机制来高效的替换常规的self-attention并且获得了 的时间复杂度以及 的内存使用率;

  • 我们提出了self-attention distilling操作全县,它大幅降低了所需的总空间复杂度

  • 我们提出了生成式的Decoder来获取长序列的输出,这只需要一步,避免了在inference阶段的累计误差传播;

问题定义

在固定size的窗口下的rolling预测中,我们在时刻 的输入为,我们需要预测对应的输出序列,LSTF问题鼓励输出一个更长的输出,特征维度不再依赖于univariate例子( ).

  • Encoder-decoder框架:许多流行的模型被设计对输入表示 进行编码,将 编码为一个隐藏状态表示 并且将输出的表示 解码.在推理的过程中设计到step-by-step的过程(dynamic decoding),decoder从前一个状态 计算一个新的隐藏状态 以及第 步的输出,然后对 个序列进行预测

  • 输入表示:为了增强时间序列输入的全局位置上下文和局部时间上下文,给出了统一的输入表示。

03

方法

现有时序方案预测可以被大致分为两类:

高效的Self-Attention机制

传统的self-attention主要由(query,key,value)组成,,其中;第 个attention被定义为核平滑的概率形式:

self-attention需要 的内存以及二次的点积计算代价,这是预测能力的主要缺点。

我们首先对典型自我注意的学习注意模式进行定性评估。“稀疏性” self-attention得分形成长尾分布,即少数点积对主要注意有贡献,其他点积对可以忽略。那么,下一个问题是如何区分它们?

Query Sparsity评估

我们定义第 个query sparsity第评估为:

第一项是 在所有keys的Log-Sum-Exp(LSE),第二项是arithmetic均值。

ProbSparse Self-attention

其中 是和q相同size的稀疏矩阵,它仅包含稀疏评估下 下Top-u的queries,由采样factor 所控制,我们令 , 这么做self-attention对于每个query-key lookup就只需要计算 的内积,内存的使用包含 ,但是我们计算 的时候需要计算没对的dot-product,即, ,同时LSE还会带来潜在的数值问题,受此影响,本文提出了query sparsity 评估的近似,即:

这么做可以将时间和空间复杂度控制到

04

方法Encoder + Decoder

1. Encoder: Allowing for processing longer sequential inputs under the memory usage limitation

encoder被设计用来抽取鲁棒的长序列输入的long-range依赖,在第 个序列输入 被转为矩阵

Self-attention Distilling

作为ProbSparse Self-attention的自然结果,encoder的特征映射会带来 值的冗余组合,利用distilling对具有支配特征的优势特征进行特权化,并在下一层生成focus self-attention特征映射。

它对输入的时间维度进行了锐利的修剪,如上图所示,n个头部权重矩阵(重叠的红色方块)。受扩展卷积的启发,我们的“distilling”过程从第j层往 推进:

其中 包含Multi-Head ProbSparse self-attention以及重要的attention block的操作。

为了增强distilling操作的鲁棒性,我们构建了halving replicas,并通过一次删除一层(如上图)来逐步减少自关注提取层的数量,从而使它们的输出维度对齐。因此,我们将所有堆栈的输出串联起来,并得到encoder的最终隐藏表示。

2. Decoder: Generating long sequential outputs through one forward procedure

此处使用标准的decoder结构,由2个一样的multihead attention层,但是,生成的inference被用来缓解速度瓶颈,我们使用下面的向量喂入decoder:

其中,是start tocken, ~~是一个placeholder,将Masked multi-head attention应用于ProbSparse self-attention,将mask的点积设置为 。它可以防止每个位置都关注未来的位置,从而避免了自回归。一个完全连接的层获得最终的输出,它的超大小取决于我们是在执行单变量预测还是在执行多变量预测。

Generative Inference

我们从长序列中采样一个 ,这是在输出序列之前的slice。

以图中预测168个点为例(7天温度预测),我们将目标序列已知的前5天的值作为“start token”,并将 输入生成式推理解码器。

包含目标序列的时间戳,即目标周的上下文。注意,我们提出的decoder通过一个前向过程预测所有输出,并且不存在耗时的“dynamic decoding”。

Loss Function

此处选用MSE 损失函数作为最终的Loss。

05

实验

1. 实验效果

从上表中,我们发现:

  • 所提出的模型Informer极大地提高了所有数据集的推理效果(最后一列的获胜计数),并且在不断增长的预测范围内,它们的预测误差平稳而缓慢地上升。

  • query sparsity假设在很多数据集上是成立的;

  • Informer在很多数据集上远好于LSTM和ERNN

2. 参数敏感性

从上图中,我们发现:

  • Input Length:当预测短序列(如48)时,最初增加编码器/解码器的输入长度会降低性能,但进一步增加会导致MSE下降,因为它会带来重复的短期模式。然而,在预测中,输入时间越长,平均误差越低:信息者的参数敏感性。长序列(如168)。因为较长的编码器输入可能包含更多的依赖项;

  • Sampling Factor:我们验证了冗余点积的查询稀疏性假设;实践中,我们把sample factor设置为5即可,即 ;

  • Number of Layer Stacking:Longer stack对输入更敏感,部分原因是接收到的长期信息较多

3. 解耦实验

从上表中我们发现,

  • ProbSparse self-attention机制的效果:ProbSparse self-attention的效果更好,而且可以节省很多内存消耗;

  • self-attention distilling:是值得使用的,尤其是对长序列进行预测的时候;

  • generative stype decoderL:它证明了decoder能够捕获任意输出之间的长依赖关系,避免了误差的积累;

4. 计算高效性

  • 在训练阶段,在基于Transformer的方法中,Informer获得了最佳的训练效率。

  • 在测试阶段,我们的方法比其他生成式decoder方法要快得多。

06

小结

本文研究了长序列时间序列预测问题,提出了长序列预测的Informer方法。具体地:

  • 设计了ProbSparse self-attention和提取操作来处理vanilla Transformer中二次时间复杂度和二次内存使用的挑战。

  • generative decoder缓解了传统编解码结构的局限性。

  • 通过对真实数据的实验,验证了Informer对提高预测能力的有效性

参考文献

  1. Informer: Beyond Efficient Transformer for Long Sequence Time-Series Forecasting:https://arxiv.org/pdf/2012.07436.pdf

Informer论文下载

后台回复:Informer,即可下载上述论文PDF,肝起来!

CV资源下载

后台回复:Transformer综述,即可下载两个最新的视觉Transformer综述PDF,肝起来!

重磅!CVer-Transformer交流群成立

扫码添加CVer助手,可申请加入CVer-Transformer方向 微信交流群,可申请加入CVer大群,细分方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、Transformer、PyTorch和TensorFlow等群。

一定要备注:研究方向+地点+学校/公司+昵称(如Transformer+上海+上交+卡卡),根据格式备注,才能通过且邀请进群

▲长按加微信群

▲长按关注CVer公众号

整理不易,请给CVer点赞和在看

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
本文对股票的选择过程进行了系统分析,并使用深度学习对该股票进行了预测。 无需任何先验知识即可学习庞大的原始数据集并从中提取重要数据的能力使其具有吸引力。 深度学习模型的性能高度依赖于优化,损失函数,网络结构,激活函数和其他参数。 本文旨在研究自动编码经网络在选股过程中的性能,并使用长短期记忆(LSTM)模型对这些股票进行未来预测。 该研究涉及标准普尔500指数中每家公司2013年至2018年的5年静态每日数据。该研究的假设是,用户愿意将固定数量的股票投资并已经拥有股票。 自动编码已应用于主要根据用户要投资的数量和所有股票的最后一天收盘价进行过滤以考虑承受能力的股票。 原始数据和重新创建的数据之间的RMSE得分将用于选择股票。 考虑到用户的行为是中立的,因此选择了RMSE得分最低的前50只股票和RMSE得分最高的倒数50只股票。 这些选定股票的潜在特征将被检查。 在这100种股票中,将通过检查它们与用户已经拥有的股票之间的相关性来选择不同行业的20种股票。 LSTM模型将使用adam优化预测这20只股票的第二天未来价格,经验结果表明,RMSE得分最低的前50只股票将带来低回报和低风险。 这意味着自动编码结果中排名前50位的股票为蓝筹股。 同样,具有高RMSE得分的排名前50位的股票也会带来高风险的高回报。 这意味着自动编码结果中的前50名股票给出了小盘股。 自编码经网络后,相关估计得到了显着改善。 通过使用adam优化程序,使用LSTM进行的未来一天库存预测可以提供均方根误差为2.22的高精度。 我们的研究提供了一些见识和有用的路线图,可用于进一步研究使用深度学习网络进行的股票市场分析和预测
Informer: Beyond Efficient Transformer for Long Sequence Time-Series Forecasting是一篇2021年发表在AAAI会议上的论文,它提出了一种名为Informer的方法,用于解决长时间序列预测的问题。\[2\]这篇论文的目标是在长时间序列预测中提高预测能力并提高效率。传统的Transformer方法在长时间序列预测上存在一些局限性,而Informer通过引入一些新的机制来克服这些局限性。\[3\]具体来说,Informer采用了一种多层次的注意力机制,以便更好地捕捉长时间序列中的依赖关系,并引入了一种自适应长度的编码和解码,以提高对长序列的建模能力。通过这些改进,Informer在长时间序列预测任务上取得了更好的效果。 #### 引用[.reference_title] - *1* *3* [Informer: Beyond Efficient Transformer for Long SequenceTime-Series Forecasting](https://blog.csdn.net/lwera/article/details/127389652)[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^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [InformerTransformer的长时间序列预测模型](https://blog.csdn.net/zuiyishihefang/article/details/123437169)[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^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值