语言模型深刻地革新了自然语言处理领域的研究和实践。近年来,大模型在多个领域取得了重要突破。它们不需要在下游任务上进行微调,在适当的指令或提示下,它们就能取得出色的性能,有时甚至令人惊叹。例如,GPT-3[1]可以写情书,写剧本,解决复杂的数据-数学推理问题,PaLM[2]可以解释笑话。以上例子只是大模型能力的冰山一角。许多应用程序都是使用大型模型的功能开发的。你可以在OpenAI网站上看到很多相关的demo[3],但是这些能力很少在小模型中体现出来。在今天介绍的论文中,小模型不具备而大模型具备的能力被称为EmergentAbilities,即当模型规模达到一定程度时突然获得的能力。这是一个量变产生质变的过程。突发能力的出现很难预测。为什么模型在扩大规模时突然获得某些能力仍然是一个悬而未决的问题,需要进一步研究来回答。在这篇文章中,笔者整理了近期在理解大模型方面的一些进展,并给出了一些相关的思考,期待与大家共同探讨。相关论文:EmergentAbilitiesofLargeLanguageModels.http://arxiv.org/abs/2206.07682BeyondtheImitationGame:Quantifyingandextrapolatingthecapabilitiesoflanguagemodels.https://arxiv.org/abs/2206.04615LargeModel什么是大模型?多大尺寸才算“大”?对此没有明确的定义。一般来说,模型参数可能要达到亿级别才能表现出明显区别于小模型的zero-shot和few-shot的能力。近年来出现了很多千亿、万亿参数的模型,在一系列任务上都取得了SOTA的性能。在某些任务上,模型的性能随着规模的增加而可靠地提高,而在其他任务上,模型的性能在一定规模下突然增加。两个指标可以用来对不同的任务进行分类[4]:线性度:它旨在衡量模型在任务上的性能随着规模的增加而得到可靠提高的程度。突破性:旨在衡量当模型大小超过临界值时任务的学习情况。这两个指标是模型大小和模型性能的函数。具体计算详见[4]。下图显示了一些高线性度和高突破性任务的示例。线性度高的任务大多是知识型的,也就是说主要靠记忆训练数据中存在的信息,比如回答一些事实性问题。较大的模型通常使用更多的数据进行训练,也可以记住更多的知识,因此随着尺寸的增加,模型在此类任务中表现出稳步改进。具有高突破性的任务包括更复杂的任务,需要使用几种不同的能力或执行多个步骤才能得出正确答案,例如数学推理。较小的模型很难获得执行此类任务所需的所有功能。下图进一步展示了不同模型在一些高突破性任务上的表现。当模型规模没有达到一定规模时,模型在这些任务上的表现是随机的。达到一定规模后,会有明显的提升。它是平滑的还是紧急的?我们之前看到的是,当模型大小增加到一定程度时,它突然获得了某些能力。从任务指标来看,这些能力是突然的,但从另一个角度看,模型能力的底层变化更平滑。.本文从以下两个角度进行讨论:(1)使用更平滑的度量;(2)将复杂任务分解为多个子任务。下图(a)展示了一些高突破性任务的真实目标对数概率的变化曲线。随着模型规模的增大,真实目标的对数概率逐渐增大。图(b)显示,对于一个多项选择任务,随着模型规模的增大,正确答案的对数概率逐渐增大,而错误答案的对数概率在一定尺度之前逐渐增大,而在一定尺度之后则趋于平坦出去。在这个尺寸之后,正确答案的概率和错误答案的概率之间的差距扩大了,模型得到了显着的性能提升。另外,对于一个特定的任务,假设我们可以使用ExactMatch和BLEU来评估模型的性能,BLEU是一个比ExactMatch更平滑的指标,使用不同指标看到的趋势可能会有明显的差距。对于某些任务,模型可能会获得部分能力以在不同规模下完成任务。下图展示了通过一系列表情符号猜测电影名称的任务。我们可以看到模型开始在某些尺度上猜测电影名称,在更大尺度上识别表情符号的语义,并在最大尺度上产生正确答案。大型模型对任务的形式化方式很敏感。模型表现出突然的性能提升的规模也取决于任务的去形式化方式。例如,在复杂的数学推理任务上,使用标准提示将其视为问答任务,随着模型规模的增大,性能提升非常有限。但是,如果使用下图所示的思维链提示[5],将其视为多步推理任务,我们会在一定规模上看到显着的性能提升。更重要的是,研究人员发现,通过添加一个简单的提示“Let'sthinkstepbystepby一个大模型不能很好地完成某项任务,也许并不是很糟糕,但它需要一种合适的方式来激发它的能力。型号越大就一定越强吗?前面的讨论给了我们一个直观的感受,就是当模型规模变大的时候,模型的性能一定要提升,但事实真的是这样吗?事实上,对于某些任务,当模型变大时,模型的性能可能会下降。如下图所示,纽约大学的几位研究人员还组织了一场比赛,寻找那些在模型变大时表现更差的模型。任务。例如,在问答任务中,如果将自己的信念加入到问题中,大模型将更容易受到影响。有兴趣的同学可以关注一下。总结与思考在大多数任务中,随着模型规模的增大,模型的性能会更好,但也会出现一些反例。需要更多的研究来更好地理解对此类行为进行建模。大模型的能力需要通过合适的方式来激发。大模型真的在做推理吗?正如我们之前看到的,通过添加提示“Let'sthinkstepbystepbystep”,大模型可以对数学推理任务进行多步推理,并取得令人满意的结果。看起来模型已经具备了人类推理的能力。但是,如下图,如果你给GPT-3一个无意义的问题,让它做多步推理,GPT-3看似在做推理,实际上是一些无意义的输出。俗话说,“垃圾进,垃圾出”。相比之下,人类可以判断一个问题是否合理,即当前问题在给定条件下是否可以回答。“让我们一步一步来思考”可以发挥作用。我认为根本原因是GPT-3在训练过程中看到了很多类似的数据。它所做的是根据前一个标记预测下一个标记。思维方式还是有根本的区别。当然,如果你给出适当的提示,让GPT-3判断问题是否合理,它在一定程度上或许可以做到,但离“思考”和“推理”还有相当大的距离。可以通过增加模型的大小来解决。模型可能不需要像人类一样思考,但迫切需要更多的研究来探索增加模型尺寸以外的路径。系统1还是系统2?人脑有两个协同工作的系统,系统1(直觉)快速且自动,而系统2(理性)缓慢且受控制。大量实验证明,人们更喜欢用直觉进行判断和决策,而理性可以纠正由此造成的偏差。现在的车型大多是基于系统1或系统2设计的,未来的车型是否可以基于双系统设计?大模型时代的查询语言。以前,我们将知识和数据存储在数据库和知识图谱中。我们可以使用SQL查询关系数据库,使用SPARQL查询知识图谱。那么我们使用什么查询语言来调用大型模型的知识和能力呢?梅贻琦先生曾说过“所谓伟人,不是说有楼,而是说有师父”。作者用一个不恰当的类比来结束这篇文章:所谓的大模型并不是说他有参数。谓之也,谓之能。
