文章主题:北大, 人工智能, 语言模型, 上下文学习

666AI工具大全,助力做AI时代先行者!

大型语言模型中的突现能力:研究范式转变与潜在应用

作者:符尧,他的电子邮件地址是yao.fu@ed.ac.uk,目前就读于爱丁堡大学(University of Edinburgh),本科毕业于我国顶尖的北京大学。他与Tushar Khot以及彭昊一同在艾伦人工智能研究院(Allen Institute for AI)共同完成了英文原稿的创作。此外,他还与李如寐(现任美团NLP中心成员)合作,将英文原稿翻译成了中文。对于这次研究的成功,他特别感谢Aristo团队成员,其中包括Jingfeng Yang和Yi Tay,他们的讨论和建议对他的研究起到了重要的推动作用。同时,他也感谢CoT[1]团队的博客,这对于他的研究工作有着极大的启发和借鉴意义。

在此前《ChatGPT进化的秘密》一文中,本文作者剖析了ChatGPT的技术路线图。而在ChatGPT发布前,作者详细介绍了大模型的突现能力、以及它在NLP/ML任务中的潜在优势,以此来探讨大模型所带来的“潜在的”范式转变。显然,后来ChatGPT所展现出的强大能力,将这种转变的步伐扎实地推进了一大步。

英文版原文:https://franxyao.github.io/blog.html

近期,人们对于大型语言模型所展现出的卓越能力(如思维链[2]、便签本[3])表现出浓厚的兴趣,相关研究也取得了丰硕的成果。我们将其概括为大模型的突现能力[4],这种能力或许仅限于大型模型,而小型模型则无法触及。在此背景下,诸如复杂推理、知识推理以及分布外的鲁棒性等卓越能力显得尤为引人注目。

需要指出的是,这些能力与NLP领域几十年来一直致力于追求的能力颇为接近,这预示着一种潜在的研究方法变革,即从微调小型模型转向利用大型模型进行上下文学习。对于先行者在这一领域的探索者而言,这种方法论的改变或许显得尤为明显。然而,鉴于科学研究的严谨性,我们需要有明确且充分的理由来解释为何人们应当转向使用大型语言模型,即便这些模型的开发成本高昂、使用难度大,且可能在效果上并不理想。

在本文中,我们将仔细研究这些能力是什么,大型语言模型可以提供什么,以及它们在更广泛的 NLP/ML 任务中的潜在优势是什么。

前提:我们假设读者具备以下知识:

在撰写本文时,我们需要关注三个关键环节:预训练、精调和提示。预训练是指在进行具体任务之前,利用大量数据对模型进行训练,以提高其泛化能力。精调则是在预训练的基础上,针对特定领域或任务进行微调,以达到更好的性能表现。对于普通从业者而言,他们可能并不熟悉这两个概念,但只需理解它们在实际应用中的重要性即可。此外,提示和便签本是两个辅助工具,可以帮助从业者在学习和工作中更加高效地解决问题。

1、存在于大模型而非小模型的突现能力

大型语言模型中的突现能力:研究范式转变与潜在应用
图片来自于 Wei. et. al. 2022. Chain-of-Thought Prompting Elicits Reasoning in Large Language Models。X轴为模型尺寸。GSM8K是一个小学水平的数学问题集。

在以上的效果图中,我们可以观察到模型的表现:

当尺寸相对小的时候提升并不大当模型变大时有很明显的提升

这从根本上说明,某些能力可能不存在于小模型中,而是在大模型中获得的。

在2022年,Wei等人整理了许多有趣的人工智能能力[5]。然而,在这篇文章中,我们将不会探讨某些能力,例如last latter concatenation,我们认为这超出了语言模型的职责范围;或者3位数的加法,我们认为这是计算器的任务。

在本文中,我们主要对以下能力感兴趣:

1. NLP 社区近几年都关注但还没实现的能力

2. 之前的 NLP 模型很难达到的能力

3. 源自于人类语言最深层的本质的能力

4. 可能达到人类智力的最高水平的能力

2、突现能力的三个典型例子

很多有意思的能力都可以归到上文提到的类别里,在它们之中,我们主要讨论以下三种典型能力:

