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

🧠 图解记忆:Encoder 理解一切(左右都看),Decoder 专注产出(只看左),两者之间有座桥梁叫 Cross-Attention。

Decoder-only vs Encoder-Decoder(面试高频对比题)

维度Decoder-only(GPT系列)Encoder-Decoder(T5/BART/T5)Encoder-only(BERT)
注意力掩码Causal Mask(因果/单向)Encoder:无限制;Decoder:Causal MaskBidirectional(双向)
输入→输出关系输入即输出的前缀(续写模式)输入编码后→独立生成(翻译/摘要模式)仅输入,无生成输出
适用任务文本生成、对话、角色扮演翻译、摘要、改写、Seq-to-Seq分类、抽取、NER、匹配
典型模型GPT-4、LLaMA、Qwen、DeepSeekT5、BART、mBART、NLLBBERT、RoBERTa、DeBERTa
推理模式自回归逐个 token自回归逐个 token无推理过程

Encoder-Decoder 的核心设计思想

Encoder-Decoder 的直觉:输入和输出是"两个不同的空间"

Encoder(理解端):
  输入: "ChatGPT is amazing"
  双向 Attention 完全理解这句话的所有词之间的语义关系
  输出: 一组隐藏状态表示 "这句话的含义"

Cross-Attention(桥梁):
  Decoder 每一步生成 token 时,都能回头看 Encoder 的全部输出

Decoder(表达端):
  输入: "<start>" → 逐步生成 → "<end>"
  单向 Attention + Cross-Attention 确保只看到已生成的部分 + 完整源句含义
  输出: "ChatGPT 太棒了"

为什么 Encoder-Decoder 在某些任务上仍然不可替代?

场景为什么用 E-D 更好Decoder-only 的问题
机器翻译输入语言和输出语言可能差异巨大(中英 vs 英日),需要中间表示解耦Decoder-only 需要端到端映射,跨语言泛化更困难
文本摘要输入可能数千字,输出几百字——压缩比极高,需要独立的"阅读"和"写作"模块Decoder-only 压缩效率低,容易忽略关键信息
文本改写/编辑需要保留原意但改变表达方式——Encoder 精确读取原文,Decoder 重写Decoder-only 难以精准定位需要改动的部分
表格/公式转自然语言结构化输入→自然语言输出,两个模态的 gap 很大Decoder-only 难以跨越这么大的模态差

为什么 Decoder-only 赢了?(2023-2026 的行业趋势)

虽然 Encoder-Decoder 在特定任务上有理论优势,但行业已经大规模转向 Decoder-only,原因是:

  1. 规模经济:同一个 Decoder-only 模型可以做几乎所有任务(翻译、摘要、分类、问答)——只需要改变 Prompt
  2. 训练简化:只用一个目标(next-token prediction),无需设计多个预训练损失函数
  3. 生态统一:RLHF、Prompt Engineering、In-Context Learning 等对齐和应用技术全部围绕 Decoder-only 体系发展
  4. 部署一致:生产系统只需维护一套推理基础设施

但是! Encoder-Decoder 仍在以下场景保持竞争力:

  • 专用翻译服务(NLLB、opus-mt)
  • 低资源语言的 Seq-to-Seq 任务
  • 需要极致输入输出的任务(短摘要、实体抽取)

面试话术:

"Encoder-Decoder 的设计哲学是"读写分离"——Encoder 充分理解输入(双向 Attention),Decoder 专注生成输出(单向 + Cross-Attention),中间的 Cross-Attention 负责桥接信息。它在翻译、摘要等 Seq-to-Seq 任务上有天然的表达能力优势。但 2023 年以来的趋势是:同样规模的 Decoder-only 模型通过更好的 Prompt 工程和 Few-shot 能力,能够覆盖 Encoder-Decoder 的大部分应用场景,再加上统一的训练目标和生态优势,使得大多数团队选择只维护 Decoder-only 模型。不过在一些专业领域(低资源翻译、极致压缩摘要),Encoder-Decoder 仍有独特价值。"