T5 (Text-to-Text Transfer Transformer) — T5(文本到文本转换模型)

From Systems analysis wiki
Jump to navigation Jump to search

T5Text-to-Text Transfer Transformer)是 Google AI 研究人员开发的一个大型语言模型家族,于 2019 年发布[1]。T5 的关键创新是一个统一的“文本到文本”(text-to-text)框架,它将任何自然语言处理(NLP)任务都视为将一个文本序列转换为另一个文本序列的问题。这使得可以用单一模型、损失函数和训练流程来处理翻译、摘要、问答和分类等各种任务[2]

该模型基于标准的“编码器-解码器” Transformer 架构,这使其区别于 BERT(仅编码器)和 GPT(仅解码器)等模型。T5 的工作旨在进行一项大规模的实证研究,以系统地探索和比较 NLP 中不同的迁移学习技术,而不是创造一种全新的方法[1]

“文本到文本”范式

T5 的核心思想是将所有任务统一表述为相同的格式。模型接收文本输入,并生成文本输出。为了让模型能够区分不同的任务,输入序列前会添加一个特定的文本任务前缀[2]

  • 翻译:`translate English to German: That is good.` → `Das ist gut.`
  • 情感分类:`sst2 sentence: a very exciting film.` → `positive`
  • 摘要:`summarize: [一篇长文章的文本]` → `[简短的摘要]`

这种方法极大地简化了模型的应用过程,无需为每个特定任务开发专用的“头”(task-specific heads),而这正是像 BERT 这样的架构的特点[3]

架构与规模

编码器-解码器架构

T5 采用标准的 Transformer 架构,由两部分组成[1]

  • 编码器:同时处理整个输入序列,生成丰富的上下文表示。与 BERT 类似,T5 的编码器是双向的
  • 解码器:利用编码器提供的表示,逐个 token(自回归地)生成输出文本。

这种混合结构使 T5 能够有效解决语言理解和文本生成两类任务[4]

关键改进

与原始 Transformer 模型相比,T5 的架构包含几项改动:

  • 相对位置嵌入:T5 不使用绝对的正弦位置嵌入,而是采用一种简化但高效的相对位置编码形式,其中注意力 logits 会加上一个可学习的标量偏移(bias),该偏移仅取决于 token 之间的相对距离[1]
  • 改进的层归一化(Layer Norm):为了提高训练稳定性,层归一化被移到了残差连接(residual connection)之外,并且移除了其中的加性偏移(bias)。

模型规模

在最初的论文中,该模型被分为几种不同参数数量的配置,以便系统地研究模型规模的影响[5]

  • T5-Small:约 6000 万参数
  • T5-Base:约 2.2 亿参数
  • T5-Large:约 7.7 亿参数
  • T5-3B:约 30 亿参数
  • T5-11B:约 110 亿参数

研究表明,扩大模型规模是提升其性能最可靠的方法之一[1]

预训练:C4 数据集与 Span Corruption 任务

Span Corruption 任务

T5 的预训练选择了一种去噪(denoising)任务,具体来说是一种名为片段损坏(span corruption)的变体[6]。该方法的工作流程如下:

  1. 在输入文本中,随机屏蔽 15% 的 token。
  2. 与 BERT 的 MLM 方法不同(该方法屏蔽单个 token),T5 屏蔽的是连续的文本片段(spans)。
  3. 每个损坏的片段被替换为一个唯一的掩码 token(例如 `<X>`、`<Y>`)。
  4. 模型被训练来生成由相应掩码分隔的、被移除的文本片段序列。

这种方法迫使模型预测整个文本序列,事实证明,这比简单的语言建模是一种更有效的预训练任务[1]

C4 数据集 (Colossal Clean Crawled Corpus)

为了发挥迁移学习的潜力,研究人员创建了一个巨大且经过高质量清洗的文本数据集 C4,其大小约为 750 GB[2]。它通过对公开的网络语料库 Common Crawl进行大规模清洗和过滤而获得[7]。清洗过程包括删除重复内容、样板文字(“Lorem ipsum”)、不完整的句子,以及过滤不雅词汇[8]

对 C4 数据集的批评

尽管 C4 的目标是创建一个“干净”的语料库,但其过滤过程因存在系统性偏见而受到批评。研究表明,其不雅词汇过滤器不成比例地移除了与 LGBTQ+ 社群相关的文本,以及非裔美国人英语(AAE)的文本[8]。此外,数据集中还发现了大量冒犯性和受版权保护的内容。这些问题说明了创建客观“高质量”数据集的复杂性,以及技术性的过滤决策如何可能导致意想不到的社会偏见。

结果与性能

