Transformer 架构 高级

Encoder 与 Decoder:从 BERT 到 GPT

区分三大架构流派——仅编码器、仅解码器、编码解码器,理解 BERT 与 GPT 的训练目标差异及各自适用场景。

原始 Transformer 是"编码器-解码器"

机器翻译场景:编码器把源语言压成表示,解码器基于它逐词生成目标语言。后来研究者发现两个部分各自都能独当一面,演化出三大流派:

三大架构流派

  • 仅编码器(BERT 系):双向注意力,训练目标是"完形填空"(遮住词猜词)。擅长理解类任务:分类、实体识别、句子相似度 —— Embedding 模型(RAG 检索用的)多是它的后代
  • 仅解码器(GPT 系):单向因果注意力(只看前文),训练目标是"预测下一个词"。擅长生成类任务 —— 你在 LangChain 里调用的 ChatModel 全部属于这一类;
  • 编码器-解码器(T5 系):兼顾理解与生成,翻译、摘要等"输入→输出"映射任务表现稳健。

因果掩码:GPT 的关键开关

仅解码器架构在注意力矩阵上加了下三角掩码:第 i 个词只能看到 1..i 的词。这保证了生成时"未来信息不泄露",也让训练(一次算全句)与推理(逐词生成)目标一致。

选型启示(应用开发者视角)

  • 做 RAG 检索 / 文本分类 → BERT 系或基于它的 Embedding 模型(便宜、快);
  • 做问答、生成、Agent → GPT 系对话模型;
  • 本地小任务两难时 → 先试小参数 GPT 系,通用性最好。

📝 课后练习

quiz-1 BERT 与 GPT 分别属于哪类架构?