核心要点

  • 能说明 Encoder-Decoder 或纯 Encoder/Decoder 结构

  • 理解 Self-Attention 如何实现全局依赖建模

  • 知道在 NLP、CV(ViT)、多模态中的典型应用

  • 能提及位置编码与 O(n²) 复杂度

简要回答

Transformer(Vaswani et al., 2017)以 Self-Attention 为核心,摒弃 RNN 的序列递归,实现并行计算长程依赖建模;

核心机制

  • 输入嵌入 + 位置编码(绝对/相对/RoPE)
  • 多头自注意力:Q/K/V 投影 → Attention(Q,K,V)=softmax(QK^T/√d)V
  • 前馈网络 FFN + 残差连接 + LayerNorm
  • Encoder:双向上下文(BERT

标准回答

Transformer(Vaswani et al., 2017)以 Self-Attention 为核心,摒弃 RNN 的序列递归,实现并行计算长程依赖建模。

核心机制

  • 输入嵌入 + 位置编码(绝对/相对/RoPE)
  • 多头自注意力:Q/K/V 投影 → Attention(Q,K,V)=softmax(QK^T/√d)V
  • 前馈网络 FFN + 残差连接 + LayerNorm
  • Encoder:双向上下文(BERT);Decoder:因果掩码自回归(GPT);Encoder-Decoder:翻译(原始论文)

典型场景

场景 代表模型 结构
理解/分类 BERT Encoder
文本生成 GPT 系列 Decoder
翻译/摘要 T5, BART Enc-Dec
视觉 ViT, Swin Patch + Attention
多模态 CLIP, LLaVA 跨模态 Attention

优势:可扩展性强、易堆叠深层、适合大规模预训练。代价:标准 Attention 复杂度 O(n²),长序列需 Flash Attention、稀疏注意力等优化。详见 Transformer 详解大模型入门

常见误区

⚠️ 常见踩坑

只说 Attention 公式却说不清 Encoder/Decoder 分工;忽视位置编码;声称 Transformer 只能用于 NLP;对 O(n²) 复杂度毫无认知。

追问

追问 1Transformer 为什么需要位置编码?

Self-Attention 对输入集合置换不变,无法区分 token 顺序。位置编码(正弦、可学习、ALiBi、RoPE)注入顺序信息,使模型感知「第 i 个词」的语义。

追问 2Encoder 和 Decoder 的 Mask 有何不同?

Encoder 通常无掩码或 padding mask;Decoder 用 causal mask 禁止看到未来 token,保证自回归生成时训练与推理一致。Cross-attention 中 Query 来自 Decoder、K/V 来自 Encoder 输出。

追问 3Transformer 如何扩展到百万 token 上下文?

采用稀疏注意力(Longformer)、线性注意力、滑动窗口、KV Cache 复用、Ring Attention 分片等技术;硬件上用 Flash Attention 降显存。仍是活跃研究方向。

延伸学习

与本题相关的知识库文章、术语、工具与行业资讯。

🛠️ AI 工具

  • Pytorch

    Meta 开源的深度学习框架,100K+ stars。以动态计算图和 Pythonic 风格著称,在学术界和工业界都有广泛应用,支持分布式训练、移动端部署和 ONNX 导出

  • Tensorflow

    全球最流行的机器学习框架之一,195K+ stars。Google 开源的端到端 ML 平台,支持 TensorFlow、Keras 等多种 API,覆盖深度学习、强化学习、移动端部署等全场景,是 AI 工程师的必备工具