T5:Exploring the Limits of Transfer Learning with a UnifiedText-to-Text Transformer

论文:https://arxiv.org/pdf/1910.10683.pdf

目录

0 Abstract

1 Introduction

2 Setup

2.1 Model

2.2 The Colossal Clean Crawled Corpus

2.3 Downstream Tasks

2.4 Input and Output Format

3. Experiments

3.1 Baseline

3.1.1 Model

3.1.2 Training

3.1.3 Vocabulary

3.1.4 Unsupervised Objective

3.1.5 Baseline Performance

3.2 Architectures

3.2.1 Model structures

 3.2.2 Comparing different model structures

3.2.3 Objectives

3.2.4 Results

3.3 Unsupervised objectives

3.4 Pre-training Data set

3.4.1 Unlabeled Data Sets

3.5 Training Strategy

3.5.1 Fine-tuning Methods

3.5.2 Multi-task learning

3.5.3 Combining multi-task learning with fine-tuning

3.6 Scaling

4. Reflflection

参考


0 Abstract

在迁移学习中,模型首先在数据丰富的任务上进行预训练,然后在下游任务上进行微调。

在本文中,我们通过引入一个统一的框架,将所有基于文本的语言问题转换为文本到文本的格式,来探索自然语言处理中迁移学习技术的前景。

我们的系统研究比较了几十个语言理解任务的预训练目标、架构、未标记数据集、迁移方法和其他因素。

1 Introduction

工作的基本思想是将每一个文本处理问题都视为一个“文本到文本”的问题,即把文本作为输入,产生新的文本作为输出。这种方法受到了以前NLP任务统一框架的启发,包括将所有文本问题转换为问答(McCann et al.,2018),语言建模(Radford et al.,2019),或跨度提取Keskar et al. 2019b)任务。

文本到文本框架允许我们将相同的模型、目标、训练程序和解码过程直接应用到我们考虑的每一项任务中。我们通过评估各种基于英语的自然语言处理问题的表现来利用这种灵活性,包括问答、文档概括和情感分类,仅举几个例子。通过这种统一的方法,我们可以比较不同迁移学习目标、未标记数据集和其他因素的有效性,同时通过扩展模型和数据集来探索NLP迁移学习的限制。

目标不是提出新的方法,而是对该领域的现状提供一个全面的视角。因此,我们的工作主要包括对现有技术的调查、探索和经验比较。我们还探索了当前方法的局限性,方法是扩大我们系统研究(训练模型高达110亿个参数)的洞察力,以在我们考虑的许多任务中获得最先进的结果。为了进行这种规模的实验,我们引入了“庞大的干净爬行语料库”(C4),这是一个由从网络上搜集的数百千兆字节的干净英语文本组成的数据集。认识到迁移学习的主要效用是在数据稀缺的环境中利用预训练模型的可能性,我们发布了我们的代码、数据集和预训练模型。

2 Setup

在展示本文大规模实证研究的结果之前,先回顾一下我们的结果所需的必要背景主题,包括transformer模型架构和评估的下游任务。

还介绍了个问题作为文本到文本任务处理的方法,并描述了“庞大干净的爬行语料库”(C4),这是我们作为未标记文本数据的来源创建的常见的基于爬行的数据集。本文将模型和框架称为“Text-to-Text Transfer Transformer”(T5)。

2.1 Model

除了下面提到的细节和在第3.2节中探索的变体之外,本模型并没有明显偏离transformer架构

transformer的主要构件是self-attention,self-attention是attention的一种变体,它通过用序列其余部分的加权平均值替换每个元素来处理序列。最初的 Transformer 由encoder-decoder架构组成,旨在用于序列到序列的任务。 最近,使用由单个 Transformer 层堆栈组成的模型也变得很普遍,这些模型具有不同形式的自注意力,用于生成适用于语言建模或分类和跨度预测任务的架构。在 3.2 节中经验性地探索了这些架构变体。

本文的编码器-解码器 Transformer 实现非常接近其最初提出的形式

首先,将输入的token序列映射到嵌入序列,然后将其传递给编码器。编码器由一堆“块(blocks)”组成,每个“块”都包含两个子组件:一个自注意力层,然后是一个小型前馈网络。层标准化应用于每个子组件的输入。我们使用简化版本的层归一化,其中仅重新调整激活值,不应用附加偏差。在层归一化之后,残差跳过连接将每个子组件的输入添加到其输出中。 Dropout 应用于前馈网络、skip connection、注意力权重以及整个堆栈的输入和输出。

