机器阅读理解:算法与实践
上QQ阅读APP看书,第一时间看更新

1.5 机器阅读理解数据集

自然语言处理的许多领域中有大量的公开数据集。在这些数据集上的客观评测可以检验模型的质量,比较模型的优劣。这在很大程度上推动了相关研究的发展。机器阅读理解作为NLP中的热门课题,有许多大规模数据集和相关竞赛。根据数据集中阅读文章的形式,可以将这些数据集分为单段落、多段落和可检索的文本库3种类型。单段落和多段落类型的文章因为其长度有限,可以直接在给定段落中建模获取答案。而文本库规模庞大,一般需要先建立信息检索模块。算法根据给定的问题信息通过检索找到文本库中最相关的若干段落或语句,大幅缩小阅读范围,然后在检索结果中找到回答问题的线索。下面分别对这3种类型的机器阅读理解数据集进行介绍。

1.5.1 单段落式数据集

单段落式机器阅读理解数据集要求模型在阅读一个给定的文本段落之后,回答与之相关的问题。在此过程中,模型不需要参考任何该段落以外的信息。单段落式数据集的构造比较简单,而且只考察模型的核心阅读能力,是机器阅读理解中最常见的数据集类型。

1. RACE

RACEG. Lai, Q. Xie, H. Liu, Y. Yang, E. Hovy.《Race: Large-scale reading comprehension dataset from examinations》. 2017.是CMU大学于2017年推出的大规模英语机器阅读理解数据集。数据来源为中国中学生的英语考试。RACE中包含28000篇文章和近10万个多项选择问题。模型需要在选项中选择正确的答案,如图1-4所示。RACE数据分为面向初中生的RACE-M数据集和面向高中生的RACE-H数据集。值得一提的是,在采集答案的过程中,RACE使用了光学字符识别系统对公开的答案图像信息进行识别。

图1-4 RACE数据集中的文章与问答

2. NewsQA

NewsQAT. Wang, X. Yuan, J. Harris, A. Sordoni, P. Bachman, K. Suleman. 《NewsQA: A Machine Comprehension Dataset Adam Trischler》. 2016.是Maluuba公司于2016年推出的新闻阅读理解数据集,其中包含12000多篇CNN新闻稿以及近12万个人工编辑的问题,均采用区间式答案。NewsQA数据集的重点考核目标之一是模型的推理和归纳能力,即从多个不同位置的信息得到最终答案。并且,模型需要对无法确定答案的问题输出“无法回答”。图1-5所示为NewsQA的样例文章和相关问答。

图1-5 NewsQA数据集中的文章与问答

3. CNN/Daily Mail

CNN/Daily MailK. M. Hermann, T. Kocisky, E. Grefenstette, L. Espeholt, W. Kay, M. Suleyman, P. Blunsom. 《Teaching machines to read and comprehend》. 2015.是DeepMind于2015年推出的阅读理解任务。该任务中的文章来源于媒体CNN和Daily Mail。数据集中共包含约140万个样例。每个样例包括一篇文章、一个问题和相应答案。CNN/Daily Mail数据集采用完形填空式答案。为了使模型更关注于对语义的理解,文章中的实体信息,如人名、地名等,均用编号代替。模型需要根据问题从文章中选出正确的实体编号填入@placeholder处正确的实体编号,如图1-6所示。

图1-6 CNN /Daily Mail数据集中的文章与问答

4. SQuAD

SQuADP. Rajpurkar, J. Zhang, K. Lopyrev, P. Liang. 《SQuAD: 100,000+ questions for machine comprehension of text》. 2016.是影响力最大、参与者最多的机器阅读理解竞赛,由斯坦福大学于2016年推出。SQuAD一共有10万多个问题,来源于536篇维基百科的文章,采用区间式答案。2018年上线的SQuAD2.0版本中加入了大量“无法回答”的问题,问题总数量达到15万个。图1-7所示为SQuAD中的文章和问答示例。SQuAD数据集规模大且质量高,获得了很高的关注度。截至2019年12月,来自全球的研究机构和团队已经在SQuAD竞赛中提交模型294次之多。2018年10月5日,Google提交的BERT模型在SQuAD1.1版本竞赛中第一次获得了超过人类水平的得分,引起了空前反响。

图1-7 SQuA D数据集中的文章与问答

5. CoQA

CoQAS. Reddy, D. Chen, C. D. Manning. 《CoQA: A conversational question answering challenge》.2018.是2018年斯坦福大学提出的多轮对话式机器阅读理解竞赛。其最大的特点是在问答过程中加入了上下文,即对每个段落提出多轮问题。模型回答每轮问题时,均需要理解该段落以及之前的若干轮问题和答案(见图1-8),这就要求模型具有理解上下文的能力。该数据集中共有8000多个段落和超过12万个问题,平均每个段落有15轮问答。此外,CoQA在测试集中加入了训练集内所没有的两个领域的问答(Reddit论坛和科学问题)以测试模型的泛化能力。CoQA的答案形式有区间式、“是/否”“无法回答”以及少量自由式回答。2019年3月,来自微软的研究团队提出了MMFT模型,并获得了89.4%的F1分数,首次超过了人类水平88.8%,再一次证明了机器阅读理解模型的有效性。

