谷歌Transformer再升级——新模型实现性能、速度双提升,发展潜力巨大

当我们在翻译软件上输入 “Transformer is a novel neural network architecture based on a self-attention mechanism” 后,计算机就可以迅速将它翻译为 “Transformer 是一种基于自注意力机制的新型神经网络架构”,神奇的机器翻译使得多语种互译成为可能。

近年来,得益于机器学习的快速发展,自然语言处理(NLP)技术不断突破,在人机交互、在线翻译工具等领域的应用层出不穷,不同语种的人与人、人与机器之间的无障碍自由交流得以实现。

当前的主流机器翻译主要是基于神经网络机器翻译,这类方法是一个 “编码器-解码器”(encoder-decoder)架构的系统,编码器对源语言序列进行编码,并提取信息,然后通过解码器把信息转换为目标语言,完成语言翻译过程。

自 2017 年问世以来,基于“编码器-解码器”架构设计的 Transformer 模型凭借其优越的性能,已然成为机器翻译领域的主流模型,在深度学习领域产生了巨大影响。

然而,Transformer 模型并非完美,模型引入self-attention机制虽实现了快速并行的训练,但在长序列文本的处理问题上,却需要占据大量计算资源,导致模型训练成本提高。

近日,由 Google、剑桥大学、DeepMind 和艾伦·图灵研究院(Alan Turing Institute)的研究人员组成的团队基于正交随机特征的快速注意力(Fast Attention Via Positive Orthogonal Random Features,FAVOR+)机制,提出了一种新的 Transformer 模型——Performer。相比于 Transformer 模型,新模型无需做出过度调整就可以变得更加高效和节能。

Performer 模型的技术突破

2017 年,谷歌大脑(Google Brain)的 Ashish Vaswani 等人发表了一篇题为 “Attention Is All You Need” 的论文,首次提出一种基于自注意力机制的 Transformer 模型

Transformer 模型颠覆了传统神经网络的架构,弥补了卷积神经网络(CNN)和递归神经网络(RNN)存在的不足,在语义特征提取、长距离特征捕获、任务综合特征抽取自然语言处理方面表现出了更优的性能,在自然语言处理、人机对话、图像处理等许多领域都达到了当时最好的水平(SOTA)。

Transformer 架构的核心模块是自注意力模块,模型在处理每个单词(输入序列中的每个位置)时,自注意力模块通过计算输入序列中所有位置对的相似度分数,来寻找能够帮助更好地编码该单词的线索。

然而,随着输入序列长度的增加,模型需要二次方的计算时间来产生所有相似度分数,所需计算内存也随之增加,注意力机制面临的效率问题也越来越突出。

针对那些需要长距离关注的应用,在 Transformer 基础上已经有一些研究者提出了几种快速的、空间利用率高的改进方法,但是大部分常见方法都依赖于稀疏注意力机制

然而,稀疏注意力机制仍存在一定的局限性。

(1)它们需要高效的稀疏矩阵乘法运算,而这些运算并不是在所有加速器上都能实现的;

(2)它们通常不能为其表示能力提供严格的理论保证;

(3)它们主要针对 Transformer 模型和生成式预训练进行优化;

(4)它们通常会叠加更多的注意力层来补偿稀疏表示,这使得它们很难与其他预训练模型一起使用,因此需要重新训练并消耗大量能量。


此外,稀疏注意机制通常仍然不足以解决常规注意方法应用的全部问题,如指针网络。还有一些运算不能被稀疏化,如在工业级推荐系统中被大量应用的 softmax 运算。

Performer 使用了一个高效的(线性)广义注意力框架,能够对常规(softmax)全阶注意力进行可证明的、准确的、实用的估计,不依赖于任何稀疏性或低阶等先验条件,从而实现更快的训练速度,同时允许模型处理更长的序列,这一特性恰恰满足了 ImageNet64 图像数据集和PG-19文本数据集的要求。

Performer 模型通过正交随机特征(FAVOR+)算法实现快速注意力机制,并改用 Positive Orthogonal Random Features 估计 softmax 和高斯核函数,以实现在 FAVOR+ 机制中对常规 softmax 注意力进行鲁棒且无偏的估计。

研究人员表示:“Performer 是第一个通过微调可以与常规 Transformers 进行完全兼容的线性架构”

