Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >革新Transformer!清华大学提出全新Autoformer骨干网络

革新Transformer!清华大学提出全新Autoformer骨干网络

作者头像
深度学习技术前沿公众号博主
发布于 2021-07-14 04:59:58
发布于 2021-07-14 04:59:58
1.1K0
举报

【导读】近日,清华大学软件学院机器学习实验室另辟蹊径,基于随机过程经典理论,提出全新Autoformer架构,包括深度分解架构及全新自相关机制,长序预测性能平均提升38%。

尽可能延长预测时效是时序预测的核心难题,对于能源、交通、经济的长期规划,气象灾害、疾病的早期预警等具有重要意义。

清华大学软件学院机器学习实验室的研究人员近日发表了一篇论文,探究了在信息有限的情况下预测更长期未来的这个难题。

针对上述问题,作者大刀阔斧革新Transformer,提出全新的Autoformer模型,在长时序预测方面达到SOTA,在效率性能上均超过Transformer及其变体。

论文链接:https://arxiv.org/abs/2106.13008

研究背景

虽然近期基于Transformer的模型在时序预测上取得了一系列进展,但是Transformer的固有设计,使得在应对长期序列时仍存在不足:

  • 随着预测时效的延长,直接使用自注意力(self-attention)机制难以从复杂时间模式中找到可靠的时序依赖。
  • 由于自注意力的二次复杂度问题,模型不得不使用其稀疏版本,但会限制信息利用效率,影响预测效果。

作者受到时序分析经典方法和随机过程经典理论的启发,重新设计模型,打破Transformer原有架构,得到Autoformer模型:

  • 深度分解架构:突破将时序分解作为预处理的传统方法,设计序列分解单元以嵌入深度模型,实现渐进式地(progressively)预测,逐步得到可预测性更强的组分。
  • 自相关(Auto-Correlation)机制:基于随机过程理论,丢弃点向(point-wise)连接的自注意力机制,实现序列级(series-wise)连接的自相关机制,且具有的复杂度,打破信息利用瓶颈。
  • 应对长期预测问题,Autoformer在能源、交通、经济、气象、疾病五大领域取得了38%的大幅效果提升。

方法介绍

作者提出了Autoformer模型,其中包括内部的序列分解单元、自相关机制以及对应的编码器、解码器。

(1)深度分解架构

Autoformer架构

时间序列分解是时序分析的经典方法,可以将时间序列分解为几类潜在的时间模式,如周期项,趋势项等。

在预测任务中,由于未来的不可知性,通常先对输入进行分解,再每个组分分别预测。

但这样使得预测结果受限于分解效果,并且忽视了长期未来中各个组分之间的相互作用。

针对上述问题,作者提出深度分解架构,在预测过程中,逐步从隐变量中分离趋势项与周期项,实现渐进式(progressive)分解。

并且模型交替进行预测结果优化和序列分解,可以实现两者的相互促进。

A. 序列分解单元

基于滑动平均思想,平滑时间序列,分离周期项与趋势项:

其中,为待分解的隐变量,分别为趋势项和周期项,将上述公式记为。

B. 编解码器

编码器:通过上述分解单元,模型可以分离出周期项,。而基于这种周期性,进一步使用自相关机制(),聚合不同周期的相似子过程:

解码器:对趋势项与周期项分别预测。

  • 对于周期项,使用自相关机制,基于序列的周期性质来进行依赖挖掘,并聚合具有相似过程的子序列;
  • 对于趋势项,使用累积的方式,逐步从预测的隐变量中提取出趋势信息。

(2)自相关机制

观察到,不同周期的相似相位之间通常表现出相似的子过程,利用这种序列固有的周期性来设计自相关机制,实现高效的序列级连接。

自相关机制包含基于周期的依赖发现(Period-based dependencies)和时延信息聚合(Time delay aggregation)。

自相关机制,右侧为时延信息聚合

A. 基于周期的依赖发现