图1-8 CoQA数据集中的文章与多轮问答

1.5.2 多段落式数据集

多段落式机器阅读理解数据集要求模型阅读给定的多个文本段落,并回答与之相关的问题。其中,一种形式为某个段落中含有正确答案,这可以考察模型建立问题与每个段落的相关性的能力;另一种形式为模型需要在多个段落中寻找线索并推理得出答案,这可以考察模型的多步推理能力。

1. MS MARCO

MS MARCOT. Nguyen, M. Rosenberg, X. Song, J. Gao, S. Tiwary, R. Majumder, L. Deng. 《MS MARCO: A Human-Generated MAchine Reading COmprehension Dataset》. 2016.是2016年由微软公司推出的大型机器阅读理解数据集,其中包含超过100万个问题和800多万篇文章。该数据集中的问题来自真实用户提交的查询,而相关的多个段落来自Bing搜索引擎对查询的检索结果(见图1-9),并采用自由回答式答案。MS MARCO一共提供了3个竞赛任务:

图1-9 MS MAR CO数据集中的文章与问答

❏ 判断是否可以从给定段落的信息中得到问题的答案;

❏ 生成答案语句;

❏ 按照与问题的相关性对给定的多个段落进行排序。

2. DuReader

DuReaderW. He, et. al. 《Dureader: A Chinese machine reading comprehension dataset from real-world applications》. 2017.是百度公司于2017年推出的中文阅读理解数据集。DuReader的数据来自百度搜索引擎的用户查询和相关文档。和MS MARCO类似,DuReader利用搜索引擎的查询结果提供与问题相关的文章,但文章是以全文的形式给出,而非MS MARCO的段落式,从而加大了模型处理的难度。此外,由于文章的立场和观点不尽相同,DuReader对一些问题提供了多个标准答案,这也更加符合真实的问答情景(见图1-10)。DuReader共包含20万个问题和100万篇相关文档,答案包括自由回答式及“是/否”类型。

图1-10 DuReader数据集中的文章与问答

3. QAngaroo

QAngarooJ .Welbl, P. Stenetorp, S. Riedel. 《Constructing datasets for multi-hop reading comprehension across documents》. 2017.是2017年伦敦大学学院推出的多文档推理阅读理解数据集。它由两个数据集组成:WikiHop和MedHop。WikiHop来源于维基百科,MedHop来源于医疗论文库PubMed的论文摘要。QAngaroo最大的特点是问题的答案并不能从一个段落中单独得出,其中的线索分散在多个段落中寻找线索并推理得出。因此,QAngaroo对于算法理解和分析多段落的能力提出了很高的要求,需要模型利用多跳推理(multi-hop reasoning)获得答案。该数据集中共包含5万多个问题和相关文档,采用多项选择式答案。图1-11所示为QAngaroo数据集中的样例文章、问题及答案选项。

图1-11 QAngaroo数据集中的文章与问答

4. HotpotQA

HotpotQAZ. Yang, P. Qi, S. Zhang, Y. Bengio, W. W. Cohen, R. Salakhutdinov, C. D. Manning. 《Hotpotqa: A dataset for diverse, explainable multi-hop question answering》. 2018.是2018年由卡耐基·梅隆大学、斯坦福大学、蒙特利尔大学和Google公司等共同推出的多段落推理阅读理解数据集。与QAngaroo类似,HotpotQA要求模型在多个文档中寻找线索并经过多步推理得出答案,如图1-12所示。HotpotQA中共包含11万个问题和相关的维基百科段落,采用区间式答案。

图1-12 HotpotQA数据集中的文章与问答

1.5.3 文本库式数据集

文本库式数据集一般提供一个大型文本语料库(corpus)。阅读理解模型需要首先根据问题在文本库中利用检索方法找到相关的段落或文章,然后进一步分析确定答案。这也是最贴近在线搜索问答等实际应用的一种数据集形式。由于这种形式基于大规模文本资源,未限定答案的来源,也被称为开放域机器阅读理解(open-domain machine reading comprehension)。

ARC

ARC(AI2 Reasoning Challenge)P. Clark, I. Cowhey, O. Etzioni, T. Khot, A. Sabharwal, C. Schoenick, O. Tafjord. 《Think you have solved question answering? try arc, the ai2 reasoning challenge》. 2018.是艾伦人工智能研究院于2018年推出的关于科学知识的文本库式机器阅读理解数据集。ARC中的问题来自于约7800道美国三到九年级学生的科学课试题。所有问题均采用多项选择式答案(见图1-13)。此外,数据集中还提供了一个大型科学文本库,来源于搜索引擎对科学问题的查询结果,共包含1400多万个句子。模型可以使用文本库中的信息回答问题,也可以通过其他途径获得相关信息。

图1-13 ARC数据集中的问题和答案选项