Pay Attention to MLPs
https://arxiv.org/abs/2105.08050 https://hub.fastgit.org/lucidrains/g-mlp-pytorch
Hanxiao Liu,Zihang Dai,David R. So,Quoc V. Le
Transformers已经成为深度学习中最重要的架构创新之一,并在过去几年中实现了许多突破。在这里,我们提出了一个简单的无注意网络结构gMLP,它完全基于带选通(gating)的MLPs,并且证明了它在关键的语言和视觉应用中的性能。我们的比较表明,自注意力对Visual Transformer来说并不重要,因为gMLP可以达到同样的精确度。对于BERT,我们的模型在预训练的复杂度上达到了与Transformer等价的水平,并且在一些下游任务上效果更好。在gMLP性能较差的微调任务中,使gMLP模型大得多就可以缩小与Transformer的差距。一般来说,我们的实验表明,gMLP可以随着数据和计算量的增加而扩展。
1.引言
Transformers[1]在自然语言处理方面取得了许多突破(例如[2,3,4,5,6]),并被证明能很好地用于计算机视觉(例如[7,8,9,10])。由于这一成功,Transformers在很大程度上取代了LSTM-RNN[11],成为NLP中的默认体系结构,并成为计算机视觉中ConvNets[12、13、14、15、16]的一个有吸引力的替代方案。
Transformers体系结构结合了两个重要的概念:(1)没有使用递归结构,而是并行计算每个token的表示,以及(2)聚合token间空间信息的多头自注意力块。一方面,注意机制[17]引入了归纳偏置,即模型可以基于输入表示动态地参数化(the inductive bias that the model can be dynamically parameterized based on the input representations)。另一方面,已知具有静态参数化的MLP可以表示任意函数[18]。因此,自注意力中的归纳偏置是否对Transformer的显著有效性至关重要,仍然是一个悬而未决的问题。
在这里,我们研究了自注意力模块在Transformer的关键语言和视觉应用中的必要性,并提出了一种无注意、基于MLP的Transformer替代方案,包括通道投影、空间投影和选通(图1)。我们对MLP类结构的几种设计选择进行了实验,发现当空间投影是线性的并且与乘法选通配对时,它们工作得很好(spatial projections work well when they are linear and paired with multiplicative gating)。我们把这个模型命名为gMLP,因为它是由基本的MLP层和选通构成的。
我们将gMLP应用于图像分类,在ImageNet上取得了很好的效果。在类似的训练设置中,gMLP实现了与DeiT[8]相当的性能,即通过改进正则化增强的视觉变换器(ViT)[7]。在减少66%参数的情况下,gMLP模型比MLP-Mixer的精度高3%[19]。与Tolstikhin等人[19]、Melas Kyriazi[20]和Touvron等人[21]一起,我们的研究结果质疑了视觉Transformer中自注意力层的必要性。
我们将gMLP应用到BERT[2]设置中的屏蔽语言建模(MLM)中,这是Transformer最成熟的应用之一,并且发现它与Transformer一样能够在预训练最小化困惑度(perplexity)。我们的实验表明,困惑度(perplexity)只与模型容量相关,对注意力的存在不敏感。随着容量的增加,我们观察到gMLP的预训练和微调指标的改善速度与Transformer一样快。这是值得注意的,因为它表明gMLPs的规模和Transformer一样好,尽管没有自注意力,任何性能差距总是可以通过训练一个更大的模型并增加数据和计算来抵消。在标准的256批量大小、× 1M步的训练设置,和原来的BERT一样,我们的MLP-like模型在MNLI上达到86.4%的准确率,在SQuAD v1.1上达到89.5%的F1。注意:这些结果与Devlin等人[2]报告的使用Transformer获得的结果相当。
对于BERT的微调,Transformers在需要跨句对齐的任务上比gMLPs更具实际优势(例如,MNLI的优势为1.8%),即使容量和预训练的困惑度(perplexity)是相似的。这个问题可以通过使gMLPs大很多来解决:3× as large as Transformers。一个更实际的解决方案是只混合一点点注意力——一个大小达128的单头注意力足以使gMLPs在我们评估的所有NLP任务中都优于Transformers,而且参数效率更高。这种改进有时非常显著(例如,在我们的实验中,在SQuAD v2.0上比Bertlave提高了4.4%)。
gMLPs的有效性、自注意力在视觉任务中益处的不足,以及在NLP中特定案例下才带来益处,使人们对跨域的注意力机制的必要性产生了质疑。总的来说,我们的研究结果表明,自注意力并不是扩大(scaling up)机器学习模型的必要因素。随着数据和计算量的增加,具有简单空间交互机制(如gMLP)的模型可以像Transformer一样强大,分配给自注意力的容量(capacity)可以被移除或大大降低。
2 模型
我们的模型gMLP由一堆大小和结构相同的个块组成。让
为token表示,其序列长度为
,维度为
。每个块定义为
其中是一个激活函数,如GeLU[22]。
和
定义沿通道维度的线性投影-与Transformers中的FFN中的投影相同(例如,在BERTbase中,它们的形状为768× 3072和3072×768)。为了简洁起见,跳连、归一化和偏置项被省略。
上述公式中的一个关键成分是,一个捕捉空间相互作用的层(见下文)。当s是恒等映射时,上述转换退化为常规FFN,其独立地处理单个token而不进行任何token间的信息交互。因此,我们的一个主要关注点是设计一个能够捕获token间复杂的空间交互的好的
。整个块布局的灵感来源于inverted bottlenecks[23],它将
定义为空间深度卷积。注意,与Transformer不同,我们的模型不需要位置嵌入,因为这些信息将在
中捕获。
我们的模型使用与BERT(用于NLP)和ViT(用于vision)完全相同的输入和输出格式。例如,当对语言任务进行微调时,我们将多个分段拼接在一起,分段后面有padding,并且预测是从保留的<cls>符号的最后一层表示中推导出来的。尽管这些协议中有许多是为Transformers引入的,因此对于gMLPs来说可能不是最优的,但是严格遵循它们有助于避免实验中的混淆因素,并使我们的层与现有的Transformers实现更加兼容。
2.1 空间选通单元
为了实现token间的交互,层必须包含空间维度上的收缩操作。最简单的选择是线性投影:
其中是一个矩阵,其size与序列长度
相同,
是一个偏置项,它可以是一个矩阵,也可以是一个标量。例如,如果输入序列具有128个tokens,则空间投影矩阵
的形状将是128×128。在这项工作中,我们将空间交互单元定义为其输入和空间变换输入的乘积:
其中表示按元素乘法。对于训练稳定性,我们发现将
初始化为接近零值,将
初始化为1是非常关键的,这意味着公式
中定义的
在训练开始时近似为一个恒等映射。这种初始化确保每个gMLP块在训练的早期阶段表现得像一个常规的FFN,其中每个token都是独立处理的,并且只是逐渐地注入token之间的空间信息。
乘法选通可被视为使用空间信号“调制”单个token表示的机制。换句话说,中每个元素的大小(magnitude)可以根据选通函数
快速调整。
我们进一步发现,对于选通函数和乘法旁路,沿着通道维度将分成两个独立部分
是有效的,这在GLUs中是典型的:
我们还归一化了的输入,这是经验上提高了大型NLP模型的稳定性。这样我们就有了图1所示的单元,在本文的其余部分中我们称之为空间选通单元(SGU)。在表3中,我们提供了烧蚀研究来比较SGU和其他几种
的变体,表明它工作得更好,并缩小了与自注意力的表现差距。
点评 SGU的整体配方与门控线性单元(GLU)密切相关[24,25,26]。一个关键的区别是,我们的选通是基于空间维度(在不同的token之间)而不是通道维度(每个token)来计算的。在元素级乘法交互方面,它也类似于挤压和激发块[27],但SGU没有做池化,而是允许可学习的空间变换。SGU中的空间投影可以学习表示表面深度卷积(superficial depthwise convolutions)。与典型的深度卷积不同(每个通道都有单独的滤波核),SGU在各个通道上只学习一个共享的变换。最后,我们注意到SGU提供了一种除自注意力之外的另一种方法来捕捉高阶关系。具体而言,公式的输出包含高达二阶的相互作用(up to 2nd-order interactions),例如,
,而自注意力的输出(假设没有非线性)包含高达三阶的相互作用(例如,
)。在计算成本方面,SGU有
乘加,与点积注意的
相当。两者都相对于输入通道是线性的,相对于序列长度
上是二次的。(注释1:SGU的输入通道大小
通常大于自注意力的输入通道大小
,因为前者用于块中间通道扩展后。)
3 图像分类
本文将gMLP应用到ImageNet上的图像分类任务中,不使用额外的数据,研究了gMLP在视觉领域的应用。我们将我们的无注意力模型与最近基于vanilla Transformer的有注意模型进行了比较,包括视觉Transformer(ViT)[7]、DeiT[8](对ViT改进正则化)以及其他几种具有代表性的卷积网络。
表1 总结了我们的gMLP图像分类模型的配置。输入和输出协议遵循ViT/B16,其中原始图像在网络的柄(stem)被转换为16×16个patches。深度和宽度的选择是使模型在容量上与ViT/DeiT相当。与Transformer一样,我们发现gMLP倾向于大幅过度拟合训练数据。因此,我们采用了与DeiT中使用的正则化方法相似的正则化方法。为了避免广泛的调整,当我们从表1中的较小模型移动到较大模型时,我们仅调整随机深度的强度[28]。所有其他超参数在我们的三个模型中保持共享。详见附录A.1。(注释2:与DeiT不同,我们不使用repeated augmentation或random erasing。)
我们的ImageNet结果总结在表2和图2中。有趣的是,gMLPs与DeiT[8](即使用改进正则化训练的ViT[7])相当。结果表明,无注意力模型可以像Transformer一样有效地进行图像分类。事实上,当模型被适当地正则化时,它们的准确度似乎与模型容量有更好的相关性,而不像之前的注意力机制一样。此外,gMLPs的精度参数/FLOPs权衡超过了所有同时提出的类似MLP的架构[19,20,21],我们将其归因于我们的空间选通单元的有效性(见下一节中的表3)。我们还注意到,虽然gMLPs与vanilla Transformers相比具有竞争力,但它们的性能落后于现有最好的ConvNet模型(如[29,30])或混合型注意力模型(如[31,10,32,33])。(笔者注:[29]是NFNet,[30]是EfficientNetV2,[31]是LambdaNetworks,[10]是Hierarchical vision transformer using shifted windows,[32]是HaloNets,[33]是Bottleneck transformers for visual recognition)
图3显示了gMLP-B中的空间投影矩阵。值得注意的是,学习后的空间权值具有局部性和空间不变性(locality and spatial invariance)。换句话说,每个空间投影矩阵有效地学习到去执行卷积,该卷积是数据驱动的,核形状是不规则的(非方形)(perform convolution with a data-driven, irregular (non-square) kernel shape)
4 用BERT进行屏蔽语言建模
本文对屏蔽语言建模任务进行了实证研究。预训练和微调的输入/输出格式按照BERT[2]。与基于Transformer的模型不同,我们不使用位置编码。我们还发现,在微调过程中,没有必要掩盖gMLP块中的<pad>,因为模型可以很快学会忽略它们。对于烧蚀和案例研究,所有模型都以批量2048训练,最大长度为128,在C4的RealNews类子集上执行125K步[5]。对于主要结果,使用批量大小为256、最大长度为512的模型在完整的英语C4数据集上进行1M步的训练。详见附录A.2。
对于MLM任务,平移不变性是一个理想的属性,因为输入序列的任何偏移都不应影响slot filling结果。这个性质意味着Toeplitz空间权重矩阵W。我们在MLM实验中采用了这个约束,因为它减少了模型参数,并且在经验上对质量或效率的影响可以忽略不计。(注释3:这是因为即使没有这个约束,gMLP也将学习移位不变性(附录C中的图9)。)在这种情况下,类似于宽的深度卷积,其感受野覆盖整个序列。然而,与深度卷积在每个通道都有专门的卷积核不同,我们只学习通道间共享的单个
。
4.1 消融:gMLP门控对BERT预训练的重要性
在下面的表3中,我们为消融研究建立了基线。其中包括:
—— 具有Transformer结构和可学习的绝对位置嵌入的BERT。
—— 具有Transformer结构和T5风格的可学习相对位置偏置的BERT[5]。每个层和每个头都有专门的偏置(也即不共享),因为我们发现这会产生最好的结果。
—— 和上面的一样,不过我们移除softmax里所有的content-dependent项,只保留relative positional biases,这个基线是值得关注的,因为其可被看做是Transformers的一种直接的无注意力的变体,也可以被看做是一种Synthesizer[35]。
表3中,我们将这些基线与具有相似大小的几个版本的gMLPs进行比较。请注意,Multiplicative, Split (最后一行)是我们在方法那一节中描述的空间选通单元,并在本文的其余部分中使用。首先,SGU在困惑度(perplexity)方面优于其他变体。其次,值得注意的是,带SGU的gMLP也达到了类似于Transformer的困惑度(perplexity)。请注意,当模型被缩放时,最强基线(困惑度(perplexity)度=4.26)和我们的基线(困惑度(perplexity)度=4.35)之间的差异是不显著的,relative to the perplexity change when the models are scaled(见下一节中的表4)。gMLPs学习的空间投影权重如图4所示。
4.2 案例研究:gMLP随模型增大的表现
在表4中,我们研究了BERT中Transformer和gMLP的缩放特性随模型容量的增长。具体来说,我们将这些模型的深度按{0.5,1,2,4}的因子进行缩放,并在GLUE[36]中报告他们在预训练对验证集的困惑度以及对两个任务的开发集的微调结果。注:每个Transformer层实际上是两个连续的块:一个用于自注意力,另一个用于FFN。在下表中,我们使用12+12表示Transformer基线中的12个注意块加上12个FFN块。
以上结果表明,足够深的gMLP能够匹配甚至优于容量相当的Transformer的复杂度。(注释4:我们还试验了deeper-and-thinner Transformers (with capacity fixed),但发现进一步增加深度并不能改善困惑。详见附录B。)此外,两种结构族的复杂度参数关系近似遵循幂律(power law)(图5左侧)。这意味着最初为基于Transformer语言模型观察到的经验上的缩放规律[37 Scaling laws for neural language models,2020]可能广泛适用于不同的模型族。
表4还导致了一个有趣的观察结果,即不同模型族的预训练困惑度(perplexity)在微调方面并不相等。虽然gMLPs在SST-2上的性能优于Transformer,但在MNLI上的性能较差。结果表明,NLP任务的微调性能不仅与结构中的复杂度有关,而且与结构中的归纳偏置有关。图5显示,尽管预训练和微调之间存在特定于体系结构的差异,但gMLPs和Transformers在这两个微调任务上表现出可比较的可伸缩性(slope)。这意味着人们总是可以通过扩大模型容量来弥补差距。换句话说,研究结果表明,模型相对于下游指标的可伸缩性可以独立于自注意力的存在。
4.3 消融: 微小的注意力在BERT的微调中的作用
到目前为止,我们已经发现,要实现强大的MLM困惑度(perplexity)或可扩展性,自注意力不是一个必要的组成部分。同时,我们还确定了NLP微调任务,其中gMLP迁移不如Transformer(表4)。我们的无注意模型对SST-2有利,但对MNLI不利,这一事实尤其具有信息价值,前者是一个单句任务,而后者涉及句子对(前提和假设)[38]。我们怀疑自注意力在微调过程中的作用与跨句对齐有关。
为了分离注意的影响,我们用一个混合模型进行了实验,在这个模型中,一个微小的自注意力块附着在gMLP的门控功能上(图6)。由于gMLP本身已经能够捕捉空间关系,我们假设这个额外的注意模块不一定很多参数,而且它的存在比它的能力更相关。在我们的实验中,一个典型的微小注意模块只有一个大小为64的单头,明显小于Transformer中一个典型的多头注意模块(12头,总大小为768)。下面,我们将混合模型,即具有微小注意的gMLP称为aMLP(“a”表示注意)。
在图7中,我们通过MLM模型的预训练困惑度(perplexity)和微调指标之间的校准图研究了MLM模型的可迁移性。评估的模型包括BERT base、gMLP及其混合版本的aMLP和64-d单头注意(图6)。通过改变模型深度{0.5,1,2}×或数据{1,2,4,8}×来收集数据点。可以看出,无论注意的存在与否,gMLP对SST-2的迁移都比Transformer好,而gMLP对MNLI的转移效果更差,附加一点点注意力就足以弥补这一差距。在附录D中,我们将aMLP中的微小注意模块可视化,显示它们主要负责句子对之间的对齐。
在图8中,我们将三个模型的缩放特性放在一起,显示了aMLP(gMLP+tiny attention)在两个微调任务上始终优于Transformer。
4.4 BERT设置下的MLM主要结果
下面我们将在完整的BERT设置中呈现预训练和微调结果。不同于消融和案例研究,这里我们使用全英文C4数据集,并采用一个通用的MLM设置,批量大小256,最大长度512和1M的训练步骤。为了公平比较,我们调整了gMLPs的深度和宽度,以确保模型容量与Transformer基线相当。模型规格见表5,超参数详情见附录A.2。对于微调,我们在GLUE[36]中报告了SST-2和MNLI的dev set性能,每个结果条目都是通过取五次独立运行的中位数获得的。此外,我们还报告了[39,40]团队在SQuAD微调结果,以测试模型在更长时间内的推理能力。
结果如表6所示。与我们之前在第4.1节和第4.2节中的研究结果一致,gMLP在复杂性方面与Transformer具有竞争力,尤其是在更大规模的设置中。有几个观察结果与微调结果有关:
首先,在gMLP性能不如Transformer的微调任务中,随着模型容量的增加,性能差距趋于缩小。例如,在基本量表中,gMLP在SQuAD-v2.0上的表现较差8.5%,而在更大的量表中,相对于基线的表现差距降低到2.7%。值得注意的是,我们的gMLPlarge在SQuAD-v1.1上实现了89.5%的F1,没有任何注意或动态参数化机制[26],这远远高于Devlin等人[2]中报道的BERTbase的88.5%,与BERT large的原始结果仅相差1.4%。虽然这显然不是一个公平的比较,由于不同的训练设置,它可以被视为一个存在的证据,证明即使没有注意力,MLP样模型可以在具有挑战性的下游NLP任务中有竞争力。
此外,我们还表明,在一个64或128大小的微小的单头注意力的混合结构,足以使gMLPs优于容量相似的Transformer,有时甚至有很大的优势。例如,我们的混合模型aMLP large在更困难的SQuAD-v2.0任务中实现了比Transformer高4.4%的F1。结果表明,Transformer多头自注意力的容量可以大量冗余,其大部分功能可以被gMLPs中的空间选通单元捕获。结果还表明,gMLPs的空间门控单元中的归纳偏置与微小注意是互补的。虽然随着计算量的增加,体系结构归纳偏置的好处可能会消失,但在我们在本研究中所研究的领域中,微小的自注意力确实提高了gMLPs的实用价值。
5 结论
自从Vaswani等人的开创性工作[1]以来,Transformer已经被广泛应用于NLP和计算机视觉领域。这种采用使许多令人印象深刻的结果,特别是在自然语言处理。到目前为止,还不清楚是什么赋予了这样的成功:是Transformer的前馈性质,还是Transformer中的多头自注意力层?
我们的工作深入研究了这个问题,并表明我们通常不需要太多的注意力机制。我们证明了gMLPs,一个简单的带选通的MLPs变体,可以在BERT的预训练困惑度(perplexity)和ViT的准确性方面与Transformers竞争。增加数据和计算量,gMLP在可扩展性方面(scalability)也可以与Transformers进行比较。至于BERT微调,我们发现没有注意力的gMLPs可以在SQuAD等具有挑战性的任务上取得吸引人的效果,并且在某些情况下可以显著优于Transformers。我们还发现,Transformer的多头自注意力归纳偏置有用的下游任务,需要跨句子对齐。然而,在这些情况下,使gMLP大得多会缩小与Transformer的差距。更实际的是,将一点点的单头注意力混合到gMLP中,可以获得更好的体系结构,而不需要增加模型的大小。
We thank Gabriel Bender, Neil Houlsby, Thang Luong, Niki Parmar, Hieu Pham, Noam Shazeer, Ilya Sutskever, Jakob Uszkoreit and Ashish Vaswani for their feedback to the paper.
附录
A 超参
A.1 图片分类
A.2 屏蔽语言建模
B 深而窄的Transformers
C MLM的平移不变性
D 微小注意力的可视化
在这里,我们在MNLI-m上进行微调后,将aMLP中微小注意模块的注意图可视化。下面热图中的每个元素表示在网络的前半部分期间接收到的相应令牌对的最大关注权重。
https://openreview.net/forum?id=KBnXrODoBW
Paper Decision
NeurIPS 2021会议Program Chairs
Program Chairs28的决定2021 9月28日所有人
决定:接受(海报)
备注:
本文介绍了一种基于MLP的门控模型(gMLP),该模型可获得与Transformer相当的性能,表明自注意对这些模型的成功并不重要。虽然对所提议的方法的局限性提出了多种担忧,但所有四位评审员都赞赏论文中报告的强有力的实证结果,并建议接受。AC同意这一决定,并要求作者在最终版本中添加反驳中提供的讨论和其他信息,并更清楚地描述拟议方法的局限性。
审查员GiR7对Paper7105的正式审查
NeurIPS 2021会议论文7105评审员GiR7
Paper7105审核人GiR721 2021 7月正式审核所有人
总结:
本文提出了一种基于MLP的模型,该模型在视觉任务和语言建模方面的性能与transformers相当。虽然这种基于MLP的模型在自然语言理解任务(如MNLI)上的表现稍差,但引入一个小的单头自注意模块可以弥补大部分性能损失。与并行工程中引入的其他基于MLP的模型相比,该模型在空间投影之前使用了选通模块。就性能而言,该方法在视觉和语言建模任务上比并行MLP变体MLP混合器更强,显示了所提出的选通方法的优势
总的来说,我发现所提出的方法很有趣,而且经验性很强。我倾向于接受,但也希望作者在理解提议的模型方面做了更多的工作。我提出一些建议,下面有一些问题。
主要审查:
赞成的意见
实证表现强劲
该模型将选通机制与仅MLP模型相结合,具有新颖性。
提交的材料写得很好,很清楚。
缺点/问题
提交的文件非常注意所提出方法的实证性能。这是可以理解的,但我也希望作者做了更多的分析工作,以了解所提出的方法。以下是一些建议:
学习动力学:所提出的方法在收敛行为方面是否与transformers明显不同?
数据效率:transformers和gMLP在数据效率方面是否存在权衡?例如,当我们添加更多的训练数据时,gMLP相对于transformer的性能是更好还是更差?
作者是否可以证明gMLP的计算优势?所提出的方法推理速度更快还是gMLP节省了GPU内存?
注意机制对于跨句理解任务尤为重要,这一事实非常有趣。我想知道作者是否能识别出学习到的单头注意力的任何模式。或者,作者能否就注意力机制的作用进行更多的讨论?
限制和社会影响:
我认为这项工作不会对社会产生任何负面影响。
道德问题:
我对这项工作没有任何道德问题。
需要伦理审查:否
道德审查领域:我不知道
花在复习上的时间:6
评分:6:略高于验收阈值
自信:4:你对自己的评估有信心,但不是绝对肯定。您不太可能(但并非不可能)不理解提交文件的某些部分,或者不熟悉某些相关工作。
行为准则:在履行审查员职责(包括撰写评论和参与讨论)时,我已经并将继续遵守NeurIPS行为准则。
作者回应:
备注:
感谢您的评论和问题。
学习动力学:所提出的方法在收敛行为方面是否与transformers明显不同?
对于蒙面语的预训练,它们的收敛速度一样快。对于图像分类,在ImageNet上可比较的训练设置下,gMLP经验收敛速度快于DeiT(ViT+正则化)。下面我们报告了各步骤的验证精度:
step-30K step-60K step-92K (end of training)
DeiT-B (87M params) 74.7 80.2 81.9
gMLP-B (73M params) 78.3 81.2 81.8
这与我们的主要发现一致,即多头自注意不是有效学习的必要组成部分。我们将在修订后的文件中包括更多的讨论。
数据效率:transformers和gMLP在数据效率方面是否存在权衡?
问得好。在图5中,我们已经表明,这两个模型在增加的参数上的缩放效果相同。下面我们进一步说明,它们在可扩展性方面与不断增加的数据不相上下。
视觉效果:将训练集从ImageNet-1K扩展到ImageNet-21K:
Model Training Data Inference Params (M) ImageNet-1K Top-1 (%)
ViT-B (+reg) ImageNet-1K 86 81.8
gMLP-B ImageNet-1K 73 81.6
ViT-B ImageNet-21K 86 84.6
gMLP-B ImageNet-21K 81 84.5
NLP results: enlarging the amount of training tokens by 16x on C4:
Training tokens Params (M) SST-2 MNLI-m
BERT-L 2K bsz x 125K steps 336 94.3 87.0
gMLP-L 2K bsz x 125K steps 365 94.8 86.2
BERT-L 8K bsz x 500K steps 336 95.3 88.9
gMLP-L 8K bsz x 500K steps 365 96.1 88.0
作者是否可以证明gMLP的计算优势?
gMLPs有几个潜在的计算优势,我们在实现中没有利用这些优势。例如,当矩阵为Toeplitz(根据经验,情况似乎是L142-149)时,理论上可以通过快速傅立叶变换(FFT)在O(n log(n))MAdds中执行gMLPs中的每个空间投影。这比Transformer使用O(n^2)MAdds的多头自注意要好,尤其是对于长输入序列。gMLPs的简单性也使其适合于模型并行,而Transformer的多头自注意模块很难在工作人员之间有效地进行分区。
我想知道作者是否能识别出学习到的单头注意力的任何模式。或者,作者能否就注意力机制的作用进行更多的讨论?
请参考附录E了解单头注意的可视化。有强烈的迹象表明,微小的注意力是在输入句子对之间进行表面对齐的——注意注意力矩阵的非对角线上的清晰条纹。
审查员5t8k对文件7105的正式审查
NeurIPS 2021会议论文7105审稿人5t8k
Paper7105审核人5t8k19 2021 7月正式审核所有人
总结:
本文提出了一种基于MLPs的简单结构,它只采用通道投影和带有空间选通单元的空间投影。在图像分类方面,本文提出的gMLP可以达到与DeiT和ViT相当的性能,并且优于以前基于MLP的方法,如MLP-Mixer。在蒙面语言建模任务中,gMLP在复杂度上的性能与Transformer相当,在MNLI上的性能略差于Transformer。
主要审查:
出于独创性,本文提出了一种新的基于MLP的方法,如gMLP。但与MLP混合器相比,这种gMLP的贡献似乎微乎其微。仅新设计并验证了空间选通单元的有效性。但本文的实验研究是充分的,对社会有一定的参考价值。
这张纸的质量很好。从实验报告的角度来看,与以前的方法相比,本文包含了足够的实验结果,验证了重要的断言,并且在NLP中的ImageNet分类和屏蔽语言建模方面都取得了较好的性能。实验的多样性是足够的。
这篇论文的清晰度很好。这篇论文条理清晰,易于理解。
我主要关心的是空间投影。这是一个简单的设计,但由于输入空间分辨率的大小固定,应用场景也受到限制。例如,对于目标检测和语义分割的一些视觉下游任务,输入大小与图像分类的大小不同。这种体系结构不能直接应用于这些任务。
限制和社会影响:
对
需要伦理审查:否
复习时间:10
评分:6:略高于验收阈值
自信:5:你对自己的评估绝对有把握。您非常熟悉相关工作,并仔细检查了数学/其他细节。
行为准则:在履行审查员职责(包括撰写评论和参与讨论)时,我已经并将继续遵守NeurIPS行为准则。
回复审核人5t8k
NeurIPS 2021年会议论文7105作者
Paper7105作者的官方评论2021 8月10日所有人
备注:
感谢您的评论和有用的反馈。
但与MLP混合器相比,这种gMLP的贡献似乎微乎其微。
我们恭敬地表示不同意,并想指出,MLP混合器、FF和ResMLP(在NeurIPS截止日期附近的arXiv上发布)与我们同时工作。我们引用了这些模型,并将其结果包括在内,以便为读者提供这些最近类似MLP的模型的全面概述。然而,这并不意味着我们的提交文件(独立编制)应作为后续工作进行评估。
我们在NLP中也做出了MLP混合器所没有的重要贡献。特别是,我们发现MLP混合器在语言任务上表现不佳(表3),这可能是由于缺乏跨令牌的高阶交互。通过利用空间选通的概念,gMLP是第一个类似MLP的模型,它可以在屏蔽语言建模方面与Transformers竞争。考虑到BERT在NLP中的影响,这本身就是一个重要贡献。
我主要关心的是空间投影。这是一个简单的设计,但由于输入空间分辨率的大小固定,应用场景也受到限制。
首先,gMLPs可以处理可变长度的文本。请注意,我们关于GLUE(SST-2和MNLI)和SQuAD的所有NLP结果都是在长度可变的文本序列上获得的。这是通过对输入应用填充来实现的,这是BERT设置中Transformer的常见做法。对我们来说,这有力地表明,gMLPs适用于各种高价值的NLP应用,包括语言建模、问答和机器翻译。
此外,gMLPs可以处理不同的图像分辨率以进行图像分类。在这里,我们提供其他结果作为概念证明。具体而言,我们(1)在图像大小为224x224的ImageNet-21K上预训练gMLP,(2)对于每个空间投影,“外推”224x224矩阵为384x384矩阵(这是通过平铺学习的空间核来实现的),然后(3)在图像大小为384x384的ImageNet-1K上微调扩展模型。下表显示,GMLP可以很好地处理这种分辨率变化,与Transformer取得竞争结果:
Model Params (M) Resolution ImageNet Top-1 (%)
ViT-B/16 86 224->384 84.6
gMLP-B/16 81 224->384 84.5
ViT-L/16 307 224->384 85.1
gMLP-L/16 294 224->384 85.2
最后,我们同意,与一般Transformer相比,对于现代MLP类模型而言,处理可变大小的输入不那么简单。请注意,前者仍处于早期阶段。然而,鉴于上述NLP和视觉方面令人鼓舞的信号,以及最近其他类似MLP的模型在分割和对象检测方面的成功(例如。,https://arxiv.org/abs/2107.08391),我们相信这是一个非常有趣的未来方向,有许多令人兴奋的研究机会。
Upxb审查员对Paper7105的正式审查
NeurIPS 2021会议论文7105审稿人Upxb
Paper7105审核人正式审核Upxb16 2021 7月(修改:2021 7月17日)所有人
总结:
本文提出并研究了一个有趣的研究问题,即在基于Transformer的模型中是否可以消除自注意。作者设计了一种称为gMLPs的新体系结构,通过移除自注意层并在FFN模块中引入一个新的空间选通单元来很好地模拟独立令牌之间的交互。对CV或NLP任务的综合实验证实,所提出的GMLP可以实现与标准ViT或BERT模型相当的性能。
主要审查:
我很喜欢读这篇论文,整个论文都很清晰,写得很好,我相信这篇论文将对社区有益,并启发其他研究人员在这方面的工作。
以下是我遇到的一些问题或困惑:
建议的体系结构在编码器风格的预训练模型(如ViT或BERT)上进行评估,是否有可能将该方法扩展到编码器-解码器或解码器风格的模型,如T5或GPT?
基于Transformer的模型往往具有更好的OOD泛化能力,作者建议添加一些在“预训练Transformer提高分布外鲁棒性”一文中进行的OOD评估实验。
在表4和表5中,最好添加推断时间和失败次数作为额外的评估指标。
在图4中,学习的滤波器似乎具有局部相关性,这将限制GMLP建模长期依赖性的能力。
在附录D中,学习到的空间投影矩阵似乎是Toeplitz样的,您能否定量评估这些矩阵是如何Toeplitz样的?
拟议的gMLPs模型是否会对输入句子的长度敏感?建议作者在考虑序列长度因素的情况下增加一些分析,例如下游任务的精度与长度。
实际上,在部署到产品之前,通常需要对预先训练的模型进行压缩,我想知道是否可以将GMLP压缩为物联网设备的一些微型模型。
最好讨论拟议的GMLP的一些潜在限制。
限制和社会影响:
我认为这项工作没有潜在的负面社会影响。
需要伦理审查:否
复习时间:三小时
评分:8:接受NeurIPS论文前50%,明确接受
自信:4:你对自己的评估有信心,但不是绝对肯定。您不太可能(但并非不可能)不理解提交文件的某些部分,或者不熟悉某些相关工作。
行为准则:在履行审查员职责(包括撰写评论和参与讨论)时,我已经并将继续遵守NeurIPS行为准则。
回复审核人Upxb
NeurIPS 2021会议论文7105作者
Paper7105作者的官方评论2021 8月10日所有人
备注:
感谢您的评论和宝贵建议。
是否有可能将该方法扩展到编码器-解码器或解码器样式模型,如T5或GPT?
对我们在C4上进行了额外的语言建模实验,我们的初步结果表明,gMLPs也能够在仅解码器设置中实现与Transformer相当的复杂度(使用类似GPT-2的架构布局)。相对于我们的传销模型,我们所做的唯一改变是屏蔽gMLPs中空间投影矩阵的下三角部分,以防止因果信息泄漏。我们将在修订后的文件中增加更多关于解码器风格应用的讨论。
建议作者添加一些在“预培训Transformer改善配电外鲁棒性”一文中进行的OOD评估实验。
我们同意,关于OOD数据的稳健性分析将非常有趣(因为提出了不同的模型族),我们将研究所建议的工作。
在表4和表5中,最好添加推断时间和失败次数作为额外的评估指标。
已确认。我们将在修订后的文件中添加它们。
在图4中,学习的滤波器似乎具有局部相关性,这将限制GMLP建模长期依赖性的能力。
这是可能的,并且可以解释为什么GMLP表现良好,尤其是当它们足够深时(表4)。另一方面,有趣的是,图4中学习到的感受野通常比人们通常在convnet中使用的感受野更宽(即3、5、7)。
在附录D中,学习到的空间投影矩阵似乎是Toeplitz样的,您能否定量评估这些矩阵是如何Toeplitz样的?
量化这一点的一种方法是测量学习到的位置特定滤波器相对于共享位置不可知滤波器的绝对错误率(通过取位置特定滤波器的平均值获得)。如果学习到的滤波器是完全空间不变的(对应于Toeplitz空间矩阵),则预计误差为零。我们选取gMLP基的最后一层,并报告其随窗口大小d增加的过滤错误率:1.4%(d=5)、2.4%(d=9)、7.0%(d=17)、14%(d=33)和18%(d=65)。结果表明,误差率通常很小,并且矩阵对角线附近的元素(通常具有更多权重)可以用Toepltz矩阵更精确地近似。
拟议的gMLPs模型是否会对输入句子的长度敏感?
我们在GLUE上尝试的一个相关实验是向gMLP模型提供更长、冗余的输入序列(通过多次重复原始输入序列构建)。我们还尝试在MNLI的前提段和假设段中间插入大量<sep>标记(以获得具有相同语义的更长序列)。有趣的是,这两项都没有导致GMLP的输出行为发生任何显著变化。
我想知道gMLPs是否可以压缩成物联网设备的一些微型模型。
沿着这条路线,一个有趣的方向是培训一名大型Transformer/gMLP教师,然后将其提取为一名小型gMLP学生进行部署。我们相信,gMLP的简单性可以使其适合于专门用于基本MATMUL的边缘芯片,而不是更通用的EINSUM(用于处理Transformer中的额外头部尺寸)。
最好讨论拟议的GMLP的一些潜在限制。
好的观点——我们将在修订版中添加更多讨论。我们讨论过的一个值得注意的方面是,GMLP似乎携带着不同于Transformer的感应偏压,这使得它们在某些NLP下游任务中表现更好,但在其他一些任务中表现更差(图5)。这可以通过合并一个小的单头自注意来解决(图7),我们认为这主要负责跨段对齐(附录E)。
关于推断时间
NeurIPS 2021会议论文7105审稿人Upxb
Paper7105审稿人Upxb31 2021 8月大家发表的官方评论
备注:
谢谢你的回复。潜在的应用场景在很大程度上取决于所提出模型的推理时间和存储消耗,因此您能否提供一些关于不同输入长度的不同任务的推理时间的初步结果?
根据输入长度推断成本
NeurIPS 2021会议论文7105作者
Paper7105作者的官方评论2021 9月2日所有人
备注:
谢谢你的提问。下面我们报告了不同输入大小的V100 GPU上的推断延迟。
文本分类(gMLP基):
Seq length 32 64 128 256 512 1024 2048 4096
V100 Latency (ms) 13 13 14 22 31 65 148 386
Image classification (gMLP-B/16):
Resolution 56x56 112x112 224x224 448x448 986x896
V100 Latency (ms) 7 7 12 30 158
虽然推断延迟可能高度依赖于硬件,但在这种情况下,根据经验观察其与输入大小的关系仍然很有趣:延迟在开始时呈次线性增长,然后在输入大小变大时呈超线性增长。这是因为模型的成本最初主要来自信道扩展/投影操作(O(nd^2)),但随着输入长度n的增加,空间投影(O(dn^2))逐渐占主导地位。由于讨论时间有限,上述结果是非常初步的,但我们将尝试在修订后的手稿中包含更全面的分析。
审查员s4GZ对Paper7105的正式审查
NeurIPS 2021会议论文7105审稿人s4GZ
Paper7105正式审核人s4GZ15 2021 7月(修改日期:2021 8月31日)所有人
总结:
本文提出了一种简单的机制:门控MLP,并对自注意的必要性提出了质疑。gMLP在分类任务上的性能与DeiT相当。在NLP语音上的实验也证明了该方法的有效性。
主要审查:
强度:
在视觉分类和NLP任务中都设计了实验。
总体而言,实验结果良好。它在ImageNet 1k分类和NLP基线上实现了与DeiT类似的性能。gMLP实现了比MLP基线MLPmixer更好的性能。
动机明确且良好。然而,由于弱点,这种说法过于强烈。
弱点:
一个大问题是,gMLP无法扩展到下游任务,如目标检测,在训练过程中需要不同的分辨率。伪代码中的spatial\u gating\u unit函数只能处理固定长度。我认为这是一个致命的和根本的缺点,并将极大地限制本文的应用。请注意,自注意可以很容易地处理,在NeurIPS之前有很多新的工作[1,2,3],可以很容易地处理这种情况,并在分割和对象检测方面取得令人印象深刻的结果。相反,gMLP框架不能直接处理它。如果我错了,请纠正我。
一些重要因素被忽视,可能导致不公平的比较。一个重要的基线是DeiT,然而,在DeiT的基础上提出了许多改进[1,2,3,4,5,6,7],进一步提高了性能。如果包括Transformer和gMLP,则它们之间的性能差距会扩大。例如,gMLP在分类中利用了全局平均池差距,而DeiT则没有。这将使transformer在ImageNet验证数据集上的准确率至少提高1-1.5%。微调下降路径速率(gMLP也可以做到这一点)[2、3、7]可以略微改善Transformer的性能。我相信,与这些工作进行适当的讨论和比较将有益于本论文和社区。
未成年人:
门控标题有点混乱,因为它的行为与常用的含义不同。
未报告推断速度(imgs/s)(表2)
参考
[1] 金字塔视觉变换器:用于无卷积的密集预测的多功能主干,https://arxiv.org/abs/2102.12122
[2] 双胞胎:重新审视视觉Transformer中的空间注意设计,https://arxiv.org/abs/2104.13840
[3] Swin Transformer:使用移动窗口的分层视觉Transformerhttps://arxiv.org/abs/2103.14030
[4] 视觉Transformer的条件位置编码,https://arxiv.org/abs/2102.10882
[5] Token to Token ViT:在ImageNet上从头开始培训视觉Transformerhttps://arxiv.org/abs/2101.11986
[6] Transformer中的Transformer,https://arxiv.org/abs/2103.00112.
[7] 使用图像Transformer更深入https://arxiv.org/abs/2103.17239
限制和社会影响:
见主要审查的弱点1。
需要伦理审查:否
花在复习上的时间:7
评分:6:略高于验收阈值
自信:4:你对自己的评估有信心,但不是绝对肯定。您不太可能(但并非不可能)不理解提交文件的某些部分,或者不熟悉某些相关工作。
行为准则:在履行审查员职责(包括撰写评论和参与讨论)时,我已经并将继续遵守NeurIPS行为准则。
回复审核人s4GZ
NeurIPS 2021会议论文7105作者
Paper7105作者的官方评论2021 8月10日所有人
备注:
感谢您的评论和有用的评论。
一个大问题是,gMLP无法扩展到下游任务,如目标检测,在训练过程中需要不同的分辨率。。。我认为这是一个致命的和根本的缺点,并将极大地限制本文的应用。
首先,gMLPs可以处理可变长度的文本。请注意,我们关于GLUE(SST-2和MNLI)和SQuAD的所有NLP结果都是在长度可变的文本序列上获得的。这是通过对输入应用填充来实现的,这是BERT设置中Transformer的常见做法。对我们来说,这有力地表明,gMLPs适用于各种高价值的NLP应用,包括语言建模、问答和机器翻译。
此外,gMLPs可以处理不同的图像分辨率以进行图像分类。在这里,我们提供其他结果作为概念证明。具体而言,我们(1)在图像大小为224x224的ImageNet-21K上预训练gMLP,(2)对于每个空间投影,“外推”224x224矩阵为384x384矩阵(这是通过平铺学习的空间核来实现的),然后(3)在图像大小为384x384的ImageNet-1K上微调扩展模型。下表显示,GMLP可以很好地处理这种分辨率变化,与Transformer取得竞争结果:
Model Params (M) Resolution ImageNet Top-1 (%)
ViT-B/16 86 224->384 84.6
gMLP-B/16 81 224->384 84.5
ViT-L/16 307 224->384 85.1
gMLP-L/16 294 224->384 85.2
最后,我们同意,与一般Transformer相比,对于现代MLP类模型而言,处理可变大小的输入不那么简单。请注意,前者仍处于早期阶段。然而,鉴于上述NLP和视觉方面令人鼓舞的信号,以及最近其他类似MLP的模型在分割和对象检测方面的成功(例如。,https://arxiv.org/abs/2107.08391),我们相信这是一个非常有趣的未来方向,有许多令人兴奋的研究机会。
gMLP在分类中利用了全球平均池差距,而DeiT则没有。
这不是真的。我们根本不使用全局平均池,我们的输入/输出协议与DeiT相同。请参考L70-75中的型号说明。
如果包括Transformer和gMLP(附加增强)之间的性能差距,则会扩大
我们强调,我们应用的任何增强(附录A.1)都不超出DeiT的调查范围(表8https://arxiv.org/pdf/2012.12877.pdf). 为了进一步证实我们的超参数配置并没有给我们带来任何不公平的优势,我们在我们的代码库中对DeiT-B进行了训练(重新调整了下降路径速率),并在ImageNet上获得了81.9%。超过81.8%的差异(由DET论文报告)基本上在方差范围内。我们将在本文的修订版中包含此附加结果。
gMLP在COCO检测任务中的表现,其中输入分辨率在培训期间发生变化。
NeurIPS 2021会议论文7105审稿人s4GZ
Paper7105审稿人s4GZ16 2021 8月的官方评论大家
备注:
谢谢你的回复。
我确实了解ImageNet 1k分类任务的224->384设置。这仍然是一个固定的设置,我相信将224x224矩阵外推到384x384矩阵是可行的。然而,我在初步审查中提到的问题是下游任务,如目标检测,其中不同的分辨率(例如,从480到800随机抽样,https://github.com/SwinTransformer/Swin-Transformer-Object-Detection/blob/master/configs/swin/mask_rcnn_swin_tiny_patch4_window7_mstrain_480-800_adamw_1x_coco.py)培训期间需要(非固定)。我仍然担心gMLP是否能处理好它。
swin transformer的代码在提交的DDL之前发布。有趣的是,看到gMLP在目标检测方面的性能与coco培训设置保持一致。
大规模抖动的目标检测结果
NeurIPS 2021会议论文7105作者
Paper7105作者的官方评论2021 8月27日所有人
备注:
感谢您的澄清和有用的建议。由于基础设施的限制,我们很难利用Swin Transformer的实现。因此,我们使用EfficientDet代码库对COCO进行了目标检测实验。
为了消除各种正则化技巧的必要性,我们研究了两个大小相当的微型模型:DeiT-tiny和gMLP-tiny(~ 5M参数),并使用它们替换EfficientDet-D0中的ConvNet主干。为了避免其他混杂因素(例如,类似convnet的归纳偏差),我们使用香草ViT架构布局,没有任何空间池或局部移位窗口(https://arxiv.org/abs/2103.14030). 我们应用双线性上采样来“重新解释”DeiT/gMLP端点作为Bi FPN的输入(https://arxiv.org/abs/2012.09958). 使用相同的超参数训练两个模型(AdamW优化器,权重衰减0.05,学习率1e-3)。我们使用max input size 512,并在训练期间应用大规模抖动来大幅改变有效图像大小。具体来说,在填充/裁剪之前,每个图像随机调整大小为0.1x-2.0x(https://arxiv.org/abs/1911.09070).
在此设置下,DeiT Tiny实现24.5方块图,而gMLP Tiny实现27.8方块图。虽然两者都低于最初的EfficientNet-B0主干(34.6 mAP),但它有力地证明了GMLP在训练期间处理目标检测任务的可变输入大小方面并不比Transformers差。新的检测结果也加强了我们在NLP和图像分类方面的主要发现,即自注意不是Transformer成功的关键。作为下一步,我们计划在更大范围的设置下研究目标检测,并将尝试在修订后的手稿中包含关于该主题的更全面的结果。
请告知我们您的问题是否已得到解决。
比较起来不太公平。渴望看到额外的实验。
NeurIPS 2021会议论文7105审稿人s4GZ
Paper7105评审员s4GZ27 2021 8月的官方评论大家
备注:
感谢您的回复和实验。
这个实验不太公平。DeiT可以处理不断变化的输入序列,因为潜在的自注意可以自动适应。然而,由于位置编码不当,即普通位置编码(双三次或双线性插值)[1,2,3],它在下游任务中的性能大大降低。因此,没有适当位置编码的香草DeiT是一个太弱的基线。而gMLP Tiny的获胜也不太公平。
你能用1x计划或3x计划将DeiT tiny+正确的位置编码(见[2])和PVT tiny([1,3])与COCO上的gMLP tiny进行比较吗?已知COCO上的PVT微小结果(v1和v2)。
参考文献【1】金字塔视觉变换器:一种用于无卷积密集预测的多功能主干,https://arxiv.org/abs/2102.12122,(ICCV21)[2]视觉Transformer的条件位置编码,https://arxiv.org/abs/2102.10882【3】PVTv2:使用金字塔视觉变换器改进基线https://arxiv.org/abs/2106.13797
困惑但结果更多
NeurIPS 2021会议论文7105作者
Paper7105作者的官方评论2021 8月31日所有人
备注:
我们对新的实验要求感到困惑,想知道是否有误解。这位评审员最初的问题是在检测中处理可变的图像大小。在我们之前的回复中,我们表明,相对于标准ViT/DeiT和普通位置编码(与ViT/DeiT论文中的架构相同),GMLP(不使用位置编码)可以在此类场景中很好地工作。我们不清楚为什么用一种更先进和单独开发的位置编码方案来增强基线可以提高本研究的公平性。
然而,我们在EfficientDet设置中对PEG层进行了额外的实验,最大图像大小为512^2和1024^2。与之前一样,在训练期间,可以通过大规模抖动改变有效图像大小:
Backbone COCO mAP
DeiT-Tiny 24.5
gMLP-Tiny 27.8
DeiT-Tiny + PEG 28.1
gMLP-Tiny + PEG 29.5
DeiT-Tiny + PEG (max image size 1024^2) 31.6
gMLP-Tiny + PEG (max image size 1024^2) 34.4
与我们之前的研究结果一致,新的结果证实了gMLPs可以在检测中处理不同大小的图像,而不存在位置编码或不编码的问题。
最后,我们想强调的是,我们的主要贡献是揭示自注意对Transformer的成功并不重要。我们相信这一说法已经得到了自然语言处理(可变文本长度)和图像分类的广泛实验的支持,这是伯特和维特的开创性论文中研究的主要任务。在反驳过程中,我们尽最大努力提供有关目标检测的其他结果,但我们希望在这项具体任务及其对位置编码的影响方面留下进一步的探索,作为未来的工作。
发布关于额外实验的反馈。
NeurIPS 2021会议论文7105审稿人s4GZ
Paper7105评审员s4GZ31 2021 8月的官方评论大家
备注:
谢谢你的额外实验。我的担忧减弱了,因此,我将分数提高到略高于接受阈值。
我希望您在修订版中讨论gMLP在检测方面的性能。毕竟,基于Transformer的主干网[1,2,3]在检测上都优于卷积网络,具有明显的裕度。gMLP实验的efficientdet似乎有点违反直觉。最好讨论一下。一部好的作品也应该指出它的局限性。
参考
[1] 金字塔视觉变换器:用于无卷积的密集预测的多功能主干,https://arxiv.org/abs/2102.12122
[2] 双胞胎:重新审视视觉Transformer中的空间注意设计,https://arxiv.org/abs/2104.13840
[3] Swin Transformer:使用移动窗口的分层视觉Transformer https://arxiv.org/abs/2103.14030