前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >替换Transformer!谷歌提出 Performer 模型,全面提升注意力机制!

替换Transformer!谷歌提出 Performer 模型,全面提升注意力机制!

作者头像
昱良
发布于 2020-11-09 07:26:01
发布于 2020-11-09 07:26:01
1.8K0
举报

机器之心报道

Transformer 有着巨大的内存和算力需求,因为它构造了一个注意力矩阵,需求与输入呈平方关系。谷歌大脑 Krzysztof Choromanski 等人最近提出的 Performer 模型因为随机正正交特性为注意力矩阵构建了一个无偏的估计量,可以获得线性增长的资源需求量。这一方法超越了注意力机制,甚至可以说为下一代深度学习架构打开了思路

自面世以来,Transformer 模型已经在多个领域取得了 SOTA 结果,包括自然语言处理图像处理甚至是音乐处理。众所周知,Transformer 架构的核心是注意力模块,它计算输入序列中所有位置对的相似度得分。然而,随着输入序列长度的增加,注意力机制本身的问题也越来越突出,因为它需要二次方的计算时间来产生所有的相似度得分,用来存储这些得分的内存大小也是如此。

针对那些需要长距离注意力的应用,部分研究者已经提出了一些速度快、空间利用率高的方法,其中比较普遍的方法是稀疏注意力。

标准的稀疏化技术。

然而,稀疏注意力方法也有一些局限。首先,它们需要高效的稀疏矩阵乘法运算,但这并不是所有加速器都能做到的;其次,它们通常不能为自己的表示能力提供严格的理论保证;再者,它们主要针对 Transformer 模型和生成预训练进行优化;最后,它们通常会堆更多的注意力层来补偿稀疏表示,这使其很难与其他预训练好的模型一起使用,需要重新训练,消耗大量能源。

此外,稀疏注意力机制通常不足以解决常规注意力方法应用时所面临的所有问题,如指针网络。还有一些运算是无法稀疏化的,比如常用的 softmax 运算。

为了解决这些问题,来自谷歌、剑桥大学、DeepMind、阿兰 · 图灵研究所的研究者提出了一种新的 Transformer 架构——Performer。它的注意力机制能够线性扩展,因此能够在处理长序列的同时缩短训练时间。这点在 ImageNet64 等图像数据集和 PG-19 文本数据集等序列的处理过程中都非常有用。

论文链接:https://arxiv.org/pdf/2009.14794.pdf

Performer 使用一个高效的(线性)广义注意力框架(generalized attention framework),允许基于不同相似性度量(核)的一类广泛的注意力机制。该框架通过谷歌的新算法 FAVOR+( Fast Attention Via Positive Orthogonal Random Features)来实现,后者能够提供注意力机制的可扩展低方差、无偏估计,这可以通过随机特征图分解(常规 softmax-attention)来表达。该方法在保持线性空间和时间复杂度的同时准确率也很有保证,也可以应用到独立的 softmax 运算。此外,该方法还可以和可逆层等其他技术进行互操作。

研究者表示,他们相信该研究为注意力、Transformer 架构和核方法提供了一种新的思维方式。

代码地址:https://github.com/google-research/google-research/tree/master/performer

论文公布之后,Youtube 知名深度学习频道 Yannic Kilcher 对该文章进行了解读。

广义的注意力机制

在以往的注意力机制中,分别对应矩阵行与列的 query 和 key 输入相乘,通过 softmax 计算形成一个注意力矩阵,以存储相似度系数。值得注意的是,这种方法不能将 query-key 生成结果传递给非线性 softmax 计算之后再将其分解为原始的 query 和 key。然而,将注意力矩阵分解为原始 query 和 key 的随机非线性函数的乘积是可以的,即所谓的随机特征(random feature),这样就可以更加高效地对相似度信息进行编码。

标准注意力矩阵包括每一对 entry 的相似度系数,由 query 和 key 上的 softmax 计算组成,表示为 q 和 k。

常规的 softmax 注意力可以看作是由指数函数和高斯投影定义的非线性函数的一个特例。在这里我们也可以反向推理,首先实现一些更广义的非线性函数,隐式定义 query-key 结果中其他类型的相似性度量或核函数。研究者基于早期的核方法(kernel method),将其定义为广义注意力(generalized attention)。尽管对于大多核函数来说,闭式解并不存在,但这一机制仍然可以应用,因为它并不依赖于闭式解。

