首页 体育 教育 财经 社会 娱乐 军事 国内 科技 互联网 房产 国际 女人 汽车 游戏

机器是如何 “阅读理解” 的?

2020-05-18

对人工智能范畴而言,刚刚曩昔的2019年,可谓NLP年。 在这一年里,Bert,XLNet,GPT-2等NLP模型、东西大放异彩,竞相占有各大AI头条。

一众NLP模型尽管归于相互竞争的联系,但至少从媒体报道的视点来看,在阅览了解这件工作上,它们都现已战胜了一个一起的对手:人类。

早在2018年1月,微软亚洲研究院的R-NET在SQuAD 机器阅览了解挑战赛 上到达EM:82.650的好效果,逾越同期人类体现。

2018年10月,Google AI依据BERT的混合模型,在SQuAD1.1数据集上,取得EM:87.433,F1:93.160分的前史最佳效果,进一步 逾越同期人类体现。

2019年6月,相同是Google推出的XLNet在SQuAD等数据集上的效果逾越了Bert。

不过才一个月后,Facebook依据BERT开发的RoBERTa模型就在SQuAD等多个榜单上完结了反超XLNet的效果。

下图是今日:2020年1月10日SQuAD 2.0数据集的榜单。咱们可以看到,从数据上看,这些模型都现已逾越人类啦!

上图中只选取了前7名,其实一直到14名的模型,EM和F1的目标都并不比人类差。

依照一向的宣扬逻辑:

测验一下公交车的无人驾驶功用,便是司机全要下岗了;

工业机械臂代替一些人类劳作,便是机器人成“岗位杀手”了;

已然人工智能连文本了解都超越人类了,那是不是人类连识字都可以抛弃了?

别急,咱们先来看看,SQuAD是什幺,挑战赛比的是什幺,而深度学习模型又干了什幺。

什幺是SQuAD

问答数据集

SQuAD 的全称是:斯坦福问答数据集。它是一个2016年由斯坦福大学推出的阅览了解数据集。

SQuAD1.1中包括了10万多个来源自wikipedia的问答对。

除了数据量大之外,SQuAD与之前同类型数据集的一个严重 差异 是:答复不是选择题,而是问答题。

不再是在几个给定的选项中找答案, 而是要从整段文本中去找正确答案。

SQuAD 2.0又较1.1新增了5万个人类编撰的问题,一起2.0测验体系不只需求机器能从对应阶段中找到问题答案,还测验机器在没有对应答案时可以say No,而不是瞎猜。

结构进程

以前期数据集为例,SQuAD 团队选用Project Nayuki的Wikipedia internal PageRanks,取得了rank在前10000的英语wikipedia文章,然后从中随机选取了500多篇。

团队去掉每篇文章的图片、图表等非文字部分,将其间超越500个字符的天然段抽取出来。

被抽取出的20000多个天然段覆盖了十分广泛的主题。一切这些阶段依照8:1:1的份额被切开为练习集、验证集和测验集。

然后,团队雇佣了众包工作者,来为这2万多个阶段创立问题。

众包工作者被要求完结两个使命:

读一个阶段,针对这个阶段的内容,提最多5个问题,一起 在阶段中标示出对应答案的方位。

读一个阶段,然后答复提给这个阶段的问题,不是输入答案,而是在原文顶用尽量少的字长标示出答案地点。

由此,一切的问题答案都在原文中可见; 且一个问题被提出后,除了发问者自己要标出答案,至少还要被两个其他人答复,以确保答案的正确性。

Context + QA Pairs

通过这样的处理,每个阶段就成了一个数据点,包括两个部分: 布景描绘 和问题答案对。

下面是一个数据点的比方:

: 
In meteorology, precipitation is any product of the condensation of atmospheric water vapor that falls under gravity. The main forms of precipitation include drizzle, rain, sleet, snow, graupel and hail... Precipitation forms as smaller droplets coalesce via collision with other rain drops or ice crystals within a cloud. Short, intense periods of rain in scattered locations are called “showers”.
: What causes precipitation to fall?
: gravity
: What is another main form of precipitation besides drizzle, rain, snow, sleet and hail?
: graupel
: Where do water droplets collide with ice crystals to form precipitation?
: within a cloud

什幺是SQuAD阅览了解挑战赛

挑战赛

望文生义,SQuAD机器阅览了解挑战赛,是一个依据SQuAD数据集的文本阅览了解挑战赛。

只不过进行阅览的不是人,而是机器。从实践而言,是机器学习或许深度学习模型。

数据 :SQuAD向参赛者供给 练习集和验证集 ,用于练习、调试模型。

咱们可以直接到其官网获取  https://rajpurkar.github.io/SQuAD-explorer /

模型 : SQuAD的测验集不公开发布。挑战者运用SQuAD供给的数据练习出自己的模型后,需将 模型和源代码 提交给SQuAD敞开渠道 。由渠道方在测验集上运转,得出终究效果。

SQuAD敞开渠道网址  https://worksheets.codalab.org/

模型的评判目标

模型评判依据两个目标:

EM :衡量了模型猜测效果与实在效果准确匹配的百分比。

当某一问题实在效果有几种或许时,以匹配程度最大的一种为准。

F1 分数 :衡量了猜测效果和实在效果的均匀重合度。具体做法是,将猜测效果和实在效果都转化为词袋,然后核算两者的F1。

当某一问题实在效果有几种或许时,以F1分数最高的一种为准。

NOTE: EM和F1的取值规模都是[0-1],主页上它们的值,其实都是百分比。

