谷歌、斯坦福联合发文:我们为什么一定要用大模型?

语言模型已经深刻变革了自然语言处理领域的研究和实践。近年来,大模型在多个领域都取得了重要的突破。它们无需在下游任务上微调,通过合适的指令或者提示就可以取得优异的性能,甚至有时让人为之惊叹。例如,GPT-3 可以写情书、写剧本和解决复杂的数据数学推理问题,PaLM 可以解释笑话。上面的例子只是大模型能力的冰山一角,现在利用大模型能力已经开发了许多应用,在OpenAI的网站可以看到许多相关的demo,而这些能力在小模型上却很少体现。

今天介绍的这篇论文中,将那些小模型不具备而大模型具备的能力称为_突现能力_(Emergent Abilities),意指模型的规模大到一定程度后所突然获得的能力。这是一个量变产生质变的过程。

突现能力的出现难以预测。为什么随着规模的增大,模型会忽然获得某些能力仍旧是一个开放问题,还需要进一步的研究来解答。在本文中,笔者梳理了最近关于理解大模型的一些进展,并给出了一些相关的思考,期待与大家共同探讨。

相关论文

  • _Emergent Abilities of Large Language Models._http://arxiv.org/abs/2206.07682

  • _Beyond the Imitation Game: Quantifying and extrapolating the capabilities of language models._https://arxiv.org/abs/2206.04615

大模型的突现能力

何谓大模型?到什么尺寸才算“大”?这并没有一个明确的定义。一般来说,模型参数可能要达到十亿级别才会显示出明显不同于小模型的zero-shot和few-shot的能力。近年来已有多个千亿和万亿级别参数的模型,在一系列的任务上都取得了SOTA的表现。在一些任务中,模型的性能随着规模的增加而可靠地提高,而在另一些任务中,模型在某个规模上表现出性能的突然提升。可以用两个指标去对不同的任务进行分类 :

  • Linearity: 旨在衡量模型随着规模的增加在任务上的表现在多大程度上得到可靠的提高。

  • Breakthroughness: 旨在衡量当模型规模超过临界值时可以在多大程度上学习任务。

这两个指标是模型规模和模型性能的函数,具体计算细节可以参考 。下图展示了一些高Linearity和高Breakthroughness任务的例子。

高Linearity的任务大多是基于知识的,也就是说他们主要依赖于记忆训练数据中存在的信息,比如回答一些事实性的问题。更大的模型通常用更多的数据进行训练,也能记住更多的知识,所以模型随着规模的增大在这类任务上显式出了稳定的提升。
高Breakthroughness的任务包括较复杂的任务,它们需要用几种不同的能力或执行多个步骤以得出正确的答案,例如数学推理。较小的模型难以获得执行这类任务所需要的所有能力。下图进一步展示了不同的模型在一些高Breakthroughness任务上的表现

在未达到一定的模型规模时,模型在这些任务上的表现是随机的,达到某个特定的规模之后,就有了显著的提升。

是平滑还是突现?

前面我们看到的是模型规模增加到一定程度后突然获得了某些能力,从任务特定的指标来看,这些能力是突现的,但是从另外的角度来看,模型能力的潜在变化更为平滑。本文讨论如下两个角度:
(1)使用更为平滑的指标
(2)将复杂的任务分解为多个子任务

下图(a)展示了一些高Breakthroughness任务的真实目标对数概率的变化曲线,真实目标的对数概率是随着模型规模增大逐渐提高的。

图(b)显式了对于某个多项选择任务,随着模型规模的增大,正确答案的对数概率逐步提升,而错误答案的对数概率在某个特定的规模之前逐步提升,而在此之后趋于平坦。在这个规模之后,正确答案概率和错误答案概率的差距拉大,从而模型得到了显著的性能提升。

此外,对于某个特定任务,假设我们可以用Exact Match和BLEU去评价模型的表现,BLEU相比于Exact Match是更为平滑的指标,使用不同指标所看到的趋势可能有显著的差距。

