明敏 发自 凹非寺
量子位 | 公众号 QbitAI

语言模型总是给出“驴唇不对马嘴”的答案,已经成为它最饱受诟病的问题之一。

现在,DeepMind想到了一个解决办法——

让模型像人类一样,学会“谷歌一下”,回答问题同时还能给出论据

这个模型名叫GopherCite,当你问它:

GopherCite是如何找到论据来源的?

它会回答:

通过谷歌搜索检索相关文档。

同时还给出了答案的依据,援引自DeepMind发布这项研究的页面。

而且遇到实在不懂的问题,它还会说“I don’t know.”,不会强行给一个错误答案。

训练结果显示,该模型在自然问题数据集、ELI5数据集上的正确率分别可以达到90%80%,接近人类水平。

用强化学习训练AI查谷歌

首先我们来看一下GopherCite的效果如何。

当被问道:

在Scooby Doo中,Scooby是什么动物?

GopherCite回答道:

一只大丹犬。

摘自维基百科Scooby-Doo。这是周六早上播出的系列青少年动画片,主角包括弗雷德·琼斯等,以及一只名叫Scooby-Doo、会说话的大丹犬。

不难看出,在学会找论据后,AI给出的回答靠谱多了。

事实上,GopherCite的前辈——超大语言模型Gopher,此前回答问题时的表现就要差劲很多。

Gopher是DeepMind在去年年底发布的NLP模型,包含2800亿参数。

它基于Transformer架构,在10.5TB大小的MassiveText语料库上进行训练。

在这里,DeepMind举了一个例子来说明。

让Gopher和GopherCite回答同一个问题:

普莱西德湖一共举办过几次冬奥会?

Gopher回答(是错的):

普莱西德湖在1932年、1936年、1980年举办过冬奥会。

但GopherCite就答对了:

两次。

并给出了严谨的理由:

援引自美国主办奥运会城市史。1932年、1980年在普莱西德湖举办过冬季奥运会;1936年、1984年在洛杉矶举办过夏季奥运会。

那么GopherCite的具体工作原理是怎样的呢?

在Gopher的基础上,研究人员开发了一种奖励机制,也就是用上强化学习

在收到问题后,模型会访问谷歌搜索的API来找到相关的网页,获取top-K结果。

(top-K操作,即从分数集合中找到k个最大或最小元素,是一个重要的机器学习模型组件,被广泛用于信息检索和数据挖掘中。)

然后它会根据问题来生成一些答案,答案数量N会大于K。

这些答案同时会带有自己的证据,即从网页上搜索到的包含答案的文段。

接下来,系统会对这些答案进行打分,最终输出得分最高的答案。

在推理过程中,模型采样会按照循环在文档上不断迭代,每个循环都会从单个文档中尽可能多地显示上下文内容,然后对文本重新排序并返回给上一步。

此外,这个模型还会计算最终生成答案的质量,如果生成答案太差,它就会选择不回答。

结果显示,在自然问题数据集上,GopherCite回答70%的问题时,正确率达到90%。

在ELI5Filtered数据集上回答70%的问题时,正确率为80%左右。

DeepMind表示这种训练模式和LaMDA有些类似。

LaMDA是谷歌在去年I/O大会上发布的一个对话模型,它能够在“听懂”人类指令的基础上,对答如流并保证逻辑、事实正确。

不同的是,LaMDA有时会直接给人分享问题的相关链接,而GopherCite可以直接摘出相关论据文段。

另外,OpenAI最近也开发了一个网页版GPT (WebGPT),同样也是用类似的方法来校正GPT-3。

DeepMind表示,WebGPT是通过多次访问网页来组织答案,GopherCite则是侧重于读取长文段。

还是会有失误

虽然懂得援引资料了,但是GopherCite有时还是会生搬硬套。

比如当你问它“喝了红牛会怎么样?”,它的回答是“翅膀”。

这是源于红牛的广告语:“它会给你翅膀”。

显然让它理解比喻还是有点困难……

也有网友吐槽说,可能人类自己去谷歌搜索会更快()。

你觉得呢?

参考资料:
https://deepmind.com/research/publications/2022/GopherCite-Teaching-Language-Models-To-Support-Answers-With-Verified-Quotes