该研究首次证明了,任意注意力矩阵都可以通过随机特征在下游 Transformer 应用中实现有效地近似。实现这一点的的新机制是使用正随机特征,即原始 query 和 key 的正直非线性函数,这对于避免训练过程中的不稳定性至关重要,并实现了对常规 softmax 注意力的更准确近似。

新算法 FAVOR+:通过矩阵相关性实现快速注意力

上文描述的分解允许我们以线性而非二次内存复杂度的方式存储隐式注意力矩阵。我们还可以通过分解获得一个线性时间注意力机制。虽然在分解注意力矩阵之后,原始注意力机制与具有值输入的存储注意力矩阵相乘以获得最终结果,我们可以重新排列矩阵乘法以近似常规注意力机制的结果,并且不需要显式地构建二次方大小的注意力矩阵。最终生成了新算法 FAVOR+。

左:标准注意力模块计算,其中通过执行带有矩阵 A 和值张量 V 的矩阵乘法来计算最终的预期结果;右:通过解耦低秩分解 A 中使用的矩阵 Q′和 K′以及按照虚线框中指示的顺序执行矩阵乘法,研究者获得了一个线性注意力矩阵,同时不用显式地构建 A 或其近似。

上述分析与双向注意力(即非因果注意力)相关,其中没有 past 和 future 的概念。对于输入序列中没有注意前后 token 的单向(即因果)注意力而言,研究者稍微修改方法以使用前缀和计算(prefix-sum computation),它们只存储矩阵计算的运行总数,而不存储显式的下三角常规注意力矩阵。

左:标准单向注意力需要 mask 注意力矩阵以获得其下三角部分;右:LHS 上的无偏近似可以通过前缀和获得,其中用于 key 和值向量的随机特征图的外积(outer-product)前缀和实现动态构建,并通过 query 随机特征向量进行左乘计算,以在最终矩阵中获得新行(new row)。

性能

研究者首先对 Performer 的空间和时间复杂度进行基准测试,结果表明,注意力的加速比和内存减少在实证的角度上近乎最优,也就是说,这非常接近在模型中根本不使用注意力机制的情况。

在以时间(T)和长度(L)为度量的双对数坐标轴中,常规 Transformer 模型的双向 timing。

研究者进一步证明,使用无偏 softmax 近似,该 Performer 模型在稍微进行微调之后可以向后兼容预训练 Transformer 模型,从而在提升推理速度的同时降低能耗,并且不需要从头训练预先存在的模型。

在 One Billion Word Benchmark (LM1B) 数据集上,研究者将原始预训练 Transformer 的权重迁移至 Performer 模型,使得初始非零准确度为 0.07(橙色虚线)。但在微调之后,Performer 的准确度在很少的梯度步数之后迅速恢复。

应用示例:蛋白质建模

蛋白质具有复杂的 3D 结构,是生命必不可少的拥有特定功能的大分子。和单词一样,蛋白质可以被看做线性序列,每个字符代表一种氨基酸。将 Transformers 应用于大型未标记的蛋白质序列语料库,生成的模型可用于精确预测折叠功能大分子。正如该研究理论结果所预测的那样,Performer-ReLU 在蛋白质序列数据建模方面表现良好,而 Performer-Softmax 与 Transformer 性能相媲美。

Performer 在蛋白质序列建模时的性能。

下面可视化一个蛋白质 Performer 模型,该模型使用基于 ReLU 的近似注意力机制进行训练。研究者发现,Performer 的密集注意力近似有可能捕捉到跨多个蛋白质序列的全局相互作用。作为概念的证明,研究者在串联蛋白长序列上训练模型,这使得常规的 Transformer 模型内存过载。但由于具有良好的空间利用效率,Performer 不会出现这一问题。

左:从注意力权重估计氨基酸相似性矩阵。该模型可以识别高度相似的氨基酸对,例如 (D,E) 和 (F,Y)。

Performer 和 Transformer 在长度为 8192 的蛋白质序列上的性能。

随着 Transformer 的频繁跨界,越来越多的研究者开始关注其内存占用和计算效率的问题,比如机器之心前段时间介绍的《抛弃注意力,比 EfficientNet 快 3.5 倍,类 Transformer 新模型跨界视觉任务实现新 SOTA 》。在那篇文章中,研究者提出了一种名为「lambda」的层,这些层提供了一种捕获输入和一组结构化上下文元素之间长程交互的通用框架。类似的改进还在不断涌现,我们也将持续关注。

