论文速读——Pay Attention to MLPs
Abstract
Transformer [1] 已成为深度学习领域最重要的架构创新之一,并在过去几年中实现了许多突破。在这里,我们提出了一种简单的网络架构 gMLP,它基于带有门控的 MLP,并表明它在关键语言和视觉应用中的性能与 Transformer 一样好。我们的比较表明,自注意力对于 Vision Transformers 来说并不重要,因为 gMLP 可以达到相同的精度。对于 BERT,我们的模型在预训练复杂度上与 Transformer 相当,并且在一些下游 NLP 任务上表现更好。在 gMLP 表现较差的微调任务中,使 gMLP 模型变得更大可以缩小与 Transformer 的差距。总的来说,我们的实验表明,随着数据和计算的增加,gMLP 可以像 Transformer 一样进行扩展。
1 Introduction
简述了Transformers的优秀,已经成为了NLP和计算机视觉中的默认架构。Transformer 架构结合了两个重要概念:(1) 并行计算每个单独 token 的表示的无循环架构,以及 (2) 聚合跨 token 的空间信息的多头自注意力块。
自注意力的归纳偏差对于 Transformer 的卓越有效性是否至关重要仍然是一个悬而未决的问题。 → \to → 提出了一种基于 MLP 的 Transformer 替代方案,无需自注意力,它仅由具有静态参数化的通道投影和空间投影组成。
将gMLP用在现有的一些模型中得到很好的结果。(阐述gMLP的优势)
它表明尽管缺乏自注意力,gMLP 的规模与 Transformer 一样,并且任何性能差距都可以通过使用增加的数据和计算来训练更大的模型来弥补。
总体而言,gMLP 在视觉和 NLP 领域中令人惊讶的有效性表明,自注意力并不是扩大机器学习模型的必要成分,尽管根据任务的不同,它可能是一个有用的补充。随着数据和计算的增加,具有更简单空间交互机制(例如 gMLP)的模型可以像 Transformer 一样强大,并且分配给自注意力的容量可以被删除或大幅减少。
2 Model
模型是由一堆具有相同大小和结构的L个块组成,令
X
∈
R
n
×
d
X\in \Bbb R ^{n\times d}
X∈Rn×d ,序列长度为
n
n
n,维度为
d
d
d 。每个块定义为:
Z
=
σ
(
X
U
)
,
Z
~
=
s
(
Z
)
,
Y
=
Z
~
V
(1)
Z=\sigma (XU) ,\qquad \tilde Z=s(Z),\qquad Y=\tilde ZV \tag1
Z=σ(XU),Z~=s(Z),Y=Z~V(1)
σ
\sigma
σ 是GeLU激活函数,
U
U
U 和
V
V
V 是定义沿通道维度的线性投影 ,与 Transformers 的 FFN 中的线性投影相同。为了简洁起见,省略了捷径、标准化和偏差。上述公式中的一个关键成分是$ s(·)$,一个捕获空间相互作用的层(见下文)。当
s
s
s 是恒等映射时,上述转换退化为常规 FFN,其中各个令牌独立处理,无需任何跨令牌通信。因此,我们的主要关注点之一是设计一种能够捕获跨代币的复杂空间交互的产品。整体块布局的灵感来自于反向瓶颈[25],它将
s
(
⋅
)
s(·)
s(⋅) 定义为空间深度卷积。请注意,与 Transformers 不同,我们的模型不需要位置嵌入,因为此类信息将在
s
(
⋅
)
s(·)
s(⋅) 中捕获。
2.1 Spatial Gating Unit
为了实现跨令牌交互,层
s
(
⋅
)
s(·)
s(⋅) 必须包含空间维度上的收缩操作。最简单的选择是线性投影:
f
W
,
b
(
Z
)
=
W
Z
+
b
(2)
f_{W,b}(Z) = WZ + b \tag2
fW,b(Z)=WZ+b(2)
W
∈
R
n
×
n
W\in \Bbb R ^{n \times n}
W∈Rn×n 是一个
n
n
n为系列长度的矩阵,
b
b
b 指的是令牌特定的偏差。这里不同于自注意力机制中的
W
(
Z
)
W(Z)
W(Z)是从
Z
Z
Z动态生成的。
在这项工作中,我们将层
s
(
⋅
)
s(·)
s(⋅) 表示为线性门控的输出:
s
(
Z
)
=
Z
⊙
f
W
,
b
(
Z
)
(3)
s(Z) = Z \odot f_{W,b}(Z) \tag3
s(Z)=Z⊙fW,b(Z)(3)
⊙
\odot
⊙ 表示逐元素乘法,为了训练稳定,将
W
W
W初始化接近于0的值并将
b
b
b初始化接近于1的值,这意味着训练开始的时候
f
W
,
b
(
Z
)
≈
1
f_{W,b}(Z) \approx 1
fW,b(Z)≈1,因此
s
(
Z
)
≈
Z
s(Z) \approx Z
s(Z)≈Z 。这种初始化确保每个 gMLP 块在训练的早期阶段表现得像常规 FFN,其中每个令牌都是独立处理的,并且在学习过程中仅逐渐跨令牌注入空间信息。
我们进一步发现,对于门函数和乘法旁路,沿着通道维度将
Z
Z
Z 分成两个独立的部分
(
Z
1
,
Z
2
)
(Z_1,Z_2)
(Z1,Z2)是有效的:
s
(
Z
)
=
Z
1
⊙
f
W
,
b
(
Z
2
)
(4)
s(Z)=Z_1 \odot f_{W,b}(Z_2) \tag4
s(Z)=Z1⊙fW,b(Z2)(4)
我们还将输入标准化为
f
W
,
b
f_{W,b}
fW,b,这从经验上提高了大型 NLP 模型的稳定性。这为我们提供了图 1 所示的单元,我们在本文的其余部分将其称为空间门控单元 (SGU)。
一些可参考结论
混合大小为 64 或 128 的微小单头自注意力机制足以使 gMLP 的性能优于具有相似容量的 Transformer,有时甚至远远领先。
后续需要详细理解一下,实验部分有点多。