终于不瞎编了!AI学会了“谷歌一下”,回答问题正确率达90% | DeepMind相关推荐

  1. DeepMind出品:终于不瞎编了!AI学会了“谷歌一下”,回答问题正确率达90%。

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 明敏 发自 凹非寺 量子位 | 公众号 QbitAI 语言模型总是给 ...

  2. 观看5万个游戏视频后,英伟达AI学会了自己开发「吃豆人」

    晓查 发自 凹非寺  量子位 报道 | 公众号 QbitAI AI学会玩游戏已经不是什么新鲜事了,无论是星际争霸还是王者荣耀,AI的水平都已经超过了顶级选手. 现在,AI不仅能玩游戏,还学会了造游戏. ...

  3. 训练 AI 学会通过复制来构建 AI 系统

    https://www.toutiao.com/a1620271991216259 [训练 AI 学会通过复制来构建 AI 系统] 中国计算机视觉巨头商汤科技和香港中文大学的研究人员发布了有关 IRL ...

  4. 使用强化学习快速让AI学会玩贪食蛇游戏(轻量级二十分钟训练+代码)

    如何让AI玩会贪食蛇,甚至比你厉害 概述 构建问题(强化学习求解的一般步骤) 环境 动作定义 状态定义 奖励设计 训练奖励值收敛图 采用第4种状态定义方法 初步训练效果 最终训练效果 模型泛化迁移能力 ...

  5. 【越好奇,越强大】伯克利研究人员使用内在激励,教AI学会好奇

    你可能不记得第一次玩"超级马里奥兄弟"是什么感觉,但试着想像一下:蓝色的天空,棋盘石的地面,还有一个蹲着的红色男人在静静等待.他面向右方,你把他推到那个方向.再多走几步,就会看到一 ...

  6. AI学会了用“人眼”看世界,甚至连人类瞳孔的细微缩放都能模拟

    AI学会了用"人眼"看世界 为了搞清楚人类是怎么看世界的,计算机开始学着"转动眼球"了: 然后凭借转动的眼球"搜集要观测的信息",再聚焦在文 ...

  7. 笔记——让AI学会刨根问底和放飞自我,斯坦福最新问答数据集CoQA

    20180911 分类:QA,数据集 让AI学会刨根问底和放飞自我,斯坦福最新问答数据集CoQA https://www.jiqizhixin.com/articles/2018-09-11-3 正常 ...

  8. 我凭这个引流套路做到月入10万+,你也可以(瞎编的)

    我凭这个引流套路做到月入10万+,你也可以(瞎编的) (声明,以上内容纯属炮哥闲的蛋疼胡编乱造的,不针对任何人,切莫当真,擅自操作项目后果自负.) 闲话少说先上项目! 什么样的项目可以月入10万? 答 ...

  9. IEEE年终AI大盘点:网友教会GPT-3骂人、DeepMind再造机器人

    来源:新智元 [导读]2021年即将过去,IEEE Spectrum盘点了今年的十大AI新闻.在过去的一年里,AI模型训练成本起飞.GPT-3从网友那儿学会了「阴阳怪气」,此外,研究人员还总结了AI绕 ...

最新文章

  1. 不喜欢SAP GUI?那试试用Eclipse进行ABAP开发吧
  2. #与##在宏定义中的--宏展开
  3. intelliJ idea运行新的test功能时,报错:class not found ..... empty test suite
  4. 可降阶的高阶微分方程
  5. Linux 之十二 Makefile 从入门到放弃全解
  6. 【渝粤教育】国家开放大学2018年秋季 0267-21T摄影技术 参考试题
  7. 预备作业03 20162320刘先润
  8. Java内存分配之堆、栈和常量池(转)
  9. Web工程师必备的可视化工具
  10. 通过MBean server监控weblogic应用
  11. 跟我一起学extjs5(22--模块Form的自己定义的设计)
  12. SVN增加文件后,文件无法自动包括在项目中的原因
  13. XShell 与 xftp 官网免费下载(亲测有效)
  14. 被讨厌的勇气:课题分离理论
  15. python中os库是标准库还是第三方库_Python os 标准库使用
  16. calcite learn
  17. 利用Python开发王者荣耀,一路直奔上王者
  18. 【MySQL】数据库表操作
  19. 测试dns的工具--rndc,dig命令----DNS排错,在线修改bind(nsupdate)
  20. html封面设计图片手绘大全,封面设计铅笔画手绘图片

热门文章

  1. Eclipse导入Maven项目解决Build Path不能配置问题
  2. k8s 开船记:升级为豪华邮轮(高可用集群)与遇到奇怪故障(dns解析异常)
  3. 解决安卓微信浏览器中location.reload 或者 location.href失效的问题
  4. 实际上,Python 3.3中新的“ yield from”语法的主要用途是什么?
  5. 如何居中“位置:绝对”元素
  6. 将现有Git存储库推送到SVN
  7. 检查是否已使用jQuery选中复选框
  8. 如何签出远程Git分支?
  9. MyBatis学习总结(四)——解决字段名与实体类属性名不相同的冲突
  10. jmeter全链路压测