复杂推理知识推理分布外鲁棒性

接下来让我们一个个详细讨论。

复杂推理

下面是一个GSM8K数据集中,用提示词显著超过精调的例子:

大型语言模型中的突现能力:研究范式转变与潜在应用

虽然这道题对于10岁的孩子来说很容易,但对语言模型来说却很难,主要是由于数学和语言混合在一起。

GSM8K 技术最初是由 OpenAI 在2021年10月[6]提出的。在那时,他们利用第一代GPT3技术对所有训练集进行了精细调整,其准确率大约为35%。这一成果让作者感到失望,因为他们的研究揭示了语言模型的规模与性能之间的关系:随着模型规模的扩大,其表现也将以指数方式增长(我在下文中将详细讨论这一点)。因此,在第4.1小节中,作者开始思考如何进一步优化这种关系,以提高语言模型的性能。

”175B 模型似乎需要至少额外两个数量级的训练数据才能达到 80% 的求解率。“

在2022年1月, Wei 等人[7]采用540B PaLM模型,仅用8个思维链提示示例,就成功将准确率提升至56.6%,而这一成果并未依赖训练集数量的显著增加。紧接着在2022年3月, Wang 等人[8]同样基于540B PaLM模型,借助多数投票的方式,将准确率进一步提升至74.4%。与此同时,我国AI2团队在2022年11月的SOTA研究中(Fu et. al. Nov 2022[9])展示了一种新的方法,通过在175B Codex上利用复杂的思维链,取得了82.9%的准确率。这一成果进一步证明,技术进步正在以指数级的速度发展。

思维链提示是一个展示模型随着规模突现出能力的典型例子:

从突现能力来看:尽管不需要 17500B,但模型大小确实要大于 100B ,才能使思维链的效果大于的仅有回答提示。所以这种能力只存在于大型模型中。从效果来看:思想链提示的性能明显优于其之前的精调方法(目前还没有能公平对比提示词和微调的工作。但当思维链被提出的时候,尽管他们对于提示和精调的比较可能是不公平的,但确实比精调效果要好)。从标注效率上来看:思维链提示只需要 8 个示例的注释,而微调需要完整的训练集。

对于部分同学而言,他们可能会认为,一种能够应用于小学数学模型的技术,并不能够体现出其真正的价值所在,在他们看来,这或许并不那么令人感到惊艳。然而,我们需要认识到,GSM8K只是这一领域的冰山一角。实际上,我们的研究工作已经将最前沿的问题推进至高中、大学,甚至国际数学奥林匹克问题的层面。那么,相较于之前,我们是否已经找到了更为酷炫的解决方案呢?

知识推理

下一个例子是需要知识的推理能力(例如问答和常识推理)。在这种情况下,对大型模型进行提示不一定优于精调小型模型(哪个模型更好还有待观察)。但是这个情况下的注释效率被放大了,因为:

在许多数据集中,为了获得所需的背景/常识知识,(以前很小的)模型需要一个外部语料库/知识图谱来检索[13],或者需要通过多任务学习在增强[14]的数据上进行训练对于大型语言模型,可以直接去掉检索器[15],仅依赖模型的内部知识[16],且无需精调
大型语言模型中的突现能力:研究范式转变与潜在应用

图片来自于 Yu et. al. 2022. 以前的 SOTA 模型需要从外部知识源中检索。GPT-3 的性能与以前的模型相当/优于以前的模型,且无需检索。

如表中所示,与数学题的例子不同,GPT-3 并没有明显优于之前的精调模型。但它不需要从外部文档中检索,本身就包含了知识(虽然这些知识可能过时或者不可信,但选择哪种可信知识源超出了本文的讨论范围)。

为了理解这些结果的重要性,我们可以回顾一下历史:NLP 社区从一开始就面临着如何有效编码知识的挑战。人们一直在不断探究把知识保存在模型外部或者内部的方法。

上世纪九十年代以来,人们一直试图将语言和世界的规则记录到一个巨大的图书馆中,将知识存储在模型之外。但这是十分困难的,毕竟我们无法穷举所有规则。

