论文:SQuAD: 100,000+ Questions for Machine Comprehension of Text翻译笔记(SQuAD: 超过10万个用于机器理解文本的问题)


在这里插入图片描述

论文标题:SQuAD: 超过10万个用于机器理解文本的问题

论文链接:https://arxiv.org/abs/1606.05250
arXiv:1606.05250v3 [cs.CL] 11 Oct 2016

摘要

我们介绍了斯坦福问答数据集(SQuAD),这是一个新的阅读理解数据集,由众包工作者在一组维基百科文章上提出的问题组成,每个问题的答案是对应的阅读段落中的一段文本。我们展示了斯坦福问答数据集(SQuAD),它是一个新的阅读理解数据集,包含超过10万个由众包工作者在一系列维基百科文章上提出的问题,每个问题的答案对应于相应的阅读段落中的某一段文本。我们分析数据集以了解回答问题所需的推理类型,主要依赖于依存关系和共现树。我们构建了一个强大的逻辑回归模型,该模型实现了51.0%的F1分数,比简单的基准(20%)有显著提高。然而,人类的表现(86.8%)要高得多,表明该数据集为未来研究提供了一个很好的挑战性问题。该数据集可在https://stanford-qa.com免费获取。

1 介绍

阅读理解(RC)对于机器来说是一项具有挑战性的任务,它需要对自然语言的理解和对世界的知识。请考虑这样一个问题:“什么是导致降水的原因?”这个问题是在图1中的段落中提出的。为了回答这个问题,首先可以找到文章的相关部分“降水…在重力作用下落下”,然后推理出“under”指的是原因(而不是位置),从而确定正确答案:“重力”。
在这里插入图片描述

图1:SQuAD数据集中一个示例段落的问题-答案对。每个答案都是来自段落的文本片段。

如何让机器在阅读理解这一具有挑战性的任务上取得进展?从历史上看,大型、现实的数据集对于推动领域的发展起到了关键作用——著名的例子包括ImageNet用于物体识别(Deng等,2009)和宾夕法尼亚树库用于句法分析(Marcus等,1993)。现有用于阅读理解(RC)的数据库存在两个缺点之一:(i) 那些质量较高的(Richardson等人,2013;Berant等人,2014)数据库太小,无法训练现代数据密集型模型,而 (ii) 那些较大的(Hermann等人,2015;Hill等人,2015)数据库是半合成的,与明确的阅读理解问题不具有相同的特点。

为了解决需要大量且高质量的阅读理解数据集的需求,我们推出了斯坦福问答数据集v1.0(SQuAD),该数据集可在https://stanford-qa.com免费获取。它由众包工作者在一组维基百科文章上提出的问题组成,每个问题的答案是对应阅读段落中的一个文本片段,或称为跨度。SQuAD包含107,785个问题-答案对,涉及536篇文章,比之前手动标注的阅读理解数据集(如MCTest)大了近两个数量级。

与先前的数据集不同,SQuAD并没有为每个问题提供一个答案列表。相反,系统必须从文章中的所有可能的跨度中选择答案,因此需要应对相当大量的候选者。虽然有跨度答案的问题比更高级标准化测试中发现的更具解释性的问题更加受限,但我们在SQuAD中仍然发现了丰富多样的问题和答案类型。我们基于依赖树中的距离开发自动技术来量化这种多样性,并按难度对问题进行分层。跨度约束还带来了一个重要好处,即基于跨度的答案比自由形式的答案更容易评估。

为了评估SQuAD的难度,我们实现了一个逻辑回归模型,并使用了一系列特征。我们发现,词法化和依赖树路径特征对模型性能很重要。我们还发现,随着以下两点的复杂性增加,模型性能会下降:(i)答案类型和(ii)问题与包含答案的句子之间的语法差异;有趣的是,对于人类来说,没有这种退化。 我们的最佳模型实现了51.0%的F1分数,这比滑动窗口基本线(20%)要好得多。在过去的四个月里(自2016年6月以来),我们看到了更复杂的基于神经网络的模型带来的显著改进。例如,王和江(2016)在SQuAD v1.1上获得了70.3%的F1分数(v1.0上的结果与此类似)。这些结果仍然远远落后于人类的表现,基于注释者之间的协议,人类的F1得分是86.8%。 这表明,在SQuAD数据集上,模型和学习方面还有很多提升的空间。