参考链接:http://ai.googleblog.com/2020/10/rethinking-attention-with-performers.html

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

本文分享自 机器学习算法与Python学习 微信公众号,前往查看

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
谷歌 | 大改Transformer注意力,速度、内存利用率都大幅度提升(附源代码)
Google介绍了Performance,Transformer体系结构,它可以估计具有可证明精度的正则(Softmax)full-rank-attention Transformers,但只使用线性(相对于二次)空间和时间复杂度,而不依赖任何先验,如稀疏性或低秩。为了近似Softmax注意内核,Performers使用一种新的快速注意通过 positive Orthogonal 随机特征方法(FAVOR+),这可能是独立的兴趣可伸缩的内核方法。FAVOR+还可用于有效地模拟Softmax以外的核注意力机制。这种代表性的力量是至关重要的,以准确地比较Softmax与其他内核首次在大规模任务,超出常规Transformer的范围,并研究最优的注意-内核。Performers是完全兼容正则Transformer的线性结构,具有很强的理论保证:注意矩阵的无偏或几乎无偏估计、均匀收敛和低估计方差。
计算机视觉研究院
2020/10/30
9590
谷歌 | 大改Transformer注意力,速度、内存利用率都大幅度提升(附源代码)
自己挖坑自己填,谷歌大改Transformer注意力,速度、内存利用率都提上去了
机器之心报道 机器之心编辑部 考虑到 Transformer 对于机器学习最近一段时间的影响,这样一个研究就显得异常引人注目了。 Transformer 有着巨大的内存和算力需求,因为它构造了一个注意力矩阵,需求与输入呈平方关系。谷歌大脑 Krzysztof Choromanski 等人最近提出的 Performer 模型因为随机正正交特性为注意力矩阵构建了一个无偏的估计量,可以获得线性增长的资源需求量。这一方法超越了注意力机制,甚至可以说为下一代深度学习架构打开了思路。 自面世以来,Transforme
机器之心
2023/03/29
5160
自己挖坑自己填,谷歌大改Transformer注意力,速度、内存利用率都提上去了
谷歌联手DeepMind提出Performer:用新方式重新思考注意力机制
Transformer 模型在很多不同的领域都取得了SOTA,包括自然语言,对话,图像,甚至音乐。每个 Transformer 体系结构的核心模块是 Attention 模块,它为一个输入序列中的所有位置对计算相似度score。
新智元
2020/10/29
4620
深度学习进阶篇7:Transformer模型长输入序列、广义注意力、FAVOR+快速注意力、蛋白质序列建模实操。
基于Transformer模型在众多领域已取得卓越成果,包括自然语言、图像甚至是音乐。然而,Transformer架构一直以来为人所诟病的是其注意力模块的低效,即长度二次依赖限制问题。随着输入序列长度的增加,注意力模块的问题也越来越突出,算力和内存消耗是输入序列长度的平方。
汀丶人工智能
2023/05/31
8080
深度学习进阶篇7:Transformer模型长输入序列、广义注意力、FAVOR+快速注意力、蛋白质序列建模实操。
谷歌Transformer再升级——新模型实现性能、速度双提升,发展潜力巨大
“数据猿年度重磅活动预告:2020年度金猿策划活动(金猿榜单发布+金猿奖杯颁发)即将推出,尽情咨询期待!
数据猿
2020/11/09
9580
谷歌Transformer再升级——新模型实现性能、速度双提升,发展潜力巨大
论文推荐:Rethinking Attention with Performers
重新思考的注意力机制,Performers是由谷歌,剑桥大学,DeepMind,和艾伦图灵研究所发布在2021 ICLR的论文已经超过500次引用
deephub
2023/02/01
5790
在注意力中重新思考Softmax:分解非线性,这个线性transformer变体实现多项SOTA
机器之心报道编辑:杜伟、陈萍 来自商汤、上海人工智能实验室等机构的研究者用线性 COSFORMER 来取代 transformer 中的 softmax 注意力机制,在多项任务上达到最优。 Transformer 在自然语言处理、计算机视觉和音频处理方面取得了巨大的成功。作为其核心组件之一,softmax 注意力有助于捕获长程依赖关系,但由于序列长度的二次空间和时间复杂度而禁止其扩展。研究者通常采用核(Kernel)方法通过逼近 softmax 算子来降低复杂度。然而,由于近似误差,它们的性能在不同的任务
机器之心
2022/03/04
1K0
A Survey of Transformer 一篇Transformer综述(上)
Transformer现在是一种在各个领域被广泛使用的模型,包括NLP,CV,语音领域。随着这几年发展,一些Transformer的变体在以下几个方面进行改进:
BBuf
2021/07/01
1.8K0
A Survey of Transformer 一篇Transformer综述(上)
ICLR 2025 | 极性感知线性注意力!哈工深张正团队提出PolaFormer视觉基础模型
本文一作孟维康是哈尔滨工业大学(深圳)与鹏城实验室联合培养的博士生,本科毕业于哈尔滨工业大学,主要研究方向是大规模基础模型的高效训练和推理算法研究。
机器之心
2025/02/03
1610
ICLR 2025 | 极性感知线性注意力!哈工深张正团队提出PolaFormer视觉基础模型
谷歌研究院出品:高效 Transformer 模型最新综述
近年来,基于自注意力机制的 Transformer 模型在自然语言处理、计算机视觉、强化学习等领域的学术研究中取得了巨大进展。例如,在自然语言处理领域,Transformer 已经成为了现代深度学习技术体系中不可或缺的重要组件。
AI科技评论
2021/01/08
1.9K0
谷歌研究院出品:高效 Transformer 模型最新综述
Bert不完全手册9. 长文本建模 BigBird & Longformer & Reformer & Performer
这一章我们来唠唠如何优化BERT对文本长度的限制。BERT使用的Transformer结构核心在于注意力机制强大的交互和记忆能力。不过Attention本身O(n^2)的计算和内存复杂度,也限制了Transformer在长文本中的应用。
风雨中的小七
2022/10/08
2K0
Bert不完全手册9. 长文本建模 BigBird & Longformer & Reformer & Performer
CNN再助力!CoaT:Co-Scale卷积-注意力图像Transformer
Co-Scale Conv-Attentional Image Transformers
Amusi
2021/04/23
1.3K0
CNN再助力!CoaT:Co-Scale卷积-注意力图像Transformer
Transformer可以不需要Softmax?Kakao提出了UFO-ViT,性能高,计算量还小
视觉Transformer已成为计算机视觉任务的重要模型之一。虽然它们优于之前的卷积神经网络,但其复杂度是与输入特征长度N呈二次关系。
CV君
2021/11/11
9760
Transformer可以不需要Softmax?Kakao提出了UFO-ViT,性能高,计算量还小
哈希算法、爱因斯坦求和约定,这是2020年的注意力机制
注意力机制是非常优美而神奇的机制,在神经网络「信息过载」的今天,让 NN 学会只关注特定的部分,无疑会大幅度提升任务的效果与效率。借助注意力机制,神经机器翻译、预训练语言模型等任务获得了前所未有的提升。
机器之心
2020/04/01
8200
哈希算法、爱因斯坦求和约定,这是2020年的注意力机制
全新近似注意力机制HyperAttention:对长上下文友好、LLM推理提速50%
Transformer 已经成功应用于自然语言处理、计算机视觉和时间序列预测等领域的各种学习任务。虽然取得了成功,但这些模型仍面临着严重的可扩展性限制,原因是对其注意力层的精确计算导致了二次(在序列长度上)运行时和内存复杂性。这对将 Transformer 模型扩展到更长的上下文长度带来了根本性的挑战。
机器之心
2023/11/14
3420
全新近似注意力机制HyperAttention:对长上下文友好、LLM推理提速50%
ICLR'22 | cosFormer:重新思考注意力机制中的Softmax
每天给你送来NLP技术干货! ---- 来自:我爱计算机视觉 作者:多模态研究组 - 商汤 导读:Transformer在自然语言处理、计算机视觉和音频处理方面取得了巨大成功。作为其核心组成部分之一,Softmax Attention模块能够捕捉长距离的依赖关系,但由于Softmax算子关于序列长度的二次空间和时间复杂性,使其很难扩展。 针对这点,研究者提出利用核方法以及稀疏注意力机制的方法来近似Softmax算子,从而降低时间空间复杂度。但是,由于误差的存在,效果往往不尽如人意。 商汤多模态研究组认为,
zenRRan
2022/03/29
6540
万字长文带你入门Transformer
Transformer在许多的人工智能领域,如自然语言处理(Natural Language Processing, NLP)、计算机视觉(Computer Vision, CV)和语音处理(Speech Processing, SP)取得了巨大的成功。因此,自然而然的也吸引了许多工业界和学术界的研究人员的兴趣。到目前为止,已经提出了大量基于Transformer的相关工作和综述。本文基于邱锡鹏[1]老师团队近日所发表的一篇综述[2]为基础,详细的解读Transformer的来龙去脉,同时为大家介绍近期一些相关工作,中间也会穿插一些笔者的见解。最后,本文也将列出一些可探索的未来研究方向,希望能给予读者一些启发。
AIWalker
2021/07/05
2.3K0
万字长文带你入门Transformer
A Survey of Transformer 一篇Transformer综述(下)
事实上注意力矩阵的秩是小于序列长度的,而序列特别短的时候,会造成over-parameterization,甚至过拟合。
BBuf
2021/07/01
1.1K0
A Survey of Transformer 一篇Transformer综述(下)
即插即用 | 清华大学提出Focused Linear Attention取代Self-Attention成为ViT的新宠
本文首发于 【集智书童】,白名单账号转载请自觉植入本公众号名片并注明来源,非白名单账号请先申请权限,违者必究。
集智书童公众号
2023/09/04
1.7K0
即插即用 | 清华大学提出Focused Linear Attention取代Self-Attention成为ViT的新宠
BERTology遇上生物学:深入理解蛋白质语言模型中的注意力机制
今天给大家介绍Salesforce Research投稿在ICLR2021上的一项工作。在很多蛋白质任务中,Transformer模型被用来学习蛋白质的有效表示形式,但是这些表示形式在可解释性方面提出了挑战。针对这个问题,作者通过分析Transformer的内部工作原理,探索了Transformer模型如何识别蛋白质的结构和功能特性,并展示了注意力机制和蛋白质结构之间相互作用的三维可视化。实验结果表明,作者的发现与已知的生物学过程相吻合,并提供了一个工具用以辅助蛋白质工程和合成生物学。
DrugAI
2021/02/02
1.2K0
BERTology遇上生物学:深入理解蛋白质语言模型中的注意力机制
推荐阅读
谷歌 | 大改Transformer注意力,速度、内存利用率都大幅度提升(附源代码)
9590
自己挖坑自己填,谷歌大改Transformer注意力,速度、内存利用率都提上去了
5160
谷歌联手DeepMind提出Performer:用新方式重新思考注意力机制
4620
深度学习进阶篇7:Transformer模型长输入序列、广义注意力、FAVOR+快速注意力、蛋白质序列建模实操。
8080
谷歌Transformer再升级——新模型实现性能、速度双提升,发展潜力巨大
9580
论文推荐:Rethinking Attention with Performers
5790
在注意力中重新思考Softmax:分解非线性,这个线性transformer变体实现多项SOTA
1K0
A Survey of Transformer 一篇Transformer综述(上)
1.8K0
ICLR 2025 | 极性感知线性注意力!哈工深张正团队提出PolaFormer视觉基础模型
1610
谷歌研究院出品:高效 Transformer 模型最新综述
1.9K0
Bert不完全手册9. 长文本建模 BigBird & Longformer & Reformer & Performer
2K0
CNN再助力!CoaT:Co-Scale卷积-注意力图像Transformer
1.3K0
Transformer可以不需要Softmax?Kakao提出了UFO-ViT,性能高,计算量还小
9760
哈希算法、爱因斯坦求和约定,这是2020年的注意力机制
8200
全新近似注意力机制HyperAttention:对长上下文友好、LLM推理提速50%
3420
ICLR'22 | cosFormer:重新思考注意力机制中的Softmax
6540
万字长文带你入门Transformer
2.3K0
A Survey of Transformer 一篇Transformer综述(下)
1.1K0
即插即用 | 清华大学提出Focused Linear Attention取代Self-Attention成为ViT的新宠
1.7K0
BERTology遇上生物学:深入理解蛋白质语言模型中的注意力机制
1.2K0
相关推荐
谷歌 | 大改Transformer注意力,速度、内存利用率都大幅度提升(附源代码)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档