Keywords: 并行序列建模、自注意力、多头注意力、位置编码、弱归纳偏置
1. Background
在 2017 年之前,主流 seq2seq 模型主要依赖于 RNN 或 CNN,但都存在缺陷。
- RNN:计算是时序性的,必须从左往右一步步计算隐藏状态 ,这导致难以并行计算,此外长距离信息传递容易丢失,若要保留则需极大的内存开销。
- CNN:卷积核窗口有限,需要堆叠多层卷积才能关联距离较远的单词/像素。
需要一种架构,既能有效处理长距离依赖,又能实现高度并行化以提升训练速度。
2. Methods
Transformer 完全舍弃循环和卷积,提出第一个纯基于注意力机制的序列转录模型。
- 解决长距离依赖:利用注意力机制,序列中任何位置的交互距离缩短为常数 ,不同于 CNN,Transformer 没有任何关于距离的先验假设。
- 多头机制 (Multi-Head):注意力机制的副作用是“有效分辨率”降低 (多个不同维度的信息被压缩进一个向量),因此引入 Multi-Head Attention,灵感来源于 CNN 的多输出通道,希望通过不同的 head 来识别序列中不同的模式。
- 并行性:核心的注意力计算为矩阵乘法,不再有时序依赖,训练时可以在 GPU 中被并行,而推理过程为自回归,仍需要 KV Cache 等优化。

3. Model Design
采用经典的 Encoder-Decoder 架构。

3.1 Encoder
由 6 个相同的层堆叠而成。每层包含两个子层:
- Multi-Head Self-Attention:抓取全局信息。
- Position-wise FFN:对每个词独立进行非线性转换,从 512 维投影至 2048 维再投回 512 维。
- 每个子层后都使用 残差连接 (Residual Connection) 和 层归一化 (Layer Normalization) 。
- Layer Norm:不同于 Batch Norm,Layer Norm 对于单个样本内部进行归一化,以避开句子长度不同的干扰。
3.2 Decoder
同样由 6 个相同的层组成。每层包含三个子层:
- Masked Multi-Head Attention:确保预测 时刻时不会看到之后的输出信息,保证自回归属性。
- Multi-Head Cross-Attention:Query 来自解码器,Key 和 Value 来自编码器输出,用于在两者间传递信息。
- Position-wise FFN
- 每个子层后 Residual & Layer Norm
3.3 Attention
对 Query 和 Key 做点积 (矩阵乘法) 计算相似度,缩放后 softmax 得到总和为 1 的注意力分布,再将计算结果对 Value 做加权求和。
如果计算 Masked Attention,会在 softmax 之前加入 mask。
- 缩放因子:除以 是为了防止在维度较大时 (如 512),点积结果过大导致 Softmax 梯度消失。
Multi-Head Attention 则在上面的基础上,先将 QKV 通过线性层投影到低维空间,再各自通过点积注意力层,将结果 concat 后再投影回高维。

3.4 Positional Encoding
由于 Attention 本身不包含时序信息 (打乱顺序结果一致),Transformer 利用三角函数生成的固定位置向量加到词嵌入中,显式引入位置信息。
我们会将 Embedding 的数值乘以 ,以平衡与 Positional Encoding 的强度。
4. Training
为了保证模型能顺利收敛并防止过拟合,论文引入了以下几项关键的训练与优化策略:
- Optimizer:使用带 Warmup 的 Adam 优化器。训练初期线性调大智能学习率以稳定初速度,后期按步数的负二次方根反比例衰减。
- Dropout:在每一层子层的输出加到残差连接前,以及 Embedding 与位置编码相加后,均应用了率为 0.1 的 Dropout,用于破坏神经元协同适应性。
- Label Smoothing:引入平滑因子 ,换取更强的泛化能力与更优的 BLEU 得分。
5. Result
在 WMT 2014 英德翻译任务中达到 28.4 BLEU,比当时的 SOTA 模型高出 2 个 BLEU 分数。
由于高度并行,Big Model 在 8 个 P100 GPU 上仅训练 3.5 天即可达到顶尖效果。
主要可调参数仅为层数 、模型宽度 和头数 ,后续的 BERT 和 GPT 均沿用此设计。
6. Reflection
Transformer 的提出,使 Attention 首次成为深度学习中的核心计算范式。其高度并行、可扩展且通用的架构,不仅统一了 NLP 中的大多数任务,也推动了 Transformer 向视觉、语音以及多模态领域的全面扩展。
Transformer 的成功,很大程度上来源于其相比 RNN 与 CNN 更弱的归纳偏置。它几乎不对输入结构作额外假设,而是通过 Attention 直接学习任意位置之间的关系,因此具有更强的通用性与扩展性。
但与此同时,更弱的归纳偏置也意味着 Transformer 更依赖大规模数据与计算资源,许多原本由先验结构直接编码的信息,需要通过数据驱动的方式自行学习。这也是 Transformer 在大规模预训练时代到来后才真正展现出巨大潜力的重要原因。
如果这篇文章对你有帮助,欢迎分享给更多人!
部分信息可能已经过时