因此,研究人员开始构建特定领域的知识库,来存储非结构化文本、半结构化(如维基百科)或完全结构化(如知识图谱)等形式的知识。通常,结构化知识很难构建(因为要设计知识的结构体系),但易于推理(因为有体系结构),非结构化知识易于构建(直接存起来就行),但很难用于推理(没有体系结构)。然而,语言模型提供了一种新的方法,可以轻松地从非结构化文本中提取知识,并在不需要预定义模式的情况下有效地根据知识进行推理。下表为优缺点对比:
大型语言模型中的突现能力:研究范式转变与潜在应用

分布外鲁棒性

我们讨论的第三种能力是分布外的鲁棒性。在 2018 年至 2022 年期间,NLP、CV 和通用机器学习领域有大量关于分布偏移/对抗鲁棒性/组合生成的研究,人们发现当测试集分布与训练分布不同时,模型的行为性能可能会显著下降。然而,在大型语言模型的上下文学习中似乎并非如此。Si 等人在2022年的研究显示[17]:

大型语言模型中的突现能力:研究范式转变与潜在应用

数据来自于 Si et. al. 2022. 虽然 GPT-3 在同分布设置下比 RoBERTa 要差,但在非同分布设置下优于 RoBERTa,性能下降明显更小。

同样,在此实验中,同分布情况下基于提示词的 GPT-3 的效果并没有精调后的 RoBERTa要好。但它在三个其他分布(领域切换、噪声和对抗性扰动)中优于 RoBERTa,这意味着 GPT3 更加鲁棒。

此外,即使存在分布偏移,好的提示词所带来的泛化性能依旧会继续保持。比如:

大型语言模型中的突现能力:研究范式转变与潜在应用

图片来自于 Fu et. al. 2022. 即使测试分布与训练分布不同,复杂提示也始终比简单提示的表现更好。

Fu 等人2022年[18]的研究显示,输入提示越复杂,模型的性能就越好。这种趋势在分布转移的情况下也会继续保持:无论测试分布与原分布不同、来自于噪声分布,或者是从另一个分布转移而来的,复杂提示始终优于简单提示。

到目前为止的总结

在上文中,我讨论了只有大型模型才有的三种突现能力。它们是:

复杂推理,大型模型在没有使用全部训练数据的情况下便显著优于以前的小型模型。知识推理,大型模型可能没有小模型效果好,但大模型不需要额外的知识来源(知识可能很昂贵,或者很难从非结构化数据中抽取)。分布外鲁棒性,这是之前进行模型精调时需要努力解决的问题。大型模型虽然在同分布情况下的效果不如以前的方法,但非同分布情况下的泛化性能却好得多。

3、突现能力推翻比例定律

鉴于上文列出的优点,大家可能会开始觉得大型语言模型确实很好了。在进一步讨论之前,让我们再回顾一下之前的工作,就会发现一个很奇怪的问题:GPT-3 在 2020 年就发布了,但为什么直到现在我们才发现并开始思考范式的转变?

这个问题的答案就藏在两种曲线中:对数线性曲线和相变曲线。如下图:

大型语言模型中的突现能力:研究范式转变与潜在应用

最初,(OpenAI)的研究者认为语言模型的性能与模型尺寸的关系可以通过对数线性曲线预测,即模型尺寸呈指数增长时,性能会随之线性增加。这种现象被称为语言模型的缩放定律,正如 Kaplan 等人在2020年[19]最初的GPT3文章[20]中讨论的那样。

重要的是,在那个阶段,即便最大的 GPT-3 在有提示的情况下也不能胜过小模型精调。所以当时并没有必要去使用昂贵的大模型(即使提示词的标注效率很高)。

直到2021年,Cobbe 等人[21]发现缩放定律同样适用于精调。这是一个有点悲观的发现,因为它意味着我们可能被锁定在模型规模上——虽然模型架构优化可能会在一定程度上提高模型性能,但效果仍会被锁定在一个区间内(对应模型规模),很难有更显著的突破。