图 | 原点对称的通用函数 r(定义为建立在:三角随机特征和正随机特征上的估计器的均方误差(MSEs)的比值)是输入特征向量与其长度l之间的角度 φ(以弧度为单位)的函数, 函数的数值越大表示正随机特征性能越好的(φ,l)空间区域(左);当 l 为定值 1 时,与变化的角度 φ 构成的函数 r 为正切函数,以及比较低 softmax 内核值区域中两个估算器的 MSE(右)。

作者通过比较发现,对于 φ 足够大的临界区域,该方法所使用的正交随机特征比任意的三角随机特征更精确。

图 | 将原始的经过预训练的 Transformer 的权重转移到 Performer 中,Performer 产的精度达到 0.07 (橙色虚线),但在原来的梯度步数的一小部分中,很快就恢复了精度。

然而在 PG-19 上,三角法(TRIG)  softmax 逼近变得非常不稳定,而正特征(POS)(不重绘)和 Linformer (也是逼近 softmax)即使在重绘投影的情况下,也会在同样的复杂度中趋于平稳。具有特征重绘的正 softmax 是匹配 Transformer 的必要条件,SMREG 可实现更快的收敛

这篇论文利用详细的数学定理,证明了与其单纯依靠计算资源来提升性能,还不如开发出改进的、高效的 Transformer 架构,来显著降低能耗。同时,由于 Performers 使用了与 Transformer 相同的训练超参数,也可以有效训练基于 softmax 的线性 Transformer。因此 FAVOR+ 机制可以作为一个简单的插件,而无需进行过多的调整。

Performer 模型应用前景广泛

研究人员表示,Performer 模型的提出,显著降低了常规 Transformer 的空间和时间复杂度,并在 Transformer 的研究以及非稀疏注意机制的作用方面开辟了新的途径。

该论文利用详细的数学定理,证明了与其单纯依靠计算资源来提升性能,还不如开发出改进的、高效的 Transformer 架构,来显著降低能耗。同时,由于 Performers 使用了与 Transformer 相同的训练超参数,因此 FAVOR+ 机制可以作为一个简单的插件,而无需进行过多的调整。

该团队在一系列丰富的场景下测试了 Performers 的性能,执行的任务包括像素预测、蛋白质序列建模。在实验设置中,一个 Performer 只用 FAVOR+ 机制取代了常规 Transformer 的注意力组件。

在使用蛋白质序列训练一个 36 层模型的挑战性任务上,基于 Performer 的模型(Performer-RELU)的性能优于基线 Transformer 模型:Reformer 和 Linformer,后者的准确率显著下降。

在标准的 ImageNet64 基准上,具有 6 层的 Performer 与具有 12 层的 Reformer 的准确性相当。优化后,Performer 的速度达到了 Reformer 的两倍。

研究人员表示,由于基于 Performer 的可扩展 Transformer 架构可以处理更长的序列,而不受注意力机制结构的限制,同时保持准确和鲁棒性,相信它们可以在生物信息学领域带来新的突破,如蛋白质的语言建模等技术已经显示出强大的潜力。

代码地址:https://github.com/google-research/google-research/tree/master/performer
论文地址:https://arxiv.org/abs/2009.14794

参考资料:
https://ai.googleblog.com/2020/10/rethinking-attention-with-performers.html
https://syncedreview.com/2020/10/02/google-cambridge-deepmind-alan-turing-institutes-performer-transformer-slashes-compute-costs/
https://www.youtube.com/watch?v=xJrKIPwVwGM

AMiner学术头条
AMiner学术头条

AMiner平台由清华大学计算机系研发,拥有我国完全自主知识产权。系统2006年上线,吸引了全球220个国家/地区800多万独立IP访问,数据下载量230万次,年度访问量1000万,成为学术搜索和社会网络挖掘研究的重要数据和实验平台。

https://www.aminer.cn/
专栏二维码
工程谷歌Transforme
1
相关数据
DeepMind机构

DeepMind是一家英国的人工智能公司。公司创建于2010年,最初名称是DeepMind科技(DeepMind Technologies Limited),在2014年被谷歌收购。在2010年由杰米斯·哈萨比斯,谢恩·列格和穆斯塔法·苏莱曼成立创业公司。继AlphaGo之后,Google DeepMind首席执行官杰米斯·哈萨比斯表示将研究用人工智能与人类玩其他游戏,例如即时战略游戏《星际争霸II》(StarCraft II)。深度AI如果能直接使用在其他各种不同领域,除了未来能玩不同的游戏外,例如自动驾驶、投资顾问、音乐评论、甚至司法判决等等目前需要人脑才能处理的工作,基本上也可以直接使用相同的神经网上去学而习得与人类相同的思考力。

