会议:NeurIPS 2017(第31届神经信息处理系统大会)
Ashish Vaswani∗, Noam Shazeer∗, Niki Parmar∗, Jakob Uszkoreit∗, Llion Jones∗, Aidan N. Gomez∗†, Łukasz Kaiser∗, Illia Polosukhin∗ Google Brain / Google Research / University of Toronto arXiv:1706.03762v7 [cs.CL] 2 Aug 2023
这篇论文提出了Transformer——一种完全基于注意力机制的全新序列转换模型架构,彻底摒弃了循环和卷积结构。Transformer 凭借其高度并行化的设计和卓越的性能,不仅在机器翻译任务上刷新了当时的最优记录,更深远地重塑了整个自然语言处理乃至人工智能领域的技术范式。
一、研究动机与背景
在 Transformer 出现之前,序列建模和转换任务(如语言建模、机器翻译)的主流方法是循环神经网络(RNN),特别是 LSTM 和 GRU。这些模型虽然有效,但存在一个根本性瓶颈:计算的顺序依赖性。RNN 必须沿着序列的时间步逐步处理,前一步的隐藏状态 是后一步 的输入,这种固有的串行特性严重阻碍了训练的并行化,在处理长序列时尤为突出。
与此同时,注意力机制已在多种任务中展示出强大的能力,它能够在不考虑序列距离的情况下建模依赖关系。然而,在几乎所有先前工作中,注意力机制都是作为 RNN 的附属组件存在的。
本论文的核心问题是:能否完全抛弃循环结构,仅凭注意力机制就构建一个高性能的序列转换模型? Transformer 给出了肯定的答案。
二、核心架构:Transformer 模型
Transformer 遵循经典的编码器-解码器(Encoder-Decoder)宏观结构,但其内部完全由自注意力(Self-Attention)和逐位置的前馈网络(Position-wise Feed-Forward Networks)堆叠而成。

编码器(Encoder)
编码器由 个相同的层堆叠而成。每一层包含两个子层:一个 多头自注意力机制和一个逐位置全连接前馈网络。每个子层周围都使用了残差连接(Residual Connection)和层归一化(Layer Normalization),即子层输出为 。模型所有子层和嵌入层的输出维度统一为
解码器(Decoder)
解码器同样由 N=6 个相同的层堆叠而成。除了编码器中的两个子层外,解码器额外插入了第三个子层,用于对编码器的输出执行 多头注意力(即编码器-解码器注意力)。此外,解码器中的自注意力子层通过掩码(Masking)机制阻止当前位置关注其后续位置,以保证自回归特性——即位置 i 的预测只能依赖于位置小于 i 的已知输出。
三、关键创新点
1) 缩放点积注意力(Scaled Dot-Product Attention)
Transformer 的核心计算单元是缩放点积注意力。给定查询(Query)、键(Key)和值(Value)矩阵,注意力输出的计算公式为:
其中 的缩放因子至关重要——当 较大时,点积的数值会增大,将 softmax 函数推入梯度极小的区域,缩放操作有效缓解了这一问题。相比加性注意力,点积注意力在实践中更快且更节省空间,因为它可以直接利用高度优化的矩阵乘法实现。