在缩放定律的掌控下(2020年到2021),由于GPT-3无法胜过精调 T5-11B,同时T5-11B微调已经很麻烦了,所以NLP社区的关注点更多的是研究更小的模型或者高效参数适应。Prefix tuning[22]就是提示和适应交叉的一个例子,后来由 He 等人在 2021[23]统一。

当时的逻辑很简单:如果精调效果更好,我们就应该在高效参数适应上多下功夫;如果提示词的方法更好,我们应该在训练大型语言模型上投入更多精力。

之后在 2022 年 1 月,思维链的工作被放出来了。正如作者所展示的那样,思维链提示在性能-比例曲线中表现出明显的相变。当模型尺寸足够大时,性能会显著提高并明显超越比例曲线。

当使用思维链进行提示时,大模型在复杂推理上的表现明显优于微调,在知识推理上的表现也很有竞争力,并且分布鲁棒性也存在一定的潜力。要达到这样的效果只需要8个左右的示例,这就是为什么范式可能会转变的原因。

4、范式转变意味着什么?

范式转变究竟意味着什么?下面我们给出精调和提示词方法的对比:

大型语言模型中的突现能力:研究范式转变与潜在应用

提示词的好处很明显:我们不再需要繁琐的数据标注和在全量数据上进行精调,只需要编写提示词并获得满足要求的结果,这比精调要快很多。

另外要注意的两点是:

上下文学习是监督学习吗?

坦白讲,我不确定。相似之处在于,上下文学习也需要像训练数据一样的示例不同之处在于,上下文学习的泛化行为并不同于监督学习,这使得之前的泛化理论(例如 Rademancher Complexity 或 Neural Tangent Kernel)均不适用。

上下文学习真的比监督学习效果要好吗?

答案还未知。大多数提示词和精调的对比都只比了 提示词+大模型 vs 精调+小模型,但公平的对比应该是 提示词+大模型 vs 精调+大模型,且对比时的基座模型应该一样。所以在最初的思维链文章中,如果 Wei 等人要说明提示词好于精调,他们应该对比精调后的PaLM,而不是GPT3。我的假设是:精调可以提高分布内的性能,但会损害分布外的鲁棒性。提示词在分布变化的场景中表现更好,但在同分布场景下不如精调。

a.如果假设是真的,那么一个值得研究的问题就是如何在不牺牲其上下文学习能力的情况下进行精调。

b. 注意分布外精调的效果同样会随着模型尺寸变化。比如 Yang 等人在2022年的工作中,第四张表就显示,Bart-based的分布外泛化能力会下降,但Bart-large则提升。对于大模型,当测试集的分布和训练集相差不大时,同分布的精调效果也应该会提升。

再回顾一下前文提到的逻辑:如果精调更好,我们应该努力研究如何进行参数高效的优化;如果提示词更好,我们应该努力去训练更好的大型语言模型。

所以,尽管我们相信大型语言模型有巨大的潜力,仍然没有确凿的证据表明精调和提示词哪种方法更好,因此我们不确定范式是否真的应该转变、或应该转变到什么程度。仔细比较这两种范式,使我们对未来有一个清晰的认识,是非常有意义的。我们将更多讨论留到下一篇文章。

5、模型应该多大才够?

两个数字:62B 和 175B。

模型至少需要62B,使思维链的效果才能大于标准的提示词方法。模型至少需要175B(GPT3的尺寸),思维链的效果才能大于精调小模型(T5 11B)的效果。

62B这个数字来自于 Chung 等人 2022 年工作的第五张表[24]:

大型语言模型中的突现能力:研究范式转变与潜在应用

对于所有小于62B的模型,直接用提示词都好于思维链。第一个用思维链更好的模型是 Flan-cont-PaLM 62B 在BBH上的结果。540B的模型使用思维链会在更多任务上得到好的效果,但也不是全部任务都好于精调。

另外,理想的尺寸可以小于 540B,在 Suzgun 等人2022年[25]的工作中,作者展示了175B的 InstructGPT 和 175B的 Codex 使用思维链都好于直接用提示词。综合以上结果,我们得到了63B和175B两个数字。所以,如果想要参与这场游戏,首先要有一个大于平均尺寸的模型。