2 现有数据集

我们首先对现有的阅读理解与问题回答(QA)数据集进行调查,强调各种任务制定和创建策略(如表1概述)。
在这里插入图片描述

表1:几种阅读理解与问题回答数据集的调查。SQuAD比所有数据集(除了半合成的填空式数据集)都要大得多,而且它与TREC-QA在答案开放性方面相似。

阅读理解。以数据驱动的方法进行阅读理解可以追溯到Hirschman等人(1999年),他们整理了一个包含600个真实3至6年级阅读理解问题的数据库。他们的基于模式匹配的基本系统随后被一个基于规则的系统(Riloff和Thelen,2000年)和一个逻辑回归模型(Ng等人,2000年)所改进。更近一些时间,Richardson等人(2013年)策划了MCTest,其中包含660个由众包工作者创建的故事,每个故事有4个问题和每个问题有4个答案选项。因为许多问题需要常识推理和跨多个句子的推理,所以这个数据集仍然相当具有挑战性,尽管已经取得了明显的进步(Narasimhan 和 Barzilay, 2015; Sachan 等人,2015; Wang 等人,2015)。两个策划的数据集虽然真实且困难,但它们太小,无法支持非常有表现力的统计模型。

一些数据集侧重于更深入的推理能力。代数文字问题要求学生理解故事,并将其转化为一个方程组,这样就可以轻松求解得出答案(Kushman等人,2014;Hosseini等人,2014)。BAbI(Weston等人,2015),这是一个完全合成的阅读理解数据集,根据解决每个任务所需的不同类型推理进行分层。Clark和Etzioni(2016年)描述了解决四年级科学考试的任务,并强调需要运用世界知识进行推理。

开放领域问答。开放领域问答的目标是从大量文档中回答问题。在文本检索会议(TREC)的年度评估中(Voorhees和Tice,2000),许多开放领域问答的进展得以实现,其中很多被应用于IBM Watson for Jeopardy!(Ferrucci等,2013)。最近,杨等人(2015)创建了WikiQA数据集,就像SQuAD一样,使用维基百科的段落作为答案来源,但他们的任务是句子选择,而我们的任务需要在句子中选择一个特定的部分。

选择回答问题的文本范围类似于答案提取,这是开放领域问答流程中的最后一步。方法包括利用引导表面模式(Ravichandran和Hovy,2002),使用依赖树(Shen和Klakow,2006)以及在多个句子上使用因素图(Sun等,2013)。在我们的RC设置和答案提取之间的一个关键区别是,答案提取通常利用答案出现在多个文档中的事实(Brill等,2002),这比我们的设置更宽松,因为在我们的设置中,系统只能访问一个阅读段落。

完形填空数据集。最近,研究人员构建了完形填空数据集,其中的目标是预测一段文章中缺失的词(通常是专有名词)。由于这些数据集可以自动从自然发生的数据中生成,因此它们可以非常大。例如,儿童图书测试(CBT)(Hill等人,2015年)涉及根据前20个句子预测一个句子中的空白处的词语。Hermann等人(2015年)通过在CNN/每日新闻文章的抽象总结中删除实体,构建了一个填空式问题库;目的是根据原文填写实体。虽然这个数据集的规模令人印象深刻,但陈等人(2016年)表明,该数据集所需的推理能力比原先想象的要少,并得出结论,性能几乎已经饱和。
在这里插入图片描述

图2:用于收集数据集的面向众包的网络界面鼓励众包工作者在提问时使用自己的语言。

SQuAD问题和填空式查询之间的一个区别是,填空式查询的答案是单个词或实体,而SQuAD中的答案通常不包含非实体,可以是更长的短语。另一个区别是,SQuAD关注的问题的答案可以从段落中推断出来,而填空式查询的答案只是由段落暗示出来的。