https://deepmind.com/
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

自注意力技术

自注意力(Self-attention),有时也称为内部注意力,它是一种涉及单序列不同位置的注意力机制,并能计算序列的表征。自注意力在多种任务中都有非常成功的应用,例如阅读理解、摘要概括、文字蕴含和语句表征等。自注意力这种在序列内部执行 Attention 的方法可以视为搜索序列内部的隐藏关系,这种内部关系对于翻译以及序列任务的性能非常重要。

核函数技术

核函数包括线性核函数、多项式核函数、高斯核函数等,其中高斯核函数最常用,可以将数据映射到无穷维,也叫做径向基函数(Radial Basis Function 简称 RBF),是某种沿径向对称的标量函数。最常应用于SVM支持向量机中

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

时间复杂度技术

在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。这是一个代表算法输入值的字符串的长度的函数。时间复杂度常用大O符号表述,不包括这个函数的低阶项和首项系数。使用这种方式时,时间复杂度可被称为是渐近的,亦即考察输入值大小趋近无穷时的情况。例如,如果一个算法对于任何大小为 n (必须比 n0 大)的输入,它至多需要 5n3 + 3n 的时间运行完毕,那么它的渐近时间复杂度是 O(n3)。

收敛技术

在数学,计算机科学和逻辑学中,收敛指的是不同的变换序列在有限的时间内达到一个结论(变换终止),并且得出的结论是独立于达到它的路径(他们是融合的)。 通俗来说,收敛通常是指在训练期间达到的一种状态,即经过一定次数的迭代之后,训练损失和验证损失在每次迭代中的变化都非常小或根本没有变化。也就是说,如果采用当前数据进行额外的训练将无法改进模型,模型即达到收敛状态。在深度学习中,损失值有时会在最终下降之前的多次迭代中保持不变或几乎保持不变,暂时形成收敛的假象。

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

推荐系统技术

推荐系统(RS)主要是指应用协同智能(collaborative intelligence)做推荐的技术。推荐系统的两大主流类型是基于内容的推荐系统和协同过滤(Collaborative Filtering)。另外还有基于知识的推荐系统(包括基于本体和基于案例的推荐系统)是一类特殊的推荐系统,这类系统更加注重知识表征和推理。

机器翻译技术

机器翻译(MT)是利用机器的力量「自动将一种自然语言(源语言)的文本翻译成另一种语言(目标语言)」。机器翻译方法通常可分成三大类:基于规则的机器翻译(RBMT)、统计机器翻译(SMT)和神经机器翻译(NMT)。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

卷积神经网络技术

卷积神经网路(Convolutional Neural Network, CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。卷积神经网路由一个或多个卷积层和顶端的全连通层(对应经典的神经网路)组成,同时也包括关联权重和池化层(pooling layer)。这一结构使得卷积神经网路能够利用输入数据的二维结构。与其他深度学习结构相比,卷积神经网路在图像和语音识别方面能够给出更好的结果。这一模型也可以使用反向传播算法进行训练。相比较其他深度、前馈神经网路,卷积神经网路需要考量的参数更少,使之成为一种颇具吸引力的深度学习结构。 卷积网络是一种专门用于处理具有已知的、网格状拓扑的数据的神经网络。例如时间序列数据,它可以被认为是以一定时间间隔采样的一维网格,又如图像数据,其可以被认为是二维像素网格。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

特征抽取技术

图像处理技术

图像处理是指对图像进行分析、加工和处理,使其满足视觉、心理或其他要求的技术。 图像处理是信号处理在图像领域上的一个应用。 目前大多数的图像均是以数字形式存储,因而图像处理很多情况下指数字图像处理。

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

人机交互技术

人机交互,是一门研究系统与用户之间的交互关系的学问。系统可以是各种各样的机器,也可以是计算机化的系统和软件。人机交互界面通常是指用户可见的部分。用户通过人机交互界面与系统交流,并进行操作。小如收音机的播放按键,大至飞机上的仪表板、或是发电厂的控制室。

推荐文章
暂无评论
暂无评论~