不过,还有其他大型模型在思维链下的表现差了很多,甚至不能学到思维链,比如 OPT、BLOOM 和 GPT-3 的第一个版本。他们的尺寸都是175B。这就引出了我们下一个要讨论的问题。

6、规模是唯一的因素吗?

不是。

规模是一个必要但不充分的因素。有些模型足够大(比如 OPT 和 BLOOM,都是 175B),但并不能做思维链。

有两种模型可以做思维链 (TODO: add discussions about UL2):

GPT3系列的模型,包括 text-davinci-002 和 code-davinci-002 (Codex)。这是仅有的两个具有强大突现能力并可公开访问的模型。

a. 除了以上两个模型,其他GPT3模型,包括原来的GPT3,text-davinci-001,以及其他更小的GPT-3模型,都不能做思维链。

b. 当说“能做思维链”时,我们是指使用思维链方法的效果比直接用提示词、精调T5-11B效果更好。

c. 另外要注意的是,code-davinci-002 在语言任务上的性能始终优于 text-davinci-002。这个观察非常有趣且耐人寻味。这表明基于代码数据训练的语言模型可以胜过根据语言训练的语言模型。目前为止我们还不知道是为什么。

PaLM系列模型,包括 PaLM、U-PaLM、Flan-PaLM 和 Minerva。这些模型目前还未开放访问(此处@谷歌,快开源吧)。

为什么会有突现能力目前还不清楚,但我们找出了一下可能产生突现能力的因素:

指令精调:GPT-3 text-davinci-002 就是用指令+强化学习精调[26]的产物。在这之前,text-davinci-001 做思维链的效果并不好。同时PaLM[27]在经过指令精调[28]后的效果也有提升。

在代码上精调:Codex code-davinci-002 是在代码上进行精调的,它的效果持续好于 text-davinci-002。PaLM 也在代码上进行了调整。从表面上看,代码与语言关系不大,但似乎起了很大作用,我们会在之后的文章

进行讨论。

用思维链精调:在 text-davinci-002 发布时,谷歌已经发布 PaLM 3 个月了。所以 OpenAI 应该看到了思维链相关的工作。还有一些工作表明[29][30],直接用思维链数据进行精调可以激发模型的思维链能力。

然而,所有这些因素在现阶段都是推测。揭示如何训练才能让模型产生突现能力是非常有意义的,我们将更多讨论留到下一篇文章

7、总结

在本文中,我们仔细研究了语言模型的突现能力。我们强调了复杂推理、知识推理和分布外鲁棒性的重要性和其中存在的机会。突现能力是非常令人兴奋的,因为它们可以超越比例定律,并在比例曲线中表现出相变。

我们详细讨论了研究范式是否会真的从精调转向上下文学习,但我们目前还没有确切答案,因为精调和上下文学习在分布内、分布外场景下的效果仍有待对比。最后,我们讨论了产生突现能力的三个潜在因素:指令精调、代码精调和思维链精调。非常欢迎大家提出建议和讨论。

另外我们还提到了两个尚未讨论的有趣问题:

我们是否能公平对比精调和上下文学习的效果?我们是如何训练大模型,才能让模型具备突现能力、思维链能力?

对于这两个问题,我们会在之后的文章中

进行讨论。

中英对照表

大型语言模型中的突现能力:研究范式转变与潜在应用

参考资料

[1]https://www.yitay.net/blog/emergence-and-scaling: https://www.jasonwei.net/blog/emergence[2]Wei et. al. 2022. Chain of Thought Prompting Elicits Reasoning in Large Language Models: https://arxiv.org/abs/2201.11903

[3]便签本: https://lingo.csail.mit.edu/blog/arithmetic_gpt3/

[4]Wei et. al. 2022. Emergent Abilities of Large Language Models: https://arxiv.org/abs/2206.07682

[5]Wei et. al. 2022. Emergent Abilities of Large Language Models: https://arxiv.org/abs/2206.07682

[6]Cobbe et. al. 2021. Training Verifiers to Solve Math Word Problems: https://arxiv.org/abs/2110.14168