3 数据集收集

我们分三个阶段收集我们的数据集: 整理段落,通过众包方式获取这些段落的问题和答案,以及获得额外的答案。

文章筛选。 为了获取高质量的文章,我们使用Project Nayuki的维基百科内部PageRanks来获得英文维基百科的前10000篇文章,从中随机抽取了536篇文章。从每篇文章中,我们提取了各个段落,去除了图片、图表、表格,并丢弃了少于500个字符的段落。结果是:536篇文章共有23,215段落,涵盖了从音乐名人到抽象概念等各种主题。我们将这些文章随机划分为训练集(80%)、开发集(10%)和测试集(10%)。

问题答案集合。接下来,我们雇佣了一群工作者来创建问题。我们使用了Daemo平台(Gaikwad等人,2015年),其后端是亚马逊机械土耳其。要求这群工作者的HIT接受率达到97%,至少完成1000个HIT,并且位于美国或加拿大。要求工作人员在每个段落上花费4分钟,并按每小时$9的报酬支付完成文章所需的小时数。这项任务得到了众包工人的积极评价,并在Turkopticon上获得了正面评论。

在每一段中,众包工作者的任务是提出并回答该段落内容的最多5个问题。问题必须输入到文本框中,答案必须在段落中高亮显示。为了指导工人,任务包含了一个示例段落,以及关于该段落的好问题和坏问题以及它们之所以被归类为如此的原因的例子。此外,鼓励众包工作者用自己的话提问,不要从段落中复制字词。在界面上,通过在每个段落开始时的提醒提示以及禁用段落文本的复制粘贴功能来加强这一点。

附加答案收集。为了了解人类在SQuAD上的表现并使我们的评估更加稳健,我们为开发和测试集中的每个问题获取了至少2个额外的答案。在次要答案生成任务中,每个众包工作者只看到了问题以及文章的段落,并被要求在段落中选择最短的回答问题的跨度。如果一个问题无法通过段落中的短语来回答,工作人员被要求提交问题而不标记答案。建议工人在2分钟内完成5个问题,并按照每小时9美元的相同费率支付所需时间的费用。在开发和测试集上,至少有一位额外的众包工人认为有2.6%的问题无法回答。

4 数据集分析

为了了解SQuAD的特性,我们分析了开发集中的问题和答案。 具体来说,我们探讨了以下三个方面: (i)答案类型的多样性, (ii)问题的难度,即回答问题所需的推理类型, (iii)问题句子和答案句子在语法上的差异程度。

答案的多样性。我们自动将答案分类如下:首先,我们将数值型和非数值型答案分开。使用由Stanford CoreNLP生成的成分解析和词性标签对非数值型答案进行分类。进一步将专有名词短语根据命名实体识别(NER)标签划分为人物、地点和其他实体。在表2中,我们可以看到日期和其他数字占数据的19.8%;32.6%的答案是三种不同类型的专有名词;31.8%是常见名词短语答案;其余15.8%由形容词短语、动词短语、从句和其他类型组成。
在这里插入图片描述

表2:我们可以看到日期和其他数字占数据的19.8%;32.6%的答案是三种不同类型的专有名词;31.8%是常见名词短语答案;其余15.8%由形容词短语、动词短语、从句和其他类型组成。

推理要求回答问题。为了更好地理解回答问题所需的推理,我们从开发集中的48篇文章中抽取了4个问题,并手动标记了示例的类别,如表3所示。结果显示,所有示例在问题和文章答案之间都存在某种程度的词汇或语法差异。请注意,有些示例可能同时属于多个类别。
在这里插入图片描述

表3:我们手动将192个示例标记为上述类别中的一个或多个。与相应推理类型相关的单词已加粗,众包答案已下划线。

按句法差异进行分层。我们还开发了一种自动方法来量化问题和包含答案的句子之间的语法差异。这提供了另一种衡量问题难度和分层数据集的方法,我们将在第6.3节中回到这个话题。

