Transformer不注意:gMLP将被激活!
三个要点
✔️ 修改transformer架构,只使用MLPs。
✔️ 在视觉和NLP任务上同样有效。
✔️ 性能优于或与目前的transformer模型相当。
Pay Attention to MLPs
written by Hanxiao Liu, Zihang Dai, David R. So, Quoc V. Le
(Submitted on 17 May 2021 (v1), last revised 1 Jun 2021 (this version, v2))
Comments: Accepted by arxiv.
Subjects: Machine Learning (cs.LG); Computation and Language (cs.CL); Computer Vision and Pattern Recognition (cs.CV)
code:![]()
首先
Transformer已经在NLP和计算机视觉领域被广泛接受。它们已经成功地取代了RNNs,并有可能在不久的将来取代CNNs。自我关注机制是transformer的核心所在。它为transformer提供了一个归纳的偏向,因为它们可以根据输入表征动态地进行参数化。尽管如此,MLPs被认为是通用的近似器,在理论上,它们的静态表示应该能够学习任何东西。
在本文中,我们介绍了一种新的无注意力的transformer,它利用了具有乘法门控的MLP,称为 "gMLP"。在对关键的视觉和NLP任务进行测试时,这些transformer能够实现与最先进的transformer相媲美的性能。就像transformer一样,这些模型的性能随着模型大小的增加而提高,一个足够大的模型可以适合任何数据。
建议模型:gMLP
该模型由一叠L个相同的块组成。每个区块的情况如下。
Z = σ(XU)
Z' = s(Z)
Y = Z'V
其中σ是一个激活函数,如GELU,和X ∈ Rnxd是输入表示,n是输入序列的长度,d是隐藏通道的维度;U和V是线性变换。函数's(.)'捕捉空间相互作用,当它是一个恒定的函数时,它就像一个前馈网络(FFN)。
它应用与BERT相同的输入和输出格式,为分类任务使用相同的<cls>标记,并进行类似的填充。然而,位置信息是在 "s(.) "内捕获的。因此,位置嵌入对于gMLP来说是不需要的。
空间门控单元(SGU
函数s(.)。的选择应使代币之间的互动最大化。最简单的选择是线性投影。
F = WZ+b
其中W是一个大小为nxn的矩阵,n是阵列的长度。矩阵Z沿通道维度被划分为两部分(Z1,Z2),与GLU中一样,Z1和Z2被划分为两部分。一部分使用F进行转换。所得的投影与另一个分区的部分相乘,作为一个门。事实证明,我们需要将权重W初始化为非常接近于0,b等于1。这允许S(.)最初将作为一个身份操作。
图像分类
gMLP是在ImageNet上训练的,没有使用任何外部数据,并且是基于最近的视觉transformergMLP已经建立在三种不同规模的架构上,具体如下。
与ViT一样,图像被转换为16x16的斑块,并像DeiT一样使用正则化来防止过度拟合。除了调整随机深度的生存概率,我们也没有在三个模型之间进行过度的模型调整。
上面的图显示了无人关注模型是自我注意模式与自我关注模式一样有效。通过适当的正则化,准确率为注意更依赖于模型的大小,而不是使用
屏蔽式语言建模
屏蔽语言模型(MLM)被用来训练gMLP模型。输入/输出格式的构建与BERT类似;与BERT不同的是,<pad>标记不需要被屏蔽,因为模型可以学习立即忽略它。另外,在MLM中,输入序列中的任何偏移都不能影响模型产生的结果(称为移位不变性)。利用这个约束条件,SGU层的线性变换就像一个深度卷积,其中感受野覆盖整个序列。然而,与深度卷积不同的是,该层为所有通道学习相同的参数(W)。人们发现,gMLP可以自动学习移位变异,而不需要人工约束。
gMLP中门控的重要性
我们利用BERT的变化和SGU层的几个特征进行了消融研究。
我们可以看到,乘法拆分gMLP优于其他变体。另外,最强的BERT模型的性能可以通过扩展gMLP模型来匹配(在下一节讨论)。
gMLP的行为是由模型大小决定的
我们调查了模型的大小对性能的影响。然后我们在两个数据集上测试了这些模型:MNLI(多流派自然语言推理)和SST-2(斯坦福情感树库)。
从这个表格中可以看出,在每一种情况下,一个规模良好的gMLP都是transformer在每一种情况下。一般来说,我们发现,对于transformer和gMLP来说,困惑度和模型params(M)都服从一个幂律。
注意力在微调中的作用
本文到目前为止的证据表明,为了在MLM中取得良好的效果自我注意并不是在MLM中取得好成绩的绝对必要条件。尽管如此,上表显示,尽管gMLP模型在单句任务(如SST-2)中表现良好,但在处理多句任务时,如MNLI数据集的情况,它的表现很差。因此,我们使用跨句子对齐在自我注意在跨句子对齐中是很重要的。
为了证实这一猜测,该模型的门控函数有一个小的自我注意块上的门控功能的模型。我们称其为微小,因为它是一个单头层,大小为64,而正常模型有12个注意头,总大小为768。我们称这种混合模型为MLP(注意MLP)。
这样一来,细微的关注实际上是对模型的帮助,而AMLP是transformer和gMLP。
上表显示了BERT、gMLP和aMLP的最终比较;我们可以看到,对于SQUAD和MNLI这样的多句子任务,gMLP仍然表现得相当好,但aMLP则更有优势。对于大小为64至128的任务小注意头仅仅通过使用以下方法就可以达到令人惊讶的效果
摘要
我们已经看到,一个足够大的gMLP可以胜过带有自我关注的transformer。此外,增加一些自我关注,就不需要对模型进行扩展。尽管transformer很成功,但目前还不清楚是什么让它们如此有效。本文揭示了注意力其实并不是一个大的因素,微量的注意力就足够了。更好地理解transformer的基本组成部分将有助于在未来建立更好的模型。
与本文相关的类别