Transformer 三大架构家族
BERT (编码器) · GPT (解码器) · T5 (编码器-解码器) — 交互式对比
双向自注意力
▼
Add & Norm
▼
FFN (前馈网络)
▼
Add & Norm
↔ 双向
双向注意力,看到全部上下文
因果自注意力
▼
Add & Norm
▼
FFN (前馈网络)
▼
Add & Norm
→ 从左到右
因果注意力,只看左侧上下文
编码器
双向自注意力
▼
Add & Norm
▼
FFN
➡
↔︎ + →
双向编码 + 因果解码
注意力模式热力图 (6×6)
BERT — 全连接矩阵
每个 token 可关注所有位置
GPT — 下三角掩码
每个 token 只看当前及之前位置
T5 — 编码器 + 解码器
编码器全连接,解码器因果掩码
训练目标动画演示
BERT — MLM
掩码语言模型 (Masked Language Model)
我
[MASK]
自然语言处理
▼
我
爱
自然语言处理
GPT — CLM
因果语言模型 (Causal Language Model)
我
爱
自然
▼
我
爱
自然
语言
T5 — Span Corruption
跨度损坏与恢复
我
<X>
语言处理
▼
<X>
爱
自然
架构对比总览
| 维度 |
BERT |
GPT |
T5 |
| 架构类型 |
仅编码器 |
仅解码器 |
编码器-解码器 |
| 注意力方向 |
双向 (全部上下文) |
单向 (仅左侧) |
编码器双向 + 解码器单向 |
| 训练目标 |
掩码语言模型 (MLM) |
因果语言模型 (CLM) |
跨度损坏恢复 |
| 擅长任务 |
分类、NER、问答 |
文本生成、对话、代码 |
翻译、摘要、多任务 |
| 代表模型 |
BERT, RoBERTa, DeBERTa |
GPT-4, LLaMA, Mistral |
T5, BART, mT5 |
| 输入输出 |
文本 → 向量表征 |
前缀 → 续写文本 |
文本 → 文本 (seq2seq) |