Attention is All You Need: A Deep Dive
深入解析 Transformer 架构的开创性论文,理解 Self-Attention 如何革新了 Deep Learning。
2017 年,Google Brain 团队发表了这篇改变深度学习历史的论文。它提出了 Transformer 架构——完全基于 Attention 机制,抛弃了 RNN 和 CNN。
The Core Problem
在 Transformer 之前,序列建模主要依赖 RNN(如 LSTM、GRU)。RNN 的根本问题是顺序处理——必须逐步计算,无法并行化。
这导致两个严重问题:
- 训练速度慢:无法并行处理序列
- 长距离依赖困难:梯度消失/爆炸
The Key Insight
Transformer 的关键洞察:可以用 Attention 机制直接建模序列中任意两个位置的关系,不需要递归。
Scaled Dot-Product Attention
核心公式:
其中:
- (Query):查询矩阵
- (Key):键矩阵
- (Value):值矩阵
- :Key 的维度
直觉理解:就像阅读时,你会根据上下文理解每个词的含义。“bank” 在 “river bank” 和 “bank account” 中含义不同,Self-Attention 能捕捉这种依赖。
为什么要除以 ?
当维度较大时,点积值会很大,导致 softmax 进入饱和区,梯度接近零。缩放保持梯度稳定:
所以除以 使方差保持为 1。
Multi-Head Attention
单个 Attention Head 只能捕捉一种关系模式。Multi-Head Attention 让模型同时关注不同类型的关系:
其中每个 Head:
直觉:一个 Head 可能关注语法关系,另一个关注语义关系,第三个关注位置关系。
Positional Encoding
Transformer 没有递归,所以需要额外注入位置信息:
为什么用正弦函数? 因为它能表示相对位置—— 可以用 的线性变换表示。
Encoder-Decoder Architecture
Encoder (6 layers):
┌─────────────────────┐
│ Multi-Head Attention │
│ Add & LayerNorm │
│ Feed Forward │
│ Add & LayerNorm │
└─────────────────────┘
Decoder (6 layers):
┌─────────────────────┐
│ Masked Multi-Head │ ← 防止看到未来
│ Add & LayerNorm │
│ Cross-Attention │ ← 关注 Encoder 输出
│ Add & LayerNorm │
│ Feed Forward │
│ Add & LayerNorm │
└─────────────────────┘
Key Innovations:
- 残差连接:,解决深层网络训练困难
- Layer Normalization:稳定训练
- Masked Attention:解码时防止”偷看”未来
Feed-Forward Network
每层中的 Position-wise FFN:
Why It Works So Well?
- 并行化:训练速度比 RNN 快一个数量级
- 长距离依赖:任意两个位置直接连接,路径长度
- 可扩展性:参数增加时性能持续提升
- 通用性:不仅用于 NLP,还扩展到 Vision、Audio
Modern Impact
这篇论文直接催生了:
- BERT、GPT 系列
- Vision Transformer (ViT)
- AlphaFold 2
- 现代大语言模型(LLM)
Formula Cheat Sheet
| Component | Formula |
|---|---|
| Attention | |
| Positional Encoding | functions |
| FFN | |
| Residual |
Summary
Transformer 的伟大之处在于它的简洁性——用一个统一的 Attention 机制替代了复杂的递归结构。这种简洁带来了更好的并行性、更强的表达能力和更广的适用性。
理解这篇论文,是理解现代深度学习的基础。
Paper Link:Attention is All You Need (arXiv:1706.03762)