2) 多头注意力(Multi-Head Attention)
论文发现,与其使用单一的 dmodel 维度注意力函数,不如将查询、键和值通过不同的线性投影映射 h 次到低维空间,分别执行注意力计算,再将结果拼接并投影回原始维度: MultiHead(Q,K,V)=Concat(head1,…,headh)WO
其中 。
论文使用 h=8 个注意力头,每个头的维度为 。多头机制允许模型同时关注不同表示子空间中不同位置的信息,这是单头注意力因”平均化”效应而无法做到的。
3) 位置编码(Positional Encoding)
由于 Transformer 完全没有循环和卷积结构,模型本身无法感知序列中的位置顺序。为此,论文在输入嵌入中加入了正弦/余弦位置编码:
选择这种函数的原因是,对于任意固定偏移 k,PEpos+k 可以表示为 PEpos 的线性函数,从而使模型能够轻松学习相对位置关系。此外,正弦编码还具有 外推能力,可能允许模型处理训练中未见过的更长序列。
四、自注意力的优势分析
论文从三个维度将自注意力层与循环层和卷积层进行了系统对比:
| 层类型 | 每层计算复杂度 | 顺序操作数 | 最大路径长度 |
|---|---|---|---|
| 自注意力 | |||
| 循环 | O(n) | ||
| 卷积 |
自注意力层的关键优势在于:任意两个位置之间的最大路径长度为 O(1)(常数级),而循环层需要 O(n),卷积层需要 。更短的路径意味着更容易学习 长距离依赖关系。此外,当序列长度 小于表示维度 时(这在主流翻译模型中很常见),自注意力层的计算速度也快于循环层。
五、实验评估
1) 机器翻译
论文在两个标准的机器翻译基准上验证了 Transformer 的性能:
- WMT 2014 英德翻译:Transformer (big) 达到 28.4 BLEU,比此前所有模型(包括集成模型)高出超过 2.0 BLEU,创下新的最优纪录。
- WMT 2014 英法翻译:达到 41.8 BLEU 的单模型最优成绩,而训练仅需在 8 块 P100 GPU 上跑 3.5 天,训练成本不到当时最优模型的 1/4。
即使是基础模型(base model)也超越了所有此前发表的模型和集成方案,且训练代价仅为竞争模型的一小部分。
2) 模型变体分析
论文通过系统的消融实验(表3)探索了不同超参数对性能的影响:
- 注意力头数:单头注意力比最佳设置低 0.9 BLEU,但头数过多同样导致性能下降;
- 模型规模:更大的模型表现更好(如 优于 512);
- Dropout:正则化对防止过拟合至关重要;
- 位置编码:正弦编码与学习式位置嵌入性能几乎一致。
3) 英语成分句法分析
为验证 Transformer 的泛化能力,论文将其应用于英语成分句法分析任务。在几乎没有针对任务进行调优的情况下,4 层 Transformer 在 WSJ 测试集上取得了 91.3 F1(纯监督)和 92.7 F1(半监督)的成绩,表现优于除循环神经网络文法(RNNG)之外的所有此前报告的模型。
六、注意力可视化
论文在附录中展示了注意力头学到的丰富语言结构。

在编码器第5层的自注意力中,多个注意力头能够准确捕获动词”making”的远距离依赖,完成”making…more difficult”这一跨越多个词的短语结构。

另外的注意力头则展示出指代消解(Anaphora Resolution)的能力——当处理代词”its”时,注意力非常集中地指向了其先行词”Law”,表明不同的头自动学会了执行不同的语法和语义任务。

七、总结与深远影响
Transformer 是第一个完全基于注意力机制的序列转换模型,它以简洁而强大的架构证明了:循环和卷积并非序列建模的必需组件。其核心贡献包括:
- 自注意力机制作为唯一计算范式:以 的路径长度捕获任意距离的依赖关系;
- 多头注意力:让模型同时关注不同子空间的信息;
- 高度并行化:训练速度远超 RNN/CNN 架构;
- 强大的泛化能力:在翻译之外的任务(如句法分析)中同样表现优异。
更重要的是,Transformer 的影响远超这篇论文本身。它直接催生了 BERT、GPT 系列、T5、ViT 等一系列里程碑式模型,成为了当今大语言模型(LLM)和多模态模型的基础架构。可以说,这篇 2017 年的论文定义了此后整个 AI 领域的技术方向。
对于相关研究方向,Transformer 在自注意力机制设计、位置编码策略以及编码器-解码器架构分离方面的思路具有极强的参考价值。特别是其通过多头机制实现”分而治之”的策略,对理解和设计更高效的注意力变体(如线性注意力、稀疏注意力、FlashAttention 等)提供了重要的理论基础。