[7]Wei et. al. 2022. Chain of Thought Prompting Elicits Reasoning in Large Language Models: https://arxiv.org/abs/2201.11903

[8]Wang et. al. 2022. Self-Consistency Improves Chain of Thought Reasoning in Language Models: https://arxiv.org/abs/2203.11171

[9]Fu et. al. 2022. Complexity-Based Prompting for Multi-step Reasoning: https://arxiv.org/abs/2210.00720

[10]Chung et. al. 2022. Scaling Instruction-Finetuned Language Models: https://arxiv.org/abs/2210.11416

[11]Lewkowycz et. al. 2022. Minerva: Solving Quantitative Reasoning Problems with Language Models: https://arxiv.org/abs/2206.14858

[12]Jiang et. al. 2022. Draft, Sketch, and Prove: Guiding Formal Theorem Provers with Informal Proofs: https://arxiv.org/abs/2210.12283

[13]Xu et. al. 2021. Fusing Context Into Knowledge Graph for Commonsense Question Answering: https://aclanthology.org/2021.findings-acl.102.pdf

[14]Khashabi et. al. 2020. UnifiedQA: Crossing Format Boundaries With a Single QA System: https://aclanthology.org/2020.findings-emnlp.171

[15]Yu et. al. 2022. Generate rather than Retrieve: Large Language Models are Strong Context Generators: http://arxiv.org/abs/2209.10063

[16]Jung et. al. 2022. Maieutic Prompting: Logically Consistent Reasoning with Recursive Explanations: https://arxiv.org/abs/2205.11822

[17]Si et. al. 2022. Prompting GPT-3 to be Reliable. : https://arxiv.org/abs/2210.09150

[18]Fu et. al. 2022. Complexity-based Prompting for Multi-Step Reasoning: https://arxiv.org/abs/2210.00720

[19]Kaplan et. al. 2020. Scaling Laws for Neural Language Models: https://arxiv.org/abs/2001.08361

[20]Brown et. al. 2020. Language Models are Few-Shot Learners.: https://arxiv.org/abs/2005.14165

[21]Cobbe et. al. 2021. Training Verifiers to Solve Math Word Problems: https://arxiv.org/abs/2110.14168

[22]Li and Liang. 2021. Prefix-Tuning: Optimizing Continuous Prompts for Generation: https://aclanthology.org/2021.acl-long.353.pdf

[23]He et. al. 2021. Towards a Unified View of Parameter-Efficient Transfer Learning: https://arxiv.org/abs/2110.04366

[24]Chung et. al. 2022. Scaling Instruction-Finetuned Language Models: https://arxiv.org/abs/2210.11416

[25] Suzgun et. al. 2022. Challenging BIG-Bench tasks and whether chain-of-thought can solve them: https://arxiv.org/abs/2210.09261

[26]Ouyang et. al. 2022. Training language models to follow instructions with human feedback: https://arxiv.org/abs/2203.02155

[27]Chowdhery et. al. 2022. PaLM: Scaling Language Modeling with Pathways: https://arxiv.org/abs/2204.02311

[28]Chung. et. al. 2022. Scaling Instruction-Finetuned Language Models: https://arxiv.org/abs/2210.11416

[29]Huang et. al. 2022. Large Language Models Can Self-Improve: https://arxiv.org/abs/2210.11610

[30]Chung. et. al. 2022. Scaling Instruction-Finetuned Language Models: https://arxiv.org/abs/2210.11416

其他人都在看

ChatGPT进化的秘密如何看待PyTorch 2.0?李白:你的模型权重很不错,可惜被我没收了OpenAI掌门Sam Altman:AI下一个发展阶段32篇年度最佳AI论文;Python编译器Codon开源比快更快,开源Stable Diffusion刷新作图速度OneEmbedding:单卡训练TB级推荐模型不是梦

欢迎Star、试用OneFlow最新版本:

大型语言模型中的突现能力:研究范式转变与潜在应用

AI时代,拥有个人微信机器人AI助手!AI时代不落人后!

免费ChatGPT问答,办公、写作、生活好得力助手!

搜索微信号AIGC666aigc999或上边扫码,即可拥有个人AI助手!