架构分化:Encoder-Decoder、Encoder-only 与 Decoder-only

02-架构解剖 核心 约 20 分钟 #架构分化#Decoder-only#Encoder-only#编码器解码器 更新 2026-10-02
当前状态:未学
本文基于模型知识整理(生成时未联网核对),架构演化建议对照 kp-033 与 GPT-3/BERT 原论文复核。

一句话定义

原始 Transformer 是 Encoder-Decoder 双塔(理解+生成);2018 年分化出两条路线——Encoder-only(BERT:双向注意力做理解/分类)与 Decoder-only(GPT:因果自回归做生成)——五年后的今天 Decoder-only 几乎独占 LLM,这场"架构战争"的胜负手是:一条序列统一一切任务 + 规模化的简单性。

为什么重要

"读哪个架构的论文、微调哪类模型、面试答哪个差异"都取决于这一分类。更重要的是理解为什么 Decoder-only 赢了:任务统一(一切皆 next-token 预测)、训练效率(每个 token 都提供监督信号)、scaling 友好(结构最简)——这场胜出揭示了"通用性+可扩展性"战胜"任务专用归纳偏置"的时代逻辑。

前置知识

kp-004(Self/Cross Attention)、kp-012(自回归目标)。

核心概念

  • Encoder-Decoder(T5/翻译系):编码器双向理解源序列 → 解码器因果生成目标序列,Cross-Attention 桥接。优点:理解-生成职责分明、源可完整双向编码;代价:两套参数、推理两段式、 scaling 不如单塔简洁。
  • Encoder-only(BERT 系):只有双向 Self-Attention(无掩码可看全文),配 MLM/NSP 预训练。强项:理解类任务(分类/NER/检索)微调效率高;弱项:不能生成(双向注意力与自回归生成矛盾)。
  • Decoder-only(GPT 系,当代主流):只有因果 Self-Attention,自回归 next-token 预测。胜出三因素:

1. 任务统一:理解任务也可以写成"读 prompt 续写答案"——生成范式吞并理解范式; 2. 监督密度:每个位置都有预测任务(BERT 的 MLM 只遮 15%)——同 token 数下监督信号更密; 3. 结构最简+KV Cache 推理天然适配(kp-023)。

  • 零样本/少样本的统一(GPT-3):Decoder-only + 大规模预训练 + prompt 格式 → 无需微调跨任务——"任务描述也是文本",架构统一的终极红利(kp-029 ICL)。

原理与机制

为什么 BERT 的双向性与生成矛盾:生成要求"只看过去"(自回归分解);双向注意力训练时看全文,推理时无法满足"条件只含已生成部分"——除非改回因果掩码(那 BERT 的预训练目标又不匹配)。注意力方向与训练目标是绑定的——这是架构不能混搭的根本约束。

为什么"理解任务也能生成式解决":情感分析=读评论续写"正面";抽取=续写答案串——把判别任务改写成生成格式后,Decoder-only 的自回归就能处理;代价是推理比分类头贵(要生成 token)。规模化后"一个模型所有任务"的价值压倒了"专用头更高效"(kp-029 的 ICL 承接)。

Encoder-only 并未消亡:检索(embedding 模型)、句向量、代码搜索——理解类专用场景 BERT 系仍是效率首选;"生成看 GPT 系、理解看 BERT 系"是当前分工。

图示

Encoder-Decoder: 源 →[双向编码]→ 桥(Cross) →[因果解码]→ 目标
                 (T5/翻译/Whisper)
Encoder-only:    全文双向 → [CLS]/token 表示 → 分类/检索
                 (BERT 系 ; 不能生成)
Decoder-only:    因果自回归, 一条序列通吃 prompt+生成
                 (GPT/Llama 系 ; 当代LLM主流)
胜因: 任务统一(皆next-token) + 监督密度高 + 结构最简+KV Cache

直观类比

Encoder-Decoder 像"翻译公司":译员团队先吃透原文(编码),再由撰稿人产出译文(解码)——分工明确但协调有成本。Decoder-only 像"一位边读边写的作者":读完你的信(prompt)自然续写回信——一个人处理读写,流程最短。

实例或案例

  • T5 的文本到文本框架:把一切任务写成"text→text"——Encoder-Decoder 的统一化尝试(先声)。
  • GPT-3 的 few-shot:Decoder-only + 175B 规模 → prompt 即接口——架构统一的兑现(kp-029)。
  • BERT 系的现代岗位:搜索引擎语义检索、句向量模型(BGE/E5)——理解侧常青。

常见误区

  • 误区一:"BERT 是低配 GPT"。两者是不同任务取向的架构(理解 vs 生成);BERT 在其岗位(检索/分类)效率与效果仍优于生成式方案。
  • 误区二:"Decoder-only 赢因为注意力更强"。架构组件相同;赢在任务统一性、监督密度与 scaling 路径——是"生态与工程"的胜利不是单点算力。
  • 误区三:"Encoder-Decoder 已死"。翻译/语音(Whisper)/结构化生成仍是其主场——任务形态决定架构选择。

与其他知识点的关系

  • kp-004:Cross-Attention 的存废。
  • kp-012/018/019:预训练目标与两大家族。
  • kp-023/029:KV Cache 与 ICL——Decoder-only 胜出的两个放大器。

自测题

  1. 三种架构各自的注意力组成?

答:Enc-Dec=双向Self+Cross+因果Self;Enc-only=双向Self;Dec-only=因果Self。

  1. 为什么 BERT 不能直接做自回归生成?

答:双向注意力预训练时见过全文,与"只条件于已生成前缀"的自回归分解矛盾——方向与目标绑定。

  1. Decoder-only 胜出的三个因素?

答:任务统一(一切皆 next-token)、每位置监督密度高、结构最简且天然适配 KV Cache 推理。

延伸阅读

  • Wang 等, "What Language Model Architecture and Objective Work Best for Zero-Shot Generalization?"(2022,架构对比实证)。
  • 《T5》论文(Raffel 2020,Enc-Dec 统一框架)。
  • kp-033 的历史脉络完整篇。