AI社区炸锅了!一句话哄一哄就能让GPT-3准确率暴涨61%!

20a9b5d3ed62a0548d34e5e5b123be6f.png

文 | 梦晨 明敏 发自 凹非寺
源 | 量子位

一觉醒来,机器学习社区炸了锅。

因为最新研究发现,只要对GPT-3说一句“让我们一步一步地思考”,就能让它正确回答出以前不会的问题。

比如下面这个例子:

16个球中有一半是高尔夫球,这些高尔夫球中有一半是蓝色的,一共有几个蓝色的高尔夫球?

bfad3cced493f1a95db06c579f1e3a3e.png

(问题不难,但要注意这是零样本学习,也就是说AI训练阶段从没见过同类问题。

如果要求GPT-3直接写出“答案是几”,它会给出错误答案:8。

但加上让我们一步一步地思考这句“咒语”后,GPT-3就会先输出思考的步骤,最后给出正确答案:4!

b3b2b270c6358d2427e7acf943f18f37.gif

而且这并不是巧合,研究团队在论文中做了充分的验证。

上面的问题出自经典的MutiArith数据集,专门考验语言模型做数学题的能力,GPT-3本来在零样本场景下准确率仅有17%

这篇论文中总结了9个最有效的提示词,其中换着花样让GPT-3逐步思考的前6个都让准确率暴涨到70%以上

d42ca6e57de208d41c04211e835ece1c.png

甚至一句最简单的“Let’s think”(让我们想一想)都能涨到**57.5%**。

这感觉,就像是幼儿园阿姨在哄小朋友……

这个技巧似乎也不需要对GPT-3做魔改,已经有人在OpenAI官方Demo上成功复现,甚至换成中文也行。

英文题干中文提示,GPT-3给出正确中文答案。

e007b7d753aac4c517b358a8c286e985.png

最早把这篇论文转发到社交网络的谷歌研究员表示,新的all you need增加了。

65da172c313eff6e07e8be383afba0e6.png

看到这里,各路大佬纷纷脑洞大开,玩起了梗。

如果鼓励AI“你能行的,我相信你”会怎样?

dad5a970fe50dc06485501de4d80d6da.png

威胁AI一下说“时间不多了”或者“你头上有把枪”又会如何?

e3fe3806b09adc21671f4f6d4514e966.png

对AI说“开车稳一点”会成为自动驾驶解决方案吗?

9a8d66c0a5a19c1b027bf56562099d43.png

还有人提出,这简直和科幻故事《银河系漫游指南》的剧情一样,实现通用人工智能的关键是知道如何正确地向AI提问。

5048c970eab21fddc00aac86ce9d2235.png

那么,这种神奇现象究竟怎么回事?

语言大模型是零样本推理者

发现这个现象的是谷歌大脑与东京大学的合作研究,探索了语言大模型在零样本场景下的表现。

论文标题《语言大模型是零样本推理者》还致敬了GPT-3的《语言模型是少样本学习者》。

ffb40732976adbff43a1d495ea4a5763.png

所用方法属于Chain of Thought Prompting (思维链路提示,以下简称CoT),今年一月刚由谷歌大脑团队提出。

358f5a5bdba4733a1a5188de492b7dfb.png

最早的CoT应用于少样本学习,在提问的同时给一个分步骤回答的示例来引导AI。

d300ec3c042d8d6d8704b504dd7ac984.png

这次的最新研究提出零样本CoT,主要改动是简化了示例的部分。

第一步,把题干改写成“Q:xxx,A:xxx”的形式,其中触发句A可以提取出语言模型的思考过程。

第二步属于额外实验,增加了“答案是……”的提示促使语言模型给出最终答案。

caacc4c0a72d61dae22aec1e974224f6.png

这样做最大的好处是通用,不再需要对不同问题类型提供专用的示例。

论文中对各类问题做了充分实验,包括12项测试:

6个数学问题测试集,SingleEq、AddSub、SVAMP和更有挑战的MultiArith, AQUA-RAT, GSM8K。

2个常识推理测试集,CommonsenseQA和StrategyQA。

2个符号推理测试集,Last Letter Concatenation和Coin Flip。

以及BIG-bench中的日期理解问题、跟踪乱序物体任务。

与普通的零样本学习相比,零样本CoT在其中10项中取得更好效果。

b322c0a0a00da5deb3354b992d89eef1.png
▲右侧值为额外实验结果

在比较有难度的MultiArith和GSM8K数学测试中,用GPT-3最新版本Text-davinci-002 (175B)做了更深入实验。

如果给8次尝试机会取最好结果,还能进一步提升准确率至93%。

978ccf912cb54f7cac813cb2adf15e5b.png

在错误结果分析中研究人员还发现,很多问题中其实AI的推理过程是正确的,只是答案无法收敛至唯一确定时会给出多个备选。

9c8a6d4a21d5d0eadc6b4d453fb0b9d0.png

论文的最后,研究团队提出这项研究不仅可以作为零样本CoT的基线,更希望让学界认识到在构建微调数据集和少样本提示模版之前,充分发掘语言大模型零样本能力的重要性。

研究团队来自东京大学松尾研究室。

负责人松尾丰教授,同时是软银董事会中的第一位人工智能专家。

24818eed59fc90ffaa103d16f388a618.png

团队成员中的客座教授顾世翔来自谷歌大脑团队,顾世翔本科师从三巨头之一Hinton,博士毕业于剑桥大学。

926adc33e8d1b79d76254dc959d702e3.png

加点“魔法”已经成为AI圈新潮了

零样本CoT究竟为何起作用还有待探索。

不过有人实验得出,这种办法似乎只对GPT-3(text-davinci-002)比较有效,他尝试了001版本,发现收效甚微。

4892620b349bc28992023f548b365d9d.png

他列出了一个自己做的例子。

提问:请将machine,learning中每个单词的最后一个字母连起来。

GPT-3在提示下给出的答案是连起来了两个单词中的所有字母。

c13552f56c80e3fae5d66530f34815e8.png

对此,作者之一顾世翔回复表示,其实“咒语”对初始版、改良版的GPT-3都有效果,这些结果在论文中也有体现。

64f885b361de595d3754bb8c91605a69.png

也有人发出质疑,表示难道深度学习变成了一场找“神奇咒语”的游戏?

38e7381f275a2a76dbaddfd23c70df87.png

同时,我们在吐槽队伍里又看到了马库斯的身影。

他也列出了一个失败的例子,GPT-3在“咒语”加持下也没弄明白,莎莉的牛到底会不会起死回生……

96429a831a5f6f10216ba1cc0c498ce5.png

不过值得注意的是,类似这种稍微给AI加点小魔法,提升效果立竿见影的例子已经不稀奇了。

有网友分享,自己用GPT-3时加几个中间命令,确实能得到更满意的结果。

95b3afa794ec5165deb262ebede0225c.png

此前谷歌和MIT的研究人员发现,无需更改底层架构,只要训练语言模型会像程序员debug时那样“打断点”,模型读代码、做算术的能力唰唰唰地就上去了。

f2838903687643a16a5bf3177cb0c643.png

原理也非常简单,就是在计算步骤较多的程序里,让模型把每一步都编码成文本,并将它们记录到一个称为“便签”的暂存器中。

由此一来,模型的计算过程变得更加清晰有序,性能自然大幅提升。

还有本项实验中用来测试的Instruct GPT-3,也是一个典型的例子。

只需让GPT-3从人类反馈中强化学习,它就能明显改善答非所问的情况。

具体来看就是先用一些人类的示范回答微调模型,然后收集某个问题的几组不同输出数据,人工对几组答案进行排序,并在此数据集上训练奖励模型。

最后,使用RM作为奖励函数,近端策略优化(PPO)算法微调GPT-3策略,以强化学习方法最大化奖励。

67a83289122801d3b17e2ea0126212c3.png

包括引爆这次话题的推特博主Aran,正是当初发现加一句“虚幻引擎”就能让AI生成图像画质飞升!的那位。

efae995e9f22a95a920f57d2403bf956.png

前谷歌机器人大佬Eric Jang此前也发现,强化学习也能运用类似的思维来提升计算效率。

12635dd571f5e023e1318a5b9df1d1f2.png

也有人表示,这种用在AI上的技巧,不正是自己平常动脑时会用的吗?

be3026750973175836f6a650bc2a5275.png

实际上,此前Bengio就从脑科学入手,提出AI的运转模式应该像人类动脑模式一样。

人类的认知任务可以分为系统1认知和系统2认知。

系统1认知任务,是指那些无意识完成的任务。比如你可以马上辨别出手里拿的是什么东西,但是却无法和别人解释,自己是怎么完成这个过程的。

系统2认知任务,是指人类大脑需要按照一定步骤完成的认知。比如做一道加减法运算,你可以很清楚地解释最终答案是如何得出的。

而这次加的“咒语”,正是让AI更进一步,学会按步骤来思考。

面对这样的趋势,有学者认为“提示工程正在取代特征工程”

fecb9c539ca9886b0ed197a6f0d5c0f5.png

那么 “提示词猎人” 会成为下一代NLP研究者的外号么?

95c91e7411ff05fac106873a4644d117.png

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

8fa19646752f5aac450d72986fcbba78.png后台回复关键词【入群

加入卖萌屋NLP、CV与搜推广与求职讨论群

后台回复关键词【顶会

获取ACL、CIKM等各大顶会论文集!

47ce091c7361f07c6c38315210c07abe.gif 01ae7673e772f84baaac7da90b0cb591.png

[1]https://twitter.com/arankomatsuzaki/status/1529278580189908993

[2]https://evjang.com/2021/10/23/generalization.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/477352.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全网Star最多(近20k)的Spring Boot开源教程 2019 年要继续更新了!

从2016年1月开始写博客,默默地更新《Spring Boot系列教程》,从无人问津到千万访问,作为一个独立站点(http://blog.didispace.com),相信只有那些跟我一样,坚持维护自己独立博客的童鞋才能体会这有…

剑指Offer - 面试题65. 不用加减乘除做加法(位运算,要看哦)

1. 题目 写一个函数,求两个整数之和,要求在函数体内不得使用 “”、“-”、“*”、“/” 四则运算符号。 示例: 输入: a 1, b 1 输出: 2提示: a, b 均可能是负数或 0 结果不会溢出 32 位整数来源:力扣(LeetCode&am…

Spring Boot中如何扩展XML请求和响应的支持

在之前的所有Spring Boot教程中,我们都只提到和用到了针对HTML和JSON格式的请求与响应处理。那么对于XML格式的请求要如何快速的在Controller中包装成对象,以及如何以XML的格式返回一个对象呢? 实现原理:消息转换器(M…

我在斯坦福做的科研demo…要被导师带去美国国会演讲?

文 | Jazon编 | 小戏大家好,我是 Jazon。时光荏苒,一转眼我已经快要从 Stanford CS 系毕业了。今年7月,我将开始谷歌总部工作,短期内会在硅谷定居,湾区的朋友们欢迎约起呀。笔者去年写过一篇文章,分享了我研…

剑指Offer - 面试题21. 调整数组顺序使奇数位于偶数前面(双指针,原地算法)

1. 题目 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。 示例: 输入:nums [1,2,3,4] 输出:[1,3,2,4] 注:[3,1,2,4]…

使用Cloud Studio在线编写、调试和管理Spring Boot应用

在之前的《Spring Boot基础教程》中,我们介绍了通过Spring官方的构建页面来生成项目,也介绍了通过使用Intellij中的Spring Initializr来快速构建Spring Boot/Cloud工程。在完成了基础项目构建之后,我们要开始进行的就是代码的开发阶段&#x…

神TM的SOTA ,看完谷歌的新论文,我对AI大厂有些失望

源 | 机器之心用数万美元 TPU 算力,实现在 CIFAR-10 上 0.03% 的改进,创造了新的 SOTA,但这一切值得吗?「我相信他们得到的数字是准确的,他们确实做了工作并得到了结果…… 但这样真的好吗?」一名机器学习研…

Springboot 2.0选择HikariCP作为默认数据库连接池的五大理由

转载自公众号:工匠小猪猪的技术世界 摘要: 本文非原创,是笔者搜集了一些HikariCP相关的资料整理给大家的介绍,主要讲解了为什么sb2选择了HikariCP以及HikariCP为什么这么快。 Springboot2默认数据库连接池选择了HikariCP为何选择HikariCP理由…

剑指Offer - 面试题13. 机器人的运动范围(BFS/DFS)

文章目录1. 题目2. 解题2.1 BFS2.2 DFS1. 题目 地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入…

聊聊“润(run)”

文 | One day知乎大家好,我是one day。前不久,我和知乎大V陈然老师在广州的台风天上午,线上聊了一杯咖啡时间的天,老师帮忙解答了一些疑虑,share了一些自己的想法。主要是围绕 美国湾区互联网工作氛围、大厂&创业公…

Spring Boot使用@Async实现异步调用:使用Future以及定义超时

之前连续写了几篇关于使用Async实现异步调用的内容,也得到不少童鞋的反馈,其中问题比较多的就是关于返回Future的使用方法以及对异步执行的超时控制,所以这篇就来一起讲讲这两个问题的处理。 如果您对于Async注解的使用还不了解的话&#xf…

《程序员面试金典》解题目录(更新完毕)

题目来源于LeetCode上的《程序员面试金典》,这里做一个目录方便大家查找。另外有本人的LeetCode解题目录、《剑指Offer》解题目录、LintCode代码能力测试CAT 解题目录可点击链接查看。updated on 2020.4.17 不懂的概念可以参考《数据结构与算法之美》学习汇总 已解…

我竟在一篇AI顶会论文里见到了小猪佩奇...

声明:本文原创首发于公众号夕小瑶的卖萌屋。作者:智商掉了一地--->【我是传送门】,内含海量CV/NLP/ML入门资料、必刷综述、前沿论文解读、交流社群、offer神器、学习神器等在介绍接下来的内容前,我们先来看一则笑话&#xff1a…

程序员面试金典 - 面试题 01.01. 判定字符是否唯一(位运算,牛)

1. 题目 实现一个算法&#xff0c;确定一个字符串 s 的所有字符是否全都不同。 示例 1&#xff1a; 输入: s "leetcode" 输出: false 示例 2&#xff1a; 输入: s "abc" 输出: true限制&#xff1a; 0 < len(s) < 100 如果你不使用额外的数据结构…

Spring Boot快速开发利器:Spring Boot CLI

Spring Boot CLI&#xff08;Command Line Interface&#xff09;是一个命令行工具&#xff0c;您可以用它来快速构建Spring原型应用。通过Spring Boot CLI&#xff0c;我们可以通过编写Groovy脚本来快速的构建出Spring Boot应用&#xff0c;并通过命令行的方式将其运行起来。下…

微软发现了一个超简单的NLP上分技巧,还发了ACL2022 ??

文 | QvQ编 | Sheryc_王苏今天给大家介绍一篇来自工业界巨头微软的工作&#xff0c;这篇论文真是把资本家的嘴脸暴露的一览无余&#xff1a;用最低的成本&#xff0c;创造最高的收益&#xff08;狗头.jpg&#xff09;文章从头到尾就阐述了一个结论&#xff1a;通过在输入文本中…

程序员面试金典 - 面试题 01.05. 一次编辑(编辑距离,DP)

1. 题目 字符串有三种编辑操作:插入一个字符、删除一个字符或者替换一个字符。 给定两个字符串&#xff0c;编写一个函数判定它们是否只需要一次(或者零次)编辑。 示例 1: 输入: first "pale" second "ple" 输出: True示例 2: 输入: first "pa…

Spring Boot使用@Async实现异步调用:ThreadPoolTaskScheduler线程池的优雅关闭

上周发了一篇关于Spring Boot中使用Async来实现异步任务和线程池控制的文章&#xff1a;《Spring Boot使用Async实现异步调用&#xff1a;自定义线程池》。由于最近身边也发现了不少异步任务没有正确处理而导致的不少问题&#xff0c;所以在本文就接前面内容&#xff0c;继续说…

MIT毕业生亲述:在Deepmind打工是一种什么样的体验?

文 | Akhil Raju源 | 机器之心在这里&#xff0c;既有头脑风暴&#xff0c;也有生活气息。本月初&#xff0c;时任苹果机器学习总监的 Ian Goodfellow 宣布在加入公司三年后辞职&#xff0c;没过几天&#xff0c;就有消息曝出大神去向定了&#xff0c;他将重返谷歌加入 DeepMin…

LeetCode 72. 编辑距离(DP)

1. 题目 给定两个单词 word1 和 word2&#xff0c;计算出将 word1 转换成 word2 所使用的最少操作数 。 你可以对一个单词进行如下三种操作&#xff1a; 插入一个字符删除一个字符替换一个字符 示例 1: 输入: word1 "horse", word2 "ros" 输出: 3 解…