在发布时,T5 在众多基准测试中创造了新的最高水平(state-of-the-art)记录,包括 GLUESuperGLUESQuAD 和摘要任务[2]。特别是,T5-11B 模型在 SuperGLUE 上取得了接近人类水平的成绩,展示了其处理需要复杂逻辑推理任务的能力[9]。这些结果证实了该研究的核心假设:统一框架、大规模模型和高质量数据集的结合,是实现 NLP 领域顶尖成果的极其强大的策略。

T5 的演进与变体

T5 的方法为后续众多模型奠定了基础:

  • mT5:T5 的多语言版本,在覆盖 101 种语言mC4 语料库上训练[10]
  • ByT5:一个实验性版本,完全放弃了 tokenization,直接处理原始 UTF-8 字节。这使其能够抵抗拼写错误,并能“开箱即用”地处理任何语言[11]
  • Switch Transformer:T5 的一个可扩展版本,引入了专家混合(Mixture-of-Experts, MoE)架构,从而在保持合理计算成本的同时,将参数数量扩展至万亿级别[12]
  • FLAN-T5:这不是一种新架构,而是标准的 T5 模型经过了额外的微调阶段,使用了数百个以指令形式(instruction tuning)表述的任务进行训练。这显著提升了其在零样本(zero-shot)(无示例)模式下对未见过的新任务的泛化能力[13]
  • UL2:该模型发展了 T5 的思想,采用了一种名为去噪器混合(Mixture of Denoisers)的新预训练目标,通过组合不同的文本掩码方案来提高通用性[14]

链接

参考文献

  • Vaswani, A. et al. (2017). Attention Is All You Need. arXiv:1706.03762.
  • Raffel, C. et al. (2020). Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer. arXiv:1910.10683.
  • Xue, L. et al. (2021). mT5: A Massively Multilingual Pre-trained Text-to-Text Transformer. arXiv:2010.11934.
  • Dodge, J. et al. (2021). Documenting Large Webtext Corpora: A Case Study on the Colossal Clean Crawled Corpus. arXiv:2104.08758.
  • Fedus, W. et al. (2021). Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity. arXiv:2101.03961.
  • Ni, J. et al. (2021). Sentence-T5: Scalable Sentence Encoders from Pre-trained Text-to-Text Models. arXiv:2108.08877.
  • Guo, M. et al. (2021). LongT5: Efficient Text-To-Text Transformer for Long Sequences. arXiv:2112.07916.
  • Xue, L. et al. (2022). ByT5: Towards a Token-Free Future with Pre-trained Byte-to-Byte Models. arXiv:2105.13626.
  • Tay, Y. et al. (2022). UL2: Unifying Language Learning Paradigms. arXiv:2205.05131.
  • Chung, H. W. et al. (2022). Scaling Instruction-Finetuned Language Models. arXiv:2210.11416.
  • Longpre, S. et al. (2023). The Flan Collection: Designing Data and Methods for Effective Instruction Tuning. arXiv:2301.13688.

注释

  1. 1.0 1.1 1.2 1.3 1.4 1.5 Raffel, Colin; Shazeer, Noam; Roberts, Adam; et al. «Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer». Journal of Machine Learning Research. [1]
  2. 2.0 2.1 2.2 2.3 «Exploring Transfer Learning with T5: the Text-To-Text Transfer Transformer». Google Research Blog. [2]
  3. «A Detailed Look At Google's T5 Model in NLP». DhiWise Blog. [3]
  4. «T5 (Text-to-Text Transfer Transformer)». GeeksforGeeks. [4]
  5. «T5». Hugging Face Transformers Documentation. [5]
  6. «T5 (language model)». In Wikipedia. [6]
  7. «C4 Dataset». Papers With Code. [7]
  8. 8.0 8.1 Dodge, J.; Sap, M.; Marasović, A.; et al. «Documenting Large Webtext Corpora: A Case Study on the Colossal Clean Crawled Corpus». arXiv. [8]
  9. «Google T5 algorithm scores 88.9 on SuperGLUE languge benchmark, compared to 89.8 human baseline». Reddit, r/linguistics. [9]
  10. Xue, Linting; Constant, Noah; Roberts, Adam; et al. «mT5: A massively multilingual pre-trained text-to-text transformer». arXiv. [10]
  11. Xue, Linting; Barua, Aditya; Constant, Noah; et al. «ByT5: Towards a token-free future with pre-trained byte-to-byte models». arXiv. [11]
  12. Fedus, William; Zoph, Barret; Shazeer, Noam. «Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity». arXiv. [12]
  13. Chung, Hyung Won; et al. «Scaling Instruction-Finetuned Language Models». arXiv. [13]
  14. Tay, Yi; Dehghani, Mostafa; Tran, Vinh; et al. «UL2: Unifying Language Learning Paradigms». arXiv. [14]