37|BERT 代表 Encoder-only 路线,38|GPT 代表 Decoder-only 路线。T5 站在它们中间:它保留 Encoder-Decoder 结构,却把几乎所有 NLP 任务都改写成同一种形式——文本输入,文本输出。
这件事的价值不只是接口好看。T5 的原论文标题是 “Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer”。关键词不是某个单独技巧,而是 unified。它把模型结构、预训练目标、数据集、任务格式和消融实验放进同一个框架里,让很多过去难以比较的选择变得可以系统讨论。
本篇能让你学会三件事:
- Text-to-Text 为什么能统一分类、翻译、摘要和问答;
- T5 的 span corruption 和 BERT 的 MLM、GPT 的 next-token prediction 有什么差异;
- 为什么 T5 很重要,但通用大模型时代最终更偏向 Decoder-only。
一、Text-to-Text 的核心思想
T5 最著名的设计,是把所有任务都变成:
输入文本 -> 输出文本
翻译任务可以写成:
translate English to German: That is good.
输出就是德语句子。情感分类也可以写成:
sst2 sentence: This movie is surprisingly good.
输出不是一个分类 head 的 logits,而是文本标签,比如
positive。摘要、问答、自然语言推断也都能用类似方式表达。
这个统一接口的好处是,模型不需要为每种任务改变输出层。所有任务都被组织成条件生成:给定输入序列,生成目标序列。训练、评估和迁移都可以在同一套框架里完成。
二、为什么是 Encoder-Decoder
T5 使用标准 Encoder-Decoder Transformer。Encoder 读取完整输入,Decoder 自回归生成输出。这和机器翻译的经典结构一致:源序列和目标序列可以长度不同、语言不同、格式不同。
如果只用 Encoder-only,模型很适合理解输入,却不自然地产生任意长度输出。如果只用 Decoder-only,也能把输入和输出拼在一起做生成,但输入理解和输出生成共享同一条自回归序列,条件建模的边界不如 Encoder-Decoder 清晰。
T5 的选择体现了它的目标:做一个通用的 sequence-to-sequence 迁移学习框架。输入是什么、输出是什么,都交给文本格式描述。Encoder 专心编码条件,Decoder 专心生成目标。
三、任务前缀不是装饰
T5 常在输入前加任务前缀,比如
translate English to German:、summarize:。这些前缀不是给人看的注释,而是模型输入的一部分。它告诉模型当前文本应该按哪种任务解释。
这和后来的 prompt 思想有明显连续性。任务不再由外部代码或专用 head 指定,而是写进文本上下文。不同的是,T5 的 prompt 更像受控任务标签;GPT 后来的 prompt 更开放,可以包含指令、示例、约束和对话上下文。
统一格式还有一个工程好处:多任务训练时,不同数据集可以混在一起。只要每条样本都写成输入文本和目标文本,训练过程就不需要为每个任务单独改模型结构。
四、span corruption 在学什么
T5 的预训练目标通常被称为 span corruption。它不是像 BERT 那样随机 mask 单个 token,而是把连续片段替换成 sentinel token,然后让 Decoder 生成被删掉的片段。
直觉上,输入类似:
The <extra_id_0> walks in the <extra_id_1>.
目标输出类似:
<extra_id_0> cat <extra_id_1> garden
这个目标同时利用双向上下文和生成式输出。Encoder 可以看完整被破坏的输入,Decoder 需要生成缺失片段。这让它和 BERT、GPT 都不同:BERT 是补洞式理解,GPT 是从左到右续写,T5 是条件生成式重建。
五、C4 与系统化消融
T5 论文的重要性还来自 C4(Colossal Clean Crawled Corpus)和大量消融实验。它不是只提出一个模型,然后给出几个榜单分数,而是系统比较了预训练目标、模型结构、数据规模、训练步数、多任务配比等选择。
C4 来自 Common Crawl 的清洗版本,代表了大规模网页语料工程的一条早期路线。后来的 35|数据工程 讲过,网页不是天然训练数据,必须过滤、清洗、去重和治理。T5/C4 把这件事推到了主流视野里。
从写作主线看,T5 像一座桥:它连接 BERT 的预训练迁移、GPT 的文本生成接口,也连接后来的数据工程和 instruction tuning。
六、T5 的优势和局限
T5 的优势是统一。分类、摘要、翻译、问答都变成同一类训练样本,模型输出也是同一种文本序列。这让多任务学习和迁移学习更整洁。
但统一也有成本。Encoder-Decoder 推理通常比纯 Decoder-only 更复杂,服务系统也更难围绕单一自回归前缀优化。对于通用助手类任务,Decoder-only 的 prompt-to-completion 接口更自然:输入对话,继续生成回复。
所以 T5 没有被历史淘汰。它证明了 Text-to-Text 的强大;只是当任务中心从“各种 NLP benchmark”转向“通用生成助手”时,Decoder-only 路线获得了更大的生态优势。
七、关键概念回顾
- Text-to-Text:把所有任务统一成文本输入和文本输出。
- Encoder-Decoder:Encoder 编码输入条件,Decoder 自回归生成目标。
- 任务前缀:写在输入中的任务说明,如
summarize:。 - span corruption:遮掉连续文本片段,让模型生成缺失内容。
- C4:T5 使用的大规模网页清洗语料。
八、常见误解
8.1 “T5 就是 GPT 加了 Encoder”
不准确。T5 的训练目标、任务格式和迁移学习框架都和 GPT 路线不同。它不是 GPT 的小改,而是 Seq2Seq 统一框架。
8.2 “Text-to-Text 说明所有任务都应该生成”
Text-to-Text 是统一接口,不是所有场景的最优部署方式。低延迟分类、检索和排序任务仍然可能更适合 Encoder-only 模型。
8.3 “T5 不如 GPT 流行,所以不重要”
T5 的重要性在于方法论:统一任务格式、系统消融、大规模清洗语料。这些思想仍然影响后来的模型训练。
九、下一步
BERT、GPT、T5 三条路线已经摆在桌面上。下一篇要横向比较:Encoder-only、Encoder-Decoder、Decoder-only 到底分别赢在哪里,为什么今天的大模型几乎都走向 Decoder-only。
十、参考文献
- Raffel, C. et al. “Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer.” JMLR 2020.
- Devlin, J. et al. “BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding.” NAACL 2019.
- Radford, A. et al. “Improving Language Understanding by Generative Pre-Training.” OpenAI, 2018.
- Vaswani, A. et al. “Attention Is All You Need.” NeurIPS 2017.
← 上一篇:38|GPT 系列 | 下一篇:40|三大路线之争 →
同主题继续阅读
把当前热点继续串成多页阅读,而不是停在单篇消费。
【Transformer 与注意力机制】40|三大路线之争:为什么大模型几乎都是 Decoder-only
Transformer 不是只有一种形态。Encoder-only、Encoder-Decoder、Decoder-only 分别对应理解、条件生成和自回归生成三类信息流。本文横向比较 BERT、T5、GPT 代表的三条路线,解释为什么通用大模型时代 Decoder-only 占主流,以及为什么这不意味着另外两条路线失去价值。
【Transformer 与注意力机制】30|预训练目标:BERT、GPT、T5 其实在学三种不同的事
预训练不只是“拿海量文本先训一下”这么笼统,而是先决定模型到底要预测什么。本文把三条主线拆开:GPT 的自回归语言建模、BERT 的掩码语言建模、T5/BART 的序列到序列去噪。它们分别擅长什么、牺牲什么,为什么最后大模型主航道几乎都走向了 decoder-only 的 next-token prediction。
【Transformer 与注意力机制】38|GPT 系列:从 GPT-1 到 GPT-4 的路线演进
GPT 路线的关键不是某个模型名字,而是 Decoder-only Transformer、next-token prediction、规模扩展、上下文学习、指令微调和人类反馈逐步合流。本文从 GPT-1 讲到 GPT-4,只使用公开可确认信息,解释为什么自回归语言模型最终成为大语言模型时代的主线。
【Transformer 与注意力机制】41|位置编码演进:Sinusoidal → Learned → RoPE → ALiBi
Transformer 本身没有递归和卷积,如果不注入位置信息,它只会看到一袋 token。本文从原始正弦位置编码讲到 learned embedding、相对位置、RoPE 和 ALiBi,解释位置编码为什么从“给 token 加坐标”演进到“让 attention 感知相对距离”,以及长上下文为什么让位置外推变成核心问题。