基于上述观察,为找到相似子过程,需要估计序列的周期。基于随机过程理论,对于实离散时间过程,可以如下计算其自相关系数:

\mathcal{R}_{\mathcal{X}\mathcal{X}}(\tau)=\lim_{L\to \infty}\frac{1}{L}\sum_{t=0}^{L-1}\mathcal{X}_t\mathcal{X}_{t-\tau}.

其中,自相关系数表示序列与它的延迟之间的相似性。

在自相关机制中,将这种时延相似性看作未归一化的周期估计的置信度,即周期长度为的置信度为。

实际上,基于Wiener-Khinchin理论,自相关系数可以使用快速傅立叶变换(FFT)得到,其计算过程如下:

其中,和分别表示FFT和其逆变换。因此,复杂度为。

B. 时延信息聚合

为了实现序列级连接,还需要将相似的子序列信息进行聚合。自相关机制依据估计出的周期长度,首先使用操作进行信息对齐,再进行信息聚合:

这里,依然使用query、key、value的多头形式,从而可以无缝替换自注意力机制。

同时,挑选最有可能的个周期长度,用于避免融合无关、甚至相反的相位。整个自相关机制的复杂度仍为。

C. 对比分析

自相关机制与自注意力机制对比

相比于之前的点向连接的注意力机制或者其稀疏变体,自注意力(Auto-Correlation)机制实现了序列级的高效连接,从而可以更好的进行信息聚合,打破了信息利用瓶颈。

实验

作者在6个数据集上进行了测试,涵盖能源、交通、经济、气象、疾病五大主流领域。

(1) 主要结果

整体实验结果

Autoformer在多个领域的数据集、各种输入-输出长度的设置下,取得了一致的最优(SOTA)结果。

在input-96-predict-336设置下,相比于之前的SOTA结果,Autoformer实现了ETT能源数据集74%的MSE提升,Electricity能源数据集MSE提升24%,Exchange经济数据集提升64%,Traffic交通数据集提升14%,Weather气象数据集提升26%,在input-24-predict-60设置下,ILI疾病数据集提升30%。

在上述6个数据集,Autoformer在MSE指标上平均提升38%。

(2) 对比实验

深度分解架构的通用性:将提出的深度分解架构应用于其他基于Transformer的模型,均可以得到明显提升,验证了架构的通用性。

同时随着预测时效的延长,提升效果更加明显,这也印证了复杂时间模式是长期预测的核心问题。

ETT数据集上的MSE指标对比,Origin表示直接预测,Sep表示先分解后预测,Ours表示深度分解架构。

自相关机制 vs. 自注意力机制:同样基于深度分解架构,在众多输入-输出设置下,自相关机制一致优于自注意力机制及其变体,比如经典Transformer中的Full Attention,Informer中的PropSparse Attention等。

ETT数据集上对比实验,将Autoformer中的自相关机制替换为其他自注意力机制,得到上述结果。

(3) 模型分析

时序依赖可视化:

对于序列的最后一个时间点,各模型学到的时序依赖可视化,图(a)中红色线表示学习到的过程的位置。

通过上图可以验证,Autoformer中自相关机制可以正确发掘出每个周期中的下降过程,并且没有误识别和漏识别,而其他注意力机制存在缺漏甚至错误的情况。

效率分析:

效率对比,红色线为自相关机制

在显存占用和运行时间两个指标上,自相关机制均表现出了优秀的空间、时间效率,两个层面均超过自注意力机制及其稀疏变体,表现出高效的复杂度。

总结

针对长时序列预测中的问题,作者基于时序分析的经典方法和随机过程的经典理论,提出了基于深度分解架构和自相关机制的Autoformer模型。

Autoformer通过渐进式分解和序列级连接,应对复杂时间模式以及信息利用瓶颈,大幅提高了长时预测效果。

同时,Autoformer在五大主流领域均表现出了优秀的长时预测结果,模型具有良好的效果鲁棒性,具有很强的应用落地价值。

参考资料:

