Skip to content
🔗 分享本题
查看我的学习进度 →

Transformer 与 RNN 对比动漫知识图:RNN 依赖串行状态传递,Transformer 用全局自注意力缩短信息路径并实现并行训练

🧠 图解记忆:注意力缩短信息路径,并行性改变训练效率;点击图片可查看原图。

💡 答案要点

Transformer = 基于自注意力机制的序列到序列模型

为什么需要Transformer?

RNN/LSTM 的问题:

问题说明影响
串行计算必须逐个处理token训练慢,无法并行
长程依赖梯度消失/爆炸难以捕捉远距离关系
信息瓶颈所有信息压缩到隐状态信息丢失

Transformer 的优势:

┌─────────────────────────────────────────────────────────┐
│                  Transformer 架构                        │
└─────────────────────────────────────────────────────────┘

输入序列 → Embedding + 位置编码

Encoder (N × 6 层)
├── Multi-Head Self-Attention
├── Add & Norm
├── Feed-Forward Network
└── Add & Norm

Decoder (N × 6 层)
├── Masked Multi-Head Self-Attention
├── Add & Norm
├── Encoder-Decoder Cross-Attention
├── Add & Norm
├── Feed-Forward Network
└── Add & Norm

Linear + Softmax → 输出概率分布

核心创新:

  1. Self-Attention(自注意力)

    • 每个token都能直接"看到"所有其他token
    • 复杂度:O(n²),但可以并行
  2. Multi-Head Attention(多头注意力)

    • 多个注意力头,捕捉不同维度的关系
    • 8 或 16 个头
  3. 位置编码(Positional Encoding)

    • 注入序列位置信息
    • sin/cos 函数编码
  4. 残差连接 + Layer Norm

    • 解决梯度消失
    • 稳定训练

性能对比(机器翻译任务):

模型BLEU训练时间参数量
LSTM25.310天200M
Transformer Base27.312小时65M
Transformer Big28.43.5天213M

面试话术:

"Transformer 通过自注意力机制替代了RNN的串行计算。每个token可以直接关注所有其他token,实现了并行计算,训练速度提升10-100倍。虽然复杂度是O(n²),但在实际应用中,并行带来的收益远大于复杂度的损失。"

📚 参考:Attention Is All You Need(Transformer 原论文)