我们通过图3中的示例来说明如何测量分歧。首先,我们检测到问题和答案句子中共同的锚点(单词词形对);在这个例子中,锚点是“first”。然后从问题中的锚点“first”到疑问词“what”的两个非词汇化路径,以及从答案句子中的锚点到答案范围“Bainbridge’s”的另一个非词汇化路径,都从依赖解析树中提取出来。我们测量这两个路径之间的编辑距离,定义为将一个路径转换成另一个路径所需的最小删除或插入次数。然后我们将语法分歧定义为所有可能锚点的最小编辑距离。图4a中的直方图显示,我们的数据集中的句法差异范围很广。我们还展示了两个具体示例,其中编辑距离分别为0和6。请注意,我们的句法差异忽略了词汇变化。此外,小的差异并不意味着一个问题很容易,因为可能存在其他具有相似小差异的候选问题。

在这里插入图片描述

图3:一个示例,演示如何计算问题Q和答案句子S之间的语法差异。

在这里插入图片描述

图4:我们通过计算问题中的无词义依存路径与包含答案的句子之间的编辑距离来衡量句法差异。

5 方法

我们开发了一个逻辑回归模型,并将其准确性与三种基线方法进行比较。

候选答案生成。 对于所有四种方法,我们不仅考虑所有O(L2)范围作为候选答案,其中L是句子中单词的数量,而且只使用在由Stanford CoreNLP生成的词性解析中的短语范围。忽略标点符号和冠词,我们发现开发集中的正确答案中有77.3%是成分。这在我们的方法准确性上设置了一个有效的上限。在训练过程中,当一个例子的正确答案不是构成成分时,我们使用包含正确答案的最短构成成分作为目标。

5.1 滑动窗口基线

对于每个候选答案,我们计算包含它的句子(不包括候选本身)和问题之间的单个/双词重叠。我们保留所有具有最大重叠的候选。在这些候选中,我们使用Richardson等人(2013)提出的滑动窗口方法选择最佳候选。

除了基本的滑动窗口方法外,我们还实现了基于距离的扩展(Richardson等人,2013)。然而,与Richardson等人(2013)使用整个段落作为答案上下文不同,我们仅使用包含候选答案的句子以提高效率。

5.2 逻辑回归

在我们的逻辑回归模型中,我们为每个候选答案提取了多种特征。我们将每个连续特征离散化为10个等大小的桶,总共构建了1.8亿个特征,其中大部分是词法特征或依赖树路径特征。特征的描述和示例总结在表4中。
在这里插入图片描述

表4:用于逻辑回归模型的特征,以及关于“是什么导致降水?”的问题的例子,句子和答案。在气象学中,降水是大气水蒸气凝结的任何产物,在重力作用下下降。Q表示问题,A表示候选答案,S表示包含候选答案的句子。

匹配的单词和双词频率以及根匹配特征有助于模型选择正确的句子。长度特征使模型偏向于为答案范围选择常见长度和位置,而范围单词频率使模型不倾向于使用无信息的单词。成分标签和词性标记特征引导模型朝正确的答案类型发展。除了这些基本特征外,我们还使用词汇化特征解决词汇变化,并使用依存树路径特征解决句法变化。

多类对数似然损失函数通过AdaGrad进行优化,初始学习率为0.1。为了提高效率,每批更新都在一个段落中的所有问题上进行,因为它们共享相同的候选者。使用L2正则化,系数为0.1除以批次数量。该模型通过三次遍历训练数据进行训练。

6 实验

6.1 模型评估

我们使用两种不同的指标来评估模型的准确性。这两种指标都忽略了标点符号和冠词(a, an, the)。
精确匹配。这个指标衡量的是预测结果与任何一个真实答案完全匹配的百分比。

(宏观平均)F1得分。这个指标测量的是预测和真实答案之间的平均重叠程度。我们将预测和真实答案视为一袋子的词项,并计算它们的F1值。我们取所有真实答案中的最大F1值,然后对所有问题进行平均。

