Transformer
基本信息
- 论文:Attention Is All You Need (2017)
- 作者:Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin(Google Brain / Google Research)
- 地位:现代 NLP 和 AI 的架构基石
核心架构
Transformer 是一种基于纯注意力机制的序列到序列模型,由 Encoder 和 Decoder 两部分组成:
Encoder
- N=6 层,每层包含:Multi-Head Self-Attention + Position-wise FFN
- 残差连接 + Layer Normalization(Post-LN)
- d_model = 512, d_ff = 2048
Decoder
- N=6 层,每层包含:Masked Multi-Head Self-Attention + Cross-Attention(对 encoder 输出)+ FFN
- Casual masking 确保自回归生成
- 自回归解码,逐 token 生成
关键组件
- Scaled Dot-Product Attention:Attention(Q,K,V) = softmax(QK^T / sqrt(d_k)) V
- Multi-Head Attention:h=8 个头并行,每个头 d_k=d_v=64
- Positional Encoding:正弦/余弦编码,注入位置信息
- Position-wise FFN:两个线性变换 + ReLU,对每个位置独立应用
三种注意力模式
| 模式 | Query | Key/Value | 用途 |
|---|---|---|---|
| Encoder Self-Attention | 当前位置 | 所有位置 | 编码双向上下文 |
| Decoder Self-Attention (Masked) | 当前位置 | 当前位置及之前 | 自回归生成 |
| Cross-Attention | Decoder 层输出 | Encoder 输出 | 连接源语言和目标语言 |
Transformer 的影响与衍生
编码器路线(Encoder-only)
- BERT:双向 Transformer 编码器,预训练 + 微调范式
解码器路线(Decoder-only)
编码器-解码器路线
- T5:统一的 text-to-text Transformer
视觉 Transformer
- ViT:将 Transformer 应用于图像分类
- Swin Transformer:层次化视觉 Transformer
- DiT:扩散 Transformer,用于图像生成
位置编码演进
- 原始:正弦位置编码(Sinusoidal PE)
- 改进:可学习位置嵌入(Learned PE)
- RoPE:旋转位置编码,现代 LLM 标配
为何 Transformer 成功?
- 可并行训练:自注意力全部 token 同时计算,不像 RNN 必须串行
- 短路径长度:任意两个位置之间的最大路径长度是 O(1)(vs RNN 的 O(n))
- 表达能力:多头注意力允许模型关注不同表示子空间
- 通用性:同一架构适用于文本、图像、音频、视频等多种模态