Command Palette
Search for a command to run...
SQuAD:面向机器文本理解的 100,000+ 问题
SQuAD:面向机器文本理解的 100,000+ 问题
Pranav Rajpurkar Jian Zhang Konstantin Lopyrev Percy Liang
摘要
我们提出了斯坦福问答数据集(SQuAD),这是一个全新的阅读理解数据集,包含由众包工作者基于一系列维基百科文章提出的 100,000+ 个问题,其中每个问题的答案均为对应阅读段落中的一段文本。我们借助依存句法树和成分句法树对数据集进行了深入分析,以理解回答问题所需的推理类型。我们构建了一个性能较强的逻辑回归模型,达到了 51.0% 的 F1 分数,相较于简单基线模型(20%)有显著提升。然而,人类表现(86.8%)远高于模型表现,表明该数据集为未来研究提供了一个良好的挑战性问题。该数据集可在 https://stanford-qa.com 免费获取。
一句话总结
斯坦福大学提出 SQuAD,这是一个阅读理解数据集,包含 100,000+ 个由众包工人针对维基百科文章提出的问题,并以文本片段作为答案;其中,一个强大的逻辑回归模型取得 51.0% F1,而人类表现达到 86.8%,凸显未来机器阅读理解研究的重大挑战。
核心贡献
-
该论文引入 SQuAD,这是一个公开可用的阅读理解数据集,包含 107,785 个针对 536 篇维基百科文章提出的众包问答对,其中每个答案必须是对应段落中的文本片段,而不是选择答案选项。
-
基于依存树和成分树的自动分析技术可以量化问题和答案的多样性,刻画 SQuAD 所需的推理,并通过答案类型复杂度和句法分歧来考察难度。
-
逻辑回归基线取得 51.0% F1,相比 20% 的滑动窗口基线有显著提升;同时 86.8% 的人类表现表明,SQuAD 对未来的阅读理解模型构成有挑战性的基准。
引言
该论文面向机器阅读理解,即系统阅读段落并回答自然语言问题。这一能力对于需要精确文本理解和真实世界知识的应用很重要,例如问答、信息抽取和自动辅导。早先的阅读理解资源面临取舍:高质量数据集太小,无法支撑现代数据密集型模型,而更大的数据集往往具有半合成性质,与现实的显式阅读问题不同。该论文通过引入斯坦福问答数据集 v1.0(SQuAD)填补这一空缺;SQuAD 是一个由维基百科文章构建的大规模众包数据集,在 536 篇文章上包含 107,785 个问答对。在 SQuAD 中,系统必须从段落中选择文本片段来回答,而不是从列出选项中选择,这使得任务更贴近现实,也更容易评估。该论文还提出逻辑回归基线,并分析问题的难度,显示相对于人类水平性能仍有很大改进空间。
数据集
-
该论文使用 SQuAD,这是一个基于维基百科构建的人工编写阅读理解数据集。它结合精选段落、众包工人撰写的问题以及直接在段落中标注的答案片段。
-
来源流程:对英文维基百科文章使用内部 PageRank 排序,选择前 10,000 篇,均匀采样 536 篇文章,并抽取其中段落。删除图像、图形和表格,并丢弃字符数少于 500 的段落,最终得到涵盖许多主题的 23,215 个段落。
-
划分设计:将 536 篇文章随机划分为 80% 训练集、10% 开发集和 10% 测试集。这大约对应 18.6k 个训练段落、2.3k 个开发集段落和 2.3k 个测试集段落。
-
问题创建:符合条件、HIT 接受率为 97%、至少完成 1000 个 HIT 且位于美国或加拿大的众包工人,每小时获得 9 美元报酬,针对每个段落最多提出并回答 5 个问题。鼓励众包工人用自己的话提问,禁用对段落的复制粘贴操作,并通过界面示例展示良好和糟糕的问答行为。
-
数据模式:每个样本包含一个段落、一个自然语言问题以及答案,答案为段落内精确的高亮片段。答案不限于单个命名实体,也可以是日期、数字、专有名词、普通名词短语、形容词短语、动词短语、从句或其他文本片段。
-
答案评估增强:对于开发集和测试集问题,收集至少两个额外答案。标注者选择能够回答问题且最短的片段,或将问题标记为不可回答。至少有一个额外标注者将 2.6% 的问题标记为不可回答,这有助于提高评估的稳健性。
-
答案元数据:使用 Stanford CoreNLP 的成分句法分析结果、POS 标签和 NER 标签对开发集答案进行分类。答案分布为 19.8% 日期和数字,32.6% 专有名词,31.8% 普通名词短语,15.8% 其他类型,例如形容词短语、动词短语和从句。
-
难度元数据:通过提取共享锚点周围的依存路径并测量最小编辑距离,计算问题与包含答案的句子之间的句法分歧。该分歧用于刻画问题难度,并对数据集分析进行分层。
-
模型使用:训练集提供段落、问题和答案片段样本,用于学习答案抽取。开发集和测试集用于评估,额外人工答案支持更可靠的基线比较和不可回答问题检查。
方法
该论文将以段落为基础的问题回答表述为候选生成和排序问题。不同于考虑句子中的每个可能文本片段,该流程首先将搜索空间限制在语言学上合理的片段。使用成分句法分析器识别成分片段,并仅将这些成分片段作为候选答案。这避免了 O(L2) 的完整二次方片段空间,其中 L 是句子中的词数,并将问题转化为对更小的、具有句法依据的答案集合进行打分。
候选生成选择引入了一个结构约束,该约束也可作为性能上界。忽略标点符号和冠词后,开发集中 77.3% 的正确答案都是成分片段。训练时,如果正确答案本身不是成分片段,该方法会将包含正确答案的最短成分片段作为监督目标。这使训练信号与基于分析器的候选空间保持一致。
主要排序模型是一个多类别逻辑回归系统。对于每个候选答案,提取一个丰富的特征表示,结合词汇匹配、位置信息、句法类型、词频统计和依存路径模式。匹配的词频、匹配的二元组频率和根匹配特征有助于识别与问题相关的句子级证据。长度相关特征使模型偏向出现在常见长度和位置的答案片段,而片段词频特征降低无信息高频词的影响。成分标签特征和片段词性特征引导模型关注与问题兼容的答案类型。
为了处理表层变化,特征集包含词汇化特征,帮助解决用词差异。句法变化通过依存树路径特征捕捉,这些特征编码候选节点和问题相关术语之间的关系模式。例如,涉及主语或修饰语链接等依存关系的路径,可以帮助模型判断某个候选是否在支持上下文中与答案参与相同句法关系。连续特征被离散化为十个等大小桶,形成约 1.8 亿个特征的极大特征空间,其中多数为词汇化特征或依存路径特征。
给定问题 q 及其候选集 Cq,逻辑回归模型基于特征向量 ϕ(q,ci) 为每个候选 ci 分配分数。该分数可写为
zi=w⊤ϕ(q,ci),候选分布通过在候选集上应用 softmax 获得:
p(ci∣q)=∑cj∈Cqexp(zj)exp(zi).训练在该分布下最大化正确答案的多类别对数似然。优化使用 AdaGrad,初始学习率为 0.1。为了提高效率,每次更新都在同一段落内的所有问题组成的批次上进行,因为这些问题共享同一候选集。这种共享候选的批处理方式使模型能够一步更新所有相关问题与候选的交互。
正则化很重要,因为离散化后的特征空间极大。训练目标包含一个 L2 惩罚项,其系数为 0.1,并除以批次数量;这使正则化强度随训练集规模缩放。模型在训练数据上进行三个完整遍历。
同一候选答案框架也用于基线比较。一个基线计算问题与包含候选的句子之间的一元组和二元组重叠,并排除候选本身。保留重叠最大的候选,并从中使用滑动窗口打分方法选择最佳候选。还考虑一种基于距离的扩展,但其只使用包含候选的句子而非整段文章,因此基线更高效,同时保留局部上下文。
实验
实验使用精确匹配和 token 级 F1 评估问题回答模型,并在开发集和测试集上测量人类表现,作为抽取简洁答案片段难度的参考。主要模型评估显示,逻辑回归系统优于基线,但仍低于人类;消融实验表明,词汇化特征和依存路径特征影响最大,并且当答案候选受限且为单个 token 时模型表现最强。按照答案类型和句法分歧进一步分析发现,模型在多样化命名实体和表面不同的问题面前更吃力,而人类对这些表层变化基本不敏感。
所综述的数据集涵盖多种阅读理解和问答风格,从多选和句子选择到开放式答案片段。被重点介绍的数据集对于众包答案片段抽取而言规模很大,并且比大多数早期数据集更开放。进一步分析表明,识别答案句子比抽取精确片段更容易,尤其是当问题和答案句子在句法上不同,或者存在许多合理候选时。该数据集是一个大型众包阅读理解资源,重点在于选择答案片段,而不是选择固定答案选项。它更类似于开放式问答数据集,而不是许多较小的多选或计算导向数据集。人类表现超过逻辑模型,多数错误涉及细微措辞差异,而不是完全错误的答案。模型通常能够找到正确句子,但难以定位其中精确答案片段。词汇化特征和依存树路径特征对模型性能尤其重要。随着问题与答案句子之间句法分歧增加,模型准确率下降,而人类表现受影响较小。模型在合理候选较少的答案类型上表现最佳,例如日期和数字,而在更含糊的类别上表现较差。
数据集包含广泛混合的答案类型,包括数字表达式、专有名词实体、普通名词短语以及不那么标准的语言形式。性能分析显示,当候选受限的时候,模型表现较好,例如日期和数字,但在多样化命名实体,尤其是覆盖近一半数据的其他答案类型上更吃力。人类在数字和命名实体类别上保持较强表现,只在其他答案类型上略有下降。数字和日期答案在数据集中占相当大比例。专有名词被划分为人物、地点和其他实体,而不是作为一个类别处理。模型在合理答案候选有限的日期和数字上最强。其他答案类型,包括形容词短语、动词短语、从句和其他形式,对模型最难。
人工标注显示,回答抽样问题可能需要不同类型的推理,并且每个样例都体现出问题与答案句子之间的某种词汇或句法差异。句法变化是最常见的类别,基于同义词的词汇变化也很常见。较少样例需要世界知识、跨多个句子的推理或具有歧义,一些样例属于多个类别。句法变化是最常见的推理类别。基于同义词的词汇变化也很常见,而多句子推理和歧义相对较少。
该图说明如何通过比较问题和答案的依存树路径来量化二者之间的句法分歧。示例使用删除、替换和插入操作将问题路径与答案路径对齐,从而产生非零编辑代价。这类表层句法差异被认为是模型困难来源之一,而人类表现似乎受影响较小。问题和答案句子通过依存树路径进行比较。路径对齐使用删除、替换和插入等编辑操作测量。更高的句法分歧对应更低的模型性能,而人类对其没有明显敏感性。
逻辑回归模型使用离散化的词汇、结构、长度、频率和句法特征来表示候选答案。匹配的词频、二元组频率、根匹配和片段属性有助于区分包含正确答案的句子和片段。词汇化特征和依存路径特征在处理词汇和句法变化时尤其重要。匹配的词频、二元组频率和依存根匹配支持选择包含答案的句子。词汇化特征和依存树路径特征在模型性能中起主要作用。
实验在一个大型众包阅读理解数据集上评估逻辑回归模型和人类表现,该数据集用于答案片段选择,并分析数据集多样性、答案类型、推理类别、句法分歧和模型特征。结果表明,识别答案句子比抽取精确片段更容易;模型在日期和数字等受限答案类型上表现更好,但在多样化命名实体和其他答案形式上表现较弱。相对于词汇和句法变化,人类比模型更稳健,尤其是当问题与答案句子之间的句法分歧增加时;词汇化特征和依存路径特征对模型准确率很重要。