GPT 3.0:Language Models are Few-Shot Learners(2020-5-28)

模型介绍

迁移学习是一种在自然语言处理中强大的技术,模型首先要针对数据丰富的任务进行预训练,然后再针对下游任务进行微调。GPT3.0通过引入统一的框架来探索NLP迁移学习技术的前景:将问题都转换为text-to-text 格式,并在数十种语言理解任务研究比较了预训练目标,架构,未标记的数据集,迁移方法和其他因素。结合实验所得以及 C4 数据集,在许多基准上获得了最新的结果,这些基准涵盖了摘要,问题回答,文本分类等等。

GPT-3是具有1750亿参数的自回归语言模型,这比以前的任何非稀疏语言模型大10倍,并在少样本学习的设置下测试其性能。所有任务应用GPT-3模型时均不进行任何梯度更新或微调,而只是通过与模型的文本交互指定任务和少样本学习演示。 GPT-3在许多NLP数据集上均具有出色的性能,包括翻译,问题解答和完形填空,以及一些需要即时推理或领域适应的任务,例如解读词语,新词使用,算术运算。但是,我们还确定一些数据集,GPT-3的少样本学习仍然困难重重;以及一些数据集,GPT-3面临与训练大型Web语料库有关的方法论问题的。

GPT-3主要聚焦于更通用的NLP模型,解决当前BERT类模型的两个缺点:

  • 对领域内有标签数据的过分依赖:虽然有了预训练+精调的两段式框架,但还是少不了一定量的领域标注数据,否则很难取得不错的效果,而标注数据的成本又是很高的。

  • 对于领域数据分布的过拟合:在精调阶段,因为领域数据有限,模型只能拟合训练数据分布,如果数据较少的话就可能造成过拟合,致使模型的泛化能力下降,更加无法应用到其他领域。

因此GPT-3的主要目标是用更少的领域数据、且不经过精调步骤去解决问题。

模型结构

GPT-3 使用与 GPT-2 相同的模型和架构,包括其中修改的初始化,预归一化和其中描述的可逆分词,不同之处是我们在Transformer的各层中交替使用稠密和局部带状稀疏注意力模式,类似于稀疏Transformer。

GPT-3共训练了8种不同大小的模型,范围从1.25亿参数到1,750亿参数,超过三个数量级,最后一个模型称为GPT-3。

GPT 3.0:Language Models are Few-Shot Learners(2020-5-28)_第1张图片
上边显示了8种模型的大小和架构。 n p a r a m s n_{params} nparams 表示可训练参数的总数, n l a y e r s n_{layers} nlayers 是总层数, d m o d e l d_{model} dmodel 是每个瓶颈层的单元数(我们总是将前馈层设为瓶颈层大小的四倍, d f f = 4 ∗ d m o d e l d_{ff}=4*d_{model} dff=4dmodel), d h e a d s d_{heads} dheads 是每个注意头的维度。所有模型都使用 n c t x = 2048 n_{ctx}=2048 nctx=2048 个符号的上下文窗口。

模型改进

方法

基本预训练方法(包括模型,数据和训练)与GPT-2中描述的过程相似,只是相对直接地扩大了模型大小,数据集大小和多样性以及训练时间。

GPT-3评估了许多NLP数据集,以及旨在测试快速适应不太可能直接包含在训练集中的任务的几个新颖任务。传统方法是Fine-Tuning,而GPT-3对于每项任务,我们在3种情况下评估GPT-3:

GPT 3.0:Language Models are Few-Shot Learners(2020-5-28)_第2张图片
Few-Shot(FS):指的是在推理时对模型进行一些任务相关的示例演示,但不允许权重更新。如图2.1所示,对于一个典型的数据集,一个示例具有上下文和所需的补全(例如英语句子和对应的法语句子),并通过给出K个示例上下文和补全的例子进行了Few-Shot。我们通常将K设置在10到100的范围内。FS的主要优点是,大大减少了对特定任务数据的需求,并减少了过拟合的可能性。主要缺点是,到目前为止,这种方法的结果要比最新的微调模型差很多。而且,仍然需要少量的任务特定数据。

One-Shot(1S):和FS一样,不允许权重更新,但是k设置为1,和人类处理任务最为相似。

Zero-Shot (0S) :没有示例演示,仅向模型提供描述任务的自然语言指令,同样没有权重更新。

训练集

使用CommonCrawl数据集,采取了3个步骤来提高数据集的平均质量:

  • 基于与一系列高质量参考语料库的相似性,我们下载并筛选了CommonCrawl的一个版本;
  • 在文档级别、数据集内部和数据集之间执行了模糊重复数据消除,以防止冗余,并保留完整验证集作为一种精确的过拟合度量
  • 将已知的高质量参考语料库添加到训练组合中,以增强CommonCrawl并增加其多样性。

GPT 3.0:Language Models are Few-Shot Learners(2020-5-28)_第3张图片
CommonCrawl数据是从2016年至2019年的每月CommonCrawl的41个分片中下载的,构成了过滤前的45TB压缩明文和过滤后的570GB,大致相当于4000亿字节对编码的分词符号。在训练过程中,并非按大小比例对数据集进行采样,而是对我们视为更高质量的数据集进行更高频采样,例如CommonCrawl和Books2数据集在训练期间的采样次数少于一次,而其他数据集则采样2 -3次。从本质上讲,这会接受少量的过度拟合,以换取更高质量的训练数据。

模型参考

论文地址:https://arxiv.org/abs/2005.14165

代码地址:https://github.com/openai/gpt-3

你可能感兴趣的:(深度学习(NLP),语言模型,自然语言处理,深度学习)