对于一些任务,模型可能在不同的规模上获得了做这个任务的部分能力。下图是通过一串emoji去猜测电影名字的任务我们可以看到模型在一些规模开始猜测电影名称,在更大的规模上识别表情符号的语义,在最大的规模上产生正确的答案。

大模型对如何形式化任务很敏感

模型在什么规模上体现出突然的能力提升也取决于如何去形式化任务。例如,在复杂的数学推理任务上,使用标准的prompting将其视为问答任务,模型规模增大性能提升十分有限,而若使用如下图所示的chain-of-thought prompting ,将其视为多步推理任务,则会在某个特定的规模看到显著的性能提升。

更有甚者,研究人员发现通过添加一个简单的提示“Let’s think step by step”,就可以大幅提升GPT-3的zero-shot推理能力,如下图所示

这对于我们的启发是,大模型有时做不好某个任务,可能并不是真的做不好,而是需要合适的方式去激发它的能力。

模型越大一定越强吗?

前面的讨论给我们的直观感觉是模型规模变大性能一定是有所提升的,但是真的是这样吗?实际上,对于有些任务,模型变大之后性能可能反而会有所下降,如下图所示

纽约大学的几位研究人员还组织了一项竞赛,旨在找到那些模型变大后反而表现变差的任务。

比如在问答任务中,如果在提问的同时加上你的信仰,大模型会更容易受到影响。感兴趣的同学可以关注。

总结与思考

  • 在大多数任务上,随着模型规模的增大,模型的表现也越好,但是也会有一些反例。更好地去理解模型此类行为还需要更多的研究。

  • 大模型的能力需要合适的方式去激发。

  • 大模型真的是在做推理吗? 如我们之前看到的,通过添加提示“Let’s think step by step”,大模型在数学推理任务上就可以进行多步推理并取得令人满意的效果,似乎模型已经具备了人类的推理能力。但是,如下如所示,如果给GPT-3一个没有意义的问题,让它去做多步推理,GPT-3看似在做推理,实则是一些无意义的输出。正所谓“garbage in, garbage out”。相比较而言,人类就可以判断问题是否是合理的,也就是说在给定条件下,当前问题是不是可回答的。“Let’s think step by step”能够发挥作用,笔者觉得根本原因还是GPT-3在训练过程中看过很多类似的数据,它做的只不过是根据前面的token去预测接下来的token罢了,跟人类的思考方式仍旧有本质的区别。当然,如果给合适的提示让GPT-3去判断问题是不是合理的或许它也能在某种程度上做到,但是距离“思考”和“推理”恐怕仍有相当大的距离,这不是单纯增大模型的规模能够解决的。模型或许不需要像人类那样思考,但是亟需更多的研究去探索除增大模型规模之外的路径。

  • 系统1还是系统2? 人类大脑有两个系统相互配合,系统1(直觉)是快速的、自动化的,而系统2(理性)是缓慢的、可控的。大量实验已证明,人更喜欢使用直觉进行判断和决策,而理性可以对其导致的偏误进行纠正。现在的模型大多基于系统1或系统2进行设计,能否基于双系统去设计未来的模型呢?

  • 大模型时代的查询语言。 之前我们把知识和数据存储在数据库和知识图谱中,我们可以用SQL查询关系型数据库,可用SPARQL去查询知识图谱,那我们用什么查询语言去调用大模型的知识和能力呢?

梅贻琦先生曾说“所谓大学者,非谓有大楼之谓也,有大师之谓也”,笔者在此用个不太恰当的类比结束本篇:所谓大模型者,非谓有参数之谓也,有能之谓也。

读者福利:如果大家对大模型感兴趣,这套大模型学习资料一定对你有用

对于0基础小白入门:

如果你是零基础小白,想快速入门大模型是可以考虑的。

一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。

包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

👉AI大模型学习路线汇总👈

大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

👉大模型实战案例👈

光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

👉大模型视频和PDF合集👈

观看零基础学习书籍和视频,看书籍和视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述
在这里插入图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

👉获取方式:

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

  • 28
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT猫仔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值