Encoder-only、Decoder-only、Encoder-Decoder 到底长什么样

张开发
2026/4/20 23:37:10 15 分钟阅读

分享文章

Encoder-only、Decoder-only、Encoder-Decoder 到底长什么样
总图1. Encoder-only (BERT 类)输入 tokens|[Encoder]|[Encoder]|[Encoder]|输出表示 vectors2. Decoder-only (GPT / LLaMA 类)输入 tokens|[Decoder]|[Decoder]|[Decoder]|逐个预测下一个 token3. Encoder-Decoder (T5 类)输入 tokens 已生成 tokens| |[Encoder] [Decoder]| |[Encoder] ---- cross-attn ---- [Decoder]| |编码结果 逐个生成输出它们真正的区别Encoder-only- 只负责“把输入读懂”。- 每个词都能同时看到左边和右边。- 输出通常是整句或每个 token 的表示不是天然拿来一直往下写。- 典型BERT我 爱 北 京 天 安 门^ 每个词都能看见整句其他词适合- 分类- 匹配- 实体识别- 检索/排序Decoder-only- 负责“按顺序往下写”。- 当前 token 只能看左边不能看右边这叫 causal mask。- 所以它天然适合生成。我 爱 北 京^只能看左边预测下一个词适合- 对话- 写作- 代码生成- 通用生成式任务典型- GPT- LLaMAEncoder-Decoder- 左边先把输入读懂右边再根据读懂的结果生成输出。- Decoder 一边看自己已经生成的内容一边看 Encoder 给的编码结果。- 这里比前两种多了一个关键部件cross-attention。输入: Translate: I love BeijingEncoder 先编码整句Decoder 再一步步生成: 我 爱 北京适合- 翻译- 摘要- 改写- 明确的“输入文本 - 输出文本”任务典型- T5再看一张对比表| 结构 | 看输入方式 | 会不会自然生成 | 代表模型 ||---|---|---|---|| Encoder-only | 左右都看 | 不擅长长生成 | BERT || Decoder-only | 只看左边 | 最擅长 | GPT、LLaMA || Encoder-Decoder | Encoder 全看Decoder 生成 | 很适合 | T5 |一句最容易记住的话- Encoder-only先理解- Decoder-only边看边写- Encoder-Decoder先读懂再翻译/改写/生成

更多文章