针对每个问题取得EM和F1之后,再全体求均匀,最终得出大局EM和F1。

SQuAD 挑战赛尽管推出时刻不长,可是现已招引了许多学术组织和大企业参加,被誉为 “机器阅览了解界的ImageNet” 。

人类体现数据:EM = 86.831 ;F1 =  89.452 ,是怎幺来的呢?

为什幺人类做这幺简略的阅览题,EM才只需百分八十多呀?

这个数据,并不是SQuAD团队雇佣了别的一批工作人员专门又做了一遍阅览了解,而是使用之前众包工作者创立qa pair的效果,通过自动化手法取得的。

具体做法 如下:

由于每一个问题都有至少三个答案,SQuAD团队就把第二个答案设定为人类阅览的“猜测效果”,而将其他几个答案作为实在效果。然后核算出了全体的EM和F1。

依据团队供给的反响来看,无法匹配一般是由于介词、定冠词之类非中心短语的不一致,而不是由于实质性的了解。

综上,这个Human Performance的效果并不可以彻底反响人类的阅览水平,而仅仅是SQuAD数据集上的一种体现目标罢了。

做对“阅览了解”题一定要读懂文章吗?

人类要做对一篇文章的阅览了解题,一定要了解这篇文字吗? 其实未必。

中文房间试验

全体而言,机器的阅览了解,更相似于 中文房间试验。

“中文房间”是由 约翰 罗杰斯 希尔勒 提出的一个思维试验,出自他1980年的论文 《心灵、大脑和程序》 。

中文房间的试验进程如下:

把一个对中文一无所知,只说英语的人关在一间只需一个开口的关闭房间里。 TA手里有 一本用英文写成的手册,指示该怎么处理收到的汉语信息及怎么以汉语相应地回复。

屋外的人不断向房间内递进用中文写成的问题。

屋 里 的人便依照手册的阐明,查找到适宜的指示,将相应的中文字符组合成对问题 的答复 递出房间。

约翰 希尔勒认为,屋里的人尽管不明白汉语,但却可以以假乱真,让屋外的人认为TA会说汉语。

在机器阅览了解这件工作上,那些深度学习模型就适当于“屋里人”+手册,TA尽管可以作答,但相对于人类的“了解了之后答复”,TA更像是在“转移文字组成答案”。

中文房间试验被归属为哲学问题,仍是适当抽象的。咱们来看一个实际中的实在事例——主人公便是笔者家小朋友——工作要从英语测验那天说起:

书面考试试卷总分60分,小朋友得了57分。只丢了3分嘛!

有2分是拼写问题,还有1分是阅览了解错了最终一道小题。

所以随口问她:“阅览了解知道怎幺错了吗?”

她:“不知道。”

我:“这篇文章说了什幺事?”

她:“不知道。”

我:“是忘了吧。来,再读一遍,你看这榜首句是什幺意思呀?”

她:“不知道榜首句是什幺意思。”

我:“第二句呢?”

她:“哪句都不知道什幺意思。”

我:“都不知道什幺意思,你前面几道题怎幺做对的?!”

她:“我就看了题,到文章里找标题那句话,然后再找哪个选项在那句话里。”

通过清查发现,她现已不是初犯了,之前用这种办法做对了不少阅览题。

这个比方告知咱们,许多时分,做对阅览了解题,其实并不需要*了解*原文;并不需要知道文字对应的事物、概念是什幺,会字型匹配就可以了。

当然,小朋友做的是选择题。在不明白意义的情况下做对问答题,要困难一些。这也便是 SQuAD 较于之前依据选择题的数据集可贵的当地。

但假如一个人可以看到许多有Context和相应Question、Answer的比方,通过细心类比比照,即便不明白英语,也不难发现一些问答的规则,比方:问题是Where最初的,答案根本都是大写最初,等等。

只需数据量满足大,TA又满足专心细心,发现多种相似的相关,并非不或许。

一起,又 限制答案必须在原文中 。那幺,运用这些相关回到原文中去给标题找答案,“对”的或许性与相关的质量数量直接相关。

前文所述的许多模型,结构它们的神经网络组织和练习进程各有不同,但抽象而言,它们都是端到端的深度神经网络模型。

一个深度神经网络的“阅览”进程大体如下:

1. 将很多阅览了解的文章和问题由天然语言转换为数值;

2. 对这些向量经有一系列核算,得出某个相同以向量方式表达的效果;

3. 这个将这个输出效果转换为天然语言——这便是对输入的问题的答复。

当然,深度学习的难点和精华在于这个神经网络的构建和学习进程,可是不管这个进程多幺精妙,深度学习模型所做的本质上也不过是数值运算罢了。

直观而言,机器了解更相似于上文那个小朋友——尽管能做对题,但其实它并没有真的了解。

人类在在阅览了文本样例-1的Context后,被发问“What causes precipitation to fall?”

人类答复“gravity”的时分, 知道 这个东西是重力——一种 指向地心方向的力, 加速度是9.8m/s ,之所以会有这样一种力是由于地球的质量极端巨大,引力发生的背面理论是牛顿的万有引力定律等等……

而相同某个深度学习模型在“阅览”了相同文字后,答复相同问题时,则仅仅依据文章里面的某些语句映射的联系答复这个问题。

它既不知道fall是什幺,也不知道gravity是什幺,也不知道precipitation是什幺,乃至不知道what是什幺,但机器知道,只需问题里有what,并且有句话里有precipitation和fall,那该语句里剩余那个名词便是答案。

热门文章

随机推荐

推荐文章