6.2 人类表现

我们评估人类在SQuAD的开发和测试集上的表现。回顾一下,这些集合中的每个问题至少有三个答案。为了评估人类的表现,我们将每个问题的第二个答案视为人类预测,并保持其他答案为地面真实答案。在测试集上得出的人类表现分数为准确匹配指标的77.0%,F1指标的86.8%。不一致主要发生在包含/排除非必要短语(例如季风槽与季风槽移动)而不是关于答案的基本分歧。

6.3 模型性能

表5显示了我们的模型在v1.0版本的开发和测试集上的性能,以及人类的表现。逻辑回归模型显著优于基线,但逊于人类。我们注意到,该模型能够以79.3%的准确度选择包含答案的句子;因此,大部分难度在于找到句子中确切的答案范围。
在这里插入图片描述

表5:各种方法和人类的性能。逻辑回归优于基线,但仍存在显著的人类与机器之间的差距。

特征消除。为了了解哪些特征对逻辑回归模型的性能负责,我们进行了一种特征消除方法,即一次从我们的模型中删除一个特征组。结果如表6所示,表明词形化和依赖树路径特征最为重要。将我们的分析与陈等人(2016)的分析进行比较,我们注意到依赖树路径特征在我们的数据集中起着更大的作用。此外,我们还发现,在使用词汇化特征时,模型会显著过拟合训练集;然而,我们发现增加L2正则化会降低在开发集上的性能。
在这里插入图片描述

表6:在特征消减情况下的性能。我们发现词法化和依赖树路径特征最为重要。

表现按答案类型分层。为了更深入地了解我们的逻辑回归模型的性能,我们在表2中报告了它在各种答案类型上的性能。结果显示(如表7所示),该模型在日期和其他数字以及类别方面的表现最佳,这些类别的可能候选者通常只有几个,且大多数答案是单个标记。然而,在其他命名实体(即位置、人名和其他实体)方面,该模型面临更大的挑战,因为这些类别的可能候选者数量较多。然而,通过词性标注特征,命名实体仍然相对容易识别。该模型在其他答案类型的识别上表现较差,这些类型共占数据集的47.6%。人类在日期、数字和所有命名实体上的表现非常出色。他们在其他答案类型上的性能仅略有下降。
在这里插入图片描述

表7:根据答案类型划分的性能。逻辑回归在某些类型的答案上表现更好,例如数字和实体。另一方面,人类的表现更加均匀。

性能按句法差异分层。如第4节所述,数据集的另一个挑战性方面是问题和答案句子之间的句法差异。图5显示,差异越大,逻辑回归模型的性能就越低。有趣的是,人类似乎对语法差异并不敏感,这表明深度理解并不会被表面的差异所分散。因此,测量程度的退化可能有助于确定模型在何种程度上以正确的方式进行泛化。
在这里插入图片描述

图5:根据问题和句子的语法差异性划分的性能。逻辑回归的性能随着差异性的增加而下降。相比之下,人类的性能在全部差异范围内都保持稳定。

7 结论

为了实现自然语言理解的最终目标,我们引入了斯坦福问答数据集,这是一个关于维基百科文章的大规模阅读理解数据集,包含了众包生成的问题和答案对。SQuAD(Stanford Question Answering Dataset)具有多样化的问题和答案类型。我们的逻辑回归模型的性能,F1为51.0%,与人类的F1为86.8%相比,表明有很大的改进空间。我们免费提供了我们的数据集,以鼓励探索更具表现力的模型。自从我们的数据集发布以来,我们已经看到了大量关于在这个数据集上建立模型的兴趣,而且我们的逻辑回归模型与人类表现之间的差距已经缩小了一半以上(王和江,2016)。我们预计剩余的差距将更难弥合,但这样的努力将导致阅读理解方面的重大进步。

可重复性

本文中所有代码、数据和实验都可以在CodaLab平台上找到:https://worksheets.codalab.org/worksheets/0xd53d03a48ef64b329c16b9baf0f99b0c/

  • 9
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值