GPT-3:Language Models are Few-Shot Learners 论文解读

paper链接:https://arxiv.org/abs/2005.14165

github链接:https://github.com/openai/gpt-3

摘要

通过对大量文本进行预训练,然后对特定任务进行微调,最近的工作证明了在许多NLP任务和基准方面的巨大收获。尽管在结构上通常与任务无关,但是此方法仍然需要特定于任务的微调数据集,该数据集包含成千上万个示例。相比之下,人类通常只能通过几个示例或简单的指令来执行新的语言任务——当前的NLP系统在很大程度上仍难以做到这一点。在这里,我们证明了扩展语言模型可以极大地提高与任务无关的性能,很少出现问题,有时甚至可以通过现有的最新微调方法达到竞争力。具体来说,我们训练了GPT-3(一种具有1750亿个参数的自回归语言模型,比以前的任何非稀疏语言模型多10倍),并在少量测试中测试了其性能。对于所有任务,应用GPT-3无需进行任何梯度更新或微调,而仅通过与模型的文本交互指定任务和少量演示即可。 GPT-3在许多NLP数据集上均具有出色的性能,包括翻译,问题解答和完形填空任务,以及一些需要即时推理或领域适应的任务。

1 介绍

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

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

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

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

2 方法

传统方法:Fine-Tuning

GPT-3使用方法:

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

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

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

四种方法对比见下图。

GPT-3:Language Models are Few-Shot Learners 论文解读_第1张图片

 

2.1 模型结构

GPT-3依旧延续自己的单向语言模型训练方式,只不过这次把模型尺寸增大到了1750亿,并且使用45TB数据进行训练。同时设置了各种size的模型进行对比。

 

2.2 训练集

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

GPT-3:Language Models are Few-Shot Learners 论文解读_第2张图片

 

在大量互联网数据上进行预训练的语言模型(尤其是具有记忆大量内容的能力的大型模型)的主要方法论问题是,由于在预训练过程中无意中看到了它们的测试或开发集,因此可能污染下游任务。 为了减少这种污染,我们寻求并尝试消除与本文研究的所有基准测试的开发和测试集重叠的部分。 不幸的是,过滤中的错误导致我们忽略了一些重叠,并且由于训练的成本,重新训练模型是不可行的。 在第4节中,我们将描述其余重叠部分的影响(最后结论是几乎没有影响所以不管了),在以后的工作中,我们将更积极地消除数据污染。

3 结果

GPT-3:Language Models are Few-Shot Learners 论文解读_第3张图片

GPT-3:Language Models are Few-Shot Learners 论文解读_第4张图片

3.1.1 Language Modeling

GPT-3:Language Models are Few-Shot Learners 论文解读_第5张图片

3.1.2 LAMBADA

GPT-3:Language Models are Few-Shot Learners 论文解读_第6张图片

。。。。。。(后面太多了有兴趣的同学可以自己去看,就不一一贴出来了)

可以看到这次的GPT-3确实有料,即使不用微调也在一些任务上达到了finetune模型的高度,当然大部分时候是更差的,但是架不住人不要标注语料这一大优势。最后值得一提的是,GPT-3在生成任务上一如既往地表现优异。生成的新闻语料几乎到了以假乱真的程度。

GPT-3:Language Models are Few-Shot Learners 论文解读_第7张图片

GPT-3:Language Models are Few-Shot Learners 论文解读_第8张图片

感想

除了大之外没什么好说的。

参数都不让我调了,失业系列喜加一。

GPT-3的模型参数、训练数据和工作量都是惊人的,论文署名多达31个作者,所有实验做下来花费的时间和财力肯定是非常巨大的,这点从openAI 都无法重新训练模型排除可能存在的数据泄露问题中可以看到。虽然一直以来很多声音对大模型都不怎么待见,更有“硬件学习”这一戏称,但是我们确实从GPT-3这些大模型中看到了NLP领域波澜壮阔的景色,众多工业任务也开始受益于预训练模型,还是感谢科研工作者们的不懈努力和大厂们的巨额投入,让我们这个领域充满惊奇而美妙的奇观~

 

 

 

 

 

 

你可能感兴趣的:(NLP,语言模型)