解码器在结构上与编码器相似,只是它在每个关注编码器输出的自注意力层之后包括一个标准的注意力机制。解码器中的自注意力机制还使用了一种自回归或因果自注意力(causal self-attention)的形式,它只允许模型关注过去的输出。最终解码器块的输出被馈送到具有 softmax 输出的密集层,其权重与输入嵌入矩阵共享。 Transformer 中的所有注意力机制都被分成独立的“头(heads)”,其输出在进一步处理之前被连接起来。

由于自注意是与顺序无关的(即它是一个对集合的操作),因此通常会向Transformer提供一个显式的位置信号。虽然原始Transformer使用正弦位置信号或学习位置嵌入,但最近使用相对位置嵌入变得更加普遍。相对位置嵌入不是对每个位置使用固定的嵌入,而是根据自我注意机制中比较的“键”和“查询”之间的偏移量产生不同的学习嵌入。我们使用一种简化的位置嵌入形式,其中每个“embedding”只是一个标量,添加到用于计算注意力权重的相应的logit中。为了提高效率,我们还在模型中的所有层之间共享位置嵌入参数,尽管在给定层内,每个注意力头使用不同的学习位置嵌入。通常,学习固定数量的嵌入,每个嵌入对应于一系列可能的键查询偏移量。在这项工作中,我们为所有模型使用了32个嵌入,其范围以对数方式增大到偏量 128,超过该偏移量我们将所有相对位置分配给相同的嵌入。请注意,给定层对超过128 个标记的相对位置不敏感,但后续层可以通过组合来自前一层的局部信息来构建对更大偏移量的敏感性。

总而言之,我们的模型大致相当于原始Transformer除了1、去除层范数偏差,2、将层归一化放在残差路径之外,3、使用不同的位置嵌入方案。
由于这些架构变化与我们在迁移学习的实证调查中考虑的实验因素正交,因此我们将消除它们对未来工作的影响。

2.2 The Colossal Clean Crawled Corpus

以前关于  NLP  迁移学习的大部分工作都利用大型未标记数据集进行无监督学习。在本文中,我们感兴趣的是测量这些未标记数据的质量、特征和大小的影响。为了生成满足我们需求的数据集,我们利用Common  Crawl  作为从网络上抓取的文本来源
Common  Crawl  是一个公开可用的网络存档,它通过从抓取的  HTML  文件中删除标记和其他非文本内容来提供“网络提取的文本” 。这个过程每月产生大约  20TB  的抓取文本数据。但是大多数生成的文本不是自然语言。相反,它主要包含乱码或样板文本,如菜单、错误消息或重复文本。此外,大量抓取的文本包含不太可能对我们考虑的任何任务有帮助的内容(冒犯性语言、占位符文本、源代码等)。为了解决这些问题,我们使用以下启发式方法来清理Common  Crawl 的网络提取文本:
  • 我们只保留了以标点符号结尾的行(即句号、感叹号、问号或结束引号)。
  • 我们丢弃了少于5个句子的页面,只保留了至少包含3个单词的行。
  • 我们删除了任何包含“肮脏、下流、淫秽或其他不良词语列表”中任何词语的页面。
  • 许多抓取的页面包含警告,声明应该启用Javascript,所以我们删除了任何带有Javascript的行。
  • 一些页面有占位符“lorem ipsum”文本;我们删除了所有出现“lorem ipsum”字样的页面。
  • 某些页面无意中包含代码。由于大括号“{”出现在许多编程语言中(例如  Javascript,在网络上广泛使用)但不在 自然文本中,我们删除了所有包含大括号的页面。
  • 为了对数据集进行重复数据删除,我们丢弃了数据集中不止一次出现的任何三句跨度中的一个。
此外,由于我们的大部分下游任务都集中在英语文本上,我们使用langdetect7以至少0.99的概率过滤掉任何未被分类为英语的页面。我们的启发式方法受到过去使用Common  Crawl作为  NLP  数据源的工作的启发。
为了组装我们的基础数据集,我们从2019年4月下载了网络提取的文本,并应用了上述过滤。这产生的文本集合不仅比用于预训练的大多数数据集(约750 GB)大几个数量级,而且还包含相当干净和自然的英文文本。我们将此数据集称为“Colossal  Clean  Crawled  Corpus”(或简称 C4)并将其作为  TensorFlow  数据集的一部分发布。在第3.4节中考虑了使用该数据集的各种替代版本的影响。

2.3 Downstream Tasks

目标是衡量一般语言学习能力。
因此,我们研究了一系列不同基准的下游性能,包括机器翻译、 问答、抽象摘要和文本分类。具体来说,我们测量了GLUE和SuperGLUE文本分类元基准的性能;CNN/Daily Mail抽象摘要;SQuAD问答;和 WMT 英语到德语、法语和罗马尼亚语的翻译。所有数据均来自TensorFlow Datasets。
GLUE和 SuperGLUE均包含一组文本分类任务,旨在测
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>