https://arxiv.org/abs/2106.13008

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 深度学习技术前沿 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
微软开源 repo 1.0 ,旨在创造深度学习框架通用语言
AI 研习社按,日前,微软提出深度学习框架的通用语言——repo1.0,号称希望通过构建这一深度学习框架「Rosetta Stone(罗塞塔石碑)」,让研究者们能够在不同框架之间轻松运用专业知识。他们在博客中讲解了基准深度学习框架的训练结果和相应的经验教训,雷锋网 AI 研习社编译整理如下。
AI研习社
2018/07/26
7500
微软开源 repo 1.0 ,旨在创造深度学习框架通用语言
从Caffe2到TensorFlow,十种框架构建相同神经网络效率对比
近日,Ilia Karmanov 在 Medium 发表了一篇题为《Neural Net in 10 Frameworks (Lessons Learned)》的文章,其内容源自一个 GitHub 项目,其中作者通过构建同一个神经网络,对比了当前最流行的 10 种深度学习框架,其中 Caffe2 和 MXNet 在准确度和训练时长上处于领先位置。该项目甚至还得到了 FAIR 研究者、各大框架创始人(比如贾扬清)的支持。机器之心对该文进行了编译。 项目GitHub链接:https://github.com/i
小莹莹
2018/04/24
1.2K0
从Caffe2到TensorFlow,十种框架构建相同神经网络效率对比
【10大深度学习框架实验对比】Caffe2最优,TensorFlow排第6
【新智元导读】微软数据科学家Ilia Karmanov做了一个项目,使用高级API测试8种常用深度学习框架的性能(因为Keras有TF,CNTK和Theano,所以实际是10种)。Karmanov希望
新智元
2018/03/22
1.3K0
【10大深度学习框架实验对比】Caffe2最优,TensorFlow排第6
深度学习框架哪家强?MXNet称霸CNN、RNN和情感分析,TensorFlow仅擅长推断特征提取
深度学习框架哪家强:TensorFlow?Caffe?MXNet?Keras?PyTorch?对于这几大框架在运行各项深度任务时的性能差异如何,各位读者不免会有所好奇。 微软数据科学家Ilia Karmanov最新测试的结果显示,亚马逊MXNet在CNN、RNN与NLP情感分析任务上性能强劲,而TensorFlow仅擅长于特征提取。 测试详情更新在Ilia Karmanov的GitHub项目DeepLearningFrameworks(https://github.com/ilkarman/Deep
AI科技大本营
2018/04/27
1.3K0
深度学习框架哪家强?MXNet称霸CNN、RNN和情感分析,TensorFlow仅擅长推断特征提取
如此多的深度学习框架,为什么我选择PyTorch?
2017年1月,Facebook人工智能研究院(FAIR)团队在GitHub上开源了PyTorch,并迅速占领GitHub热度榜榜首。
博文视点Broadview
2020/06/11
1.8K0
如此多的深度学习框架,为什么我选择PyTorch?
干货丨从TensorFlow到PyTorch:九大深度学习框架哪款最适合你?
现在的许多机器学习框架都可以在图像识别、手写识别、视频识别、语音识别、目标识别和自然语言处理等许多领域大展身手,但却并没有一个完美的深度神经网络能解决你的所有业务问题。所以,本文希望下面的图表和讲解能
IT派
2018/03/29
1.6K0
干货丨从TensorFlow到PyTorch:九大深度学习框架哪款最适合你?
详解 6 大主流深度学习框架
导读:近几年,随着深度学习的爆炸式发展,相关理论和基础架构得到了很大突破,它们奠定了深度学习繁荣发展的基础。这其中涌现了几个著名的深度学习平台,本文将对这些平台进行简要介绍。
IT阅读排行榜
2022/03/11
4.6K0
详解 6 大主流深度学习框架
深度学习三大框架对比
人工智能的浪潮正席卷全球,诸多词汇时刻萦绕在我们的耳边,如人工智能,机器学习,深度学习等。“人工智能”的概念早在1956年就被提出,顾名思义用计算机来构造复杂的,拥有与人类智慧同样本质特性的机器。经过几十年的发展,在2012年后,得益于数据量的上涨,运算力的提升和机器学习算法(深度学习)的出现,人工智能开始大爆发。但目前的科研工作都集中在弱人工智能部分,即让机器具备观察和感知能力,可以一定程度的理解和推理,预期在该领域能够取得一些重大突破。电影里的人工智能多半都是在描绘强人工智能,即让机器获得自适应能力,解决一些之前还没遇到过的问题,而这部分在目前的现实世界里难以真正实现。
用户2368476
2018/06/19
2K0
深度学习三大框架对比
业界 | 现代「罗塞塔石碑」:微软提出深度学习框架的通用语言
选自arXiv 作者:Ilia Karmanov等 机器之心编译 参与:路雪、刘晓坤、白妤昕 深度学习框架就像语言一样:很多人会说英语,但每种语言都有自己的特殊性。作者为几种不同的网络结构创建了通用代码,并可在多个不同的框架中使用。 repo 1.0 完整版 GitHub 地址:https://github.com/ilkarman/DeepLearningFrameworks 我们的想法是创建一个深度学习框架的罗塞塔石碑(Rosetta Stone):假设你很了解某个深度学习框架,你就可以帮助别人使用任何
机器之心
2018/05/08
1.1K0
业界 | 现代「罗塞塔石碑」:微软提出深度学习框架的通用语言
8种主流深度学习框架介绍
导读:近几年随着深度学习算法的发展,出现了许多深度学习框架。这些框架各有所长,各具特色。常用的开源框架有TensorFlow、Keras、Caffe、PyTorch、Theano、CNTK、MXNet、PaddlePaddle、Deeplearning4j、ONNX等。
IT阅读排行榜
2022/01/20
6.3K0
8种主流深度学习框架介绍
深度学习三大框架对比
人工智能的浪潮正席卷全球,诸多词汇时刻萦绕在我们的耳边,如人工智能,机器学习,深度学习等。
腾讯Bugly
2018/05/22
4.2K9
【问答集锦】TensorFlow带你进入深度学习的世界
自TensorFlow于2015年底正式开源,距今已有一年多,不久前,TensorFlow正式版也发布了。这期间TensorFlow不断给人以惊喜,推出了分布式版本,服务框架TensorFlowServing,可视化工具TensorFlow,上层封装TF.Learn,其他语言(Go、Java、Rust、Haskell)的绑定、Windows的支持、JIT编译器XLA、动态计算图框架Fold,以及数不胜数的经典模型在TensorFlow上的实现(InceptionNet、SyntaxNet等)。在这一年多时间,TensorFlow已从初入深度学习框架大战的新星,成为了几近垄断的行业事实标准。
博文视点Broadview
2020/06/11
5050
Python机器学习、深度学习库总结(内含大量示例,建议收藏)
目前,随着人工智能的大热,吸引了诸多行业对于人工智能的关注,同时也迎来了一波又一波的人工智能学习的热潮,虽然人工智能背后的原理并不能通过短短一文给予详细介绍,但是像所有学科一样,我们并不需要从头开始”造轮子“,可以通过使用丰富的人工智能框架来快速构建人工智能模型,从而入门人工智能的潮流。人工智能指的是一系列使机器能够像人类一样处理信息的技术;机器学习是利用计算机编程从历史数据中学习,对新数据进行预测的过程;神经网络是基于生物大脑结构和特征的机器学习的计算机模型;深度学习是机器学习的一个子集,它处理大量的非结构化数据,如人类的语音、文本和图像。因此,这些概念在层次上是相互依存的,人工智能是最广泛的术语,而深度学习是最具体的:
润森
2022/09/22
3.1K0
Python机器学习、深度学习库总结(内含大量示例,建议收藏)
从三大神经网络,测试对比TensorFlow、MXNet、CNTK、Theano四个框架
选自data science central 机器之心编译 参与:蒋思源 本文比较了 Keras 支持的主流深度学习框架性能,包括 TensorFlow、CNTK、MXNet 和 Theano,作者希望通过使用同一模型和不同的 Keras 后端,而测试不同框架在不同类型任务中的性能。本文通过五个任务分别测试了 MLP、CNN 和 RNN 模型,机器之心不仅对该试验进行了介绍,同时还使用 Keras(TensorFlow 后端)在 MNIST 数据集上试运行了 CNN。 如果我们对 Keras 在数据科学和深
机器之心
2018/05/08
1.5K2
从三大神经网络,测试对比TensorFlow、MXNet、CNTK、Theano四个框架
计算机视觉深度学习训练推理框架
前言 本文整理了一些深度学习训练推理框架,涉及计算机视觉、语音、时序任务上的框架,共计20多种。
小白学视觉
2025/02/05
1760
计算机视觉深度学习训练推理框架
深度 | 对比深度学习十大框架:TensorFlow最流行但并不是最好
2016 年已经过去,BEEVA Labs 数据分析师 Ricardo Guerrero Gomez-Ol 近日在 Medium 上发表了一篇文章,盘点了目前最流行的深度学习框架。为什么要做这一个盘点呢?他写道:「我常听到人们谈论深度学习——我该从哪里开始呢?TensorFlow 是现在最流行的吧?我听说 Caffe 很常用,但会不会太难了?在 BEEVA Labs,我们常常需要应对许多不同的深度学习库,所以我希望能够将我们的发现和感想分享出来,帮助那些刚刚进入深度学习这一美丽世界的人。」 TensorFl
CSDN技术头条
2018/02/12
1.2K0
Keras还是TensorFlow?深度学习框架选型实操分享
深度学习发展势头迅猛,但近两年涌现的诸多深度学习框架让初学者无所适从。如 Google 的 TensorFlow、亚马逊的 MXNet、Facebook 支持的 PyTorch、Theano、Caffe、CNTK、Chainer、百度的 PaddlePaddle、DSSTNE、DyNet、BigDL、Neon 等等。
AI科技大本营
2018/10/22
1.8K0
Keras还是TensorFlow?深度学习框架选型实操分享
新年福利 | 2019深度学习工具汇总
深度学习的进步也严重依赖于软件基础架构的进展。软件库如:Torch(2011), Theano(2012), DistBelief(2012), PyLearn2 (2013), Caffe(2013), MXNet (2015) 和 TensorFlow(2015) 都能支持重要的研究项目或商业产品。
计算机视觉研究院
2019/03/07
6040
新年福利 | 2019深度学习工具汇总
常见深度学习框架对比
目前研究人员正在使用的深度学习框架不尽相同,有TensorFlow、Caffe、Theano、Keras等,常见的深度学习框架如下图所示。
SeanCheney
2019/04/09
1.6K0
常见深度学习框架对比
【DL笔记9】搭建CNN哪家强?TensorFlow,Keras谁在行?
从【DL笔记1】到【DL笔记N】,是我学习深度学习一路上的点点滴滴的记录,是从Coursera网课、各大博客、论文的学习以及自己的实践中总结而来。从基本的概念、原理、公式,到用生动形象的例子去理解,到动手做实验去感知,到著名案例的学习,到用所学来实现自己的小而有趣的想法......我相信,一路看下来,我们可以感受到深度学习的无穷的乐趣,并有兴趣和激情继续钻研学习。 正所谓 Learning by teaching,写下一篇篇笔记的同时,我也收获了更多深刻的体会,希望大家可以和我一同进步,共同享受AI无穷的乐趣。
beyondGuo
2018/10/25
8490
【DL笔记9】搭建CNN哪家强?TensorFlow,Keras谁在行?
推荐阅读
相关推荐
微软开源 repo 1.0 ,旨在创造深度学习框架通用语言
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档