Joint Training of Candidate Extraction and Answer Selection for Reading Comprehension 论文阅读笔记
Joint Training of Candidate Extraction and Answer Selection for Reading Comprehension
原文链接:http://cn.arxiv.org/pdf/1805.06145
本文是百度发表于 ACL 2018 的工作,论文利用强化学习的方法对串行的多文档阅读理解模块进行联合训练。作者提出了一种新的答案选择模型,它结合了基于注意力相关矩阵组合所抽取的全部候选信息。本文模型在两个具有挑战性的开放领域阅读理解数据集 Quasar-T 和Search QA 上大幅超出了目前的最优结果。摘自paperweekly
Abstract
虽然在阅读理解中已经发展出了许多复杂的基于神经网络的技术,但大多数方法都是对答案以独立的方式进行建模,而忽略了它与其他候选的关系。在开放领域的情况下,这个问题可能会更糟,在开放领域中,来自多个段落的候选文章组合在一起回答一个问题。在本文中,我们将阅读理解作为一种提取-选择-两阶段的过程。我们首先从短文中抽取候选的答案,然后结合所有候选答案的信息选择最终答案。并将候选答案提取作为一个变量,通过两个过程与强化学习联合训练。因此,我们的方法在两个具有挑战性的开放领域阅读理解数据集上结果有了显著地提高。进一步的分析验证了模型的有效性,特别是所有候选对象的信息融合和提取-选择程序的联合训练过程。
Introduction
教机器阅读和理解人类语言是自然语言处理的一个长期目标。为了评估这种能力,阅读理解(RC)是通过阅读相关文章来回答问题的。近年来,RC引起了人们的极大兴趣。随着新发布的数据集,各种先进的神经模型被提出(Hermann et al., 2015; Rajpurkar et al., 2016; Dunn et al., 2017; Dhingra et al., 2017b; He et al., 2017)。
现有的大多数方法主要集中在问题和段落之间的交互建模(Dhingra et al., 2017a;Seo et al., 2017;Wang et al., 2017),较少关注候选答案的信息。然而,当人类解决这个问题的时候,我们通常会先收集每一段文字,收集一些候选的答案,然后集中在这些候选答案上,结合他们的信息来选择最终的答案。这种收集-选择过程在开放领域的场景中更有意义,开放领域的场景需要多个段落的候选对象组合来回答一个问题。表1中的例子说明了这一现象。
基于这个思路,我们构建了一个extract-then-select两个过程来模拟上述过程。该体系结构包含两个部分:(1)提取模型,生成候选答案;(2)选择模型,将所有候选答案组合起来,得到最终的答案。然而,需要关注的候选答案往往是无法直接找到的,因为大多数RC数据集只提供标准答案。因此,我们将候选提取作为一个潜在变量,并与强化学习(RL)联合训练这两个阶段。
总之,我们的工作做出了以下贡献:
1。我们将开放式阅读理解分为两个阶段,首先抽取候选答案,然后选择最终答案。通过联合训练,我们将这两个相关阶段作为一个整体进行优化。
2。我们提出了一种新的答案选择模型,该模型利用基于注意力的关联矩阵将所有候选答案的信息结合起来。实验结果表明,信息融合对答案的选择有很大的帮助。
3.通过两阶段的框架和联合训练策略,我们的方法在两个具有挑战性的公共RC数据集类星体(Dhingra et al., 2017b)和SearchQA (Dunn et al., 2017)上显著超越了目前最先进的性能。
2 Related work
近年来,阅读理解在方法论和数据集构建方面取得了显著进展。现有的大多数方法主要是对问题和段落之间复杂的交互进行建模,然后使用指针网络(Vinyals et al., 2015) 直接对答案进行建模(Dhingra et al., 2017a; Wang and Jiang, 2017; Seo et al., 2017; Wang et al., 2017)。这些方法在现有的close-domain 域数据集中是有效的(Hermann et al., 2015; Hill et al., 2015; Rajpurkar et al., 2016)。
最近,开放域RC引起了越来越多的关注(Nguyen et al., 2016; Dunn et al., 2017; Dhingra et al., 2017b; He et al., 2017)并对问答技巧提出了新的挑战。在这些场景中,问题与多个段落一起出现,这些段落通常是通过利用非结构化文档或web数据收集的。前面提到的方法通常依赖于循环神经网络和复杂的注意力机制,如果将段落连接在一起,这就会耗费大量的时间。因此,一些工作试图以粗到细的模式来缓解这个问题。Wang et al. (2018a)[R3+那篇文章]将选择相关文章的排序器和从文章中生成答案的阅读器结合起来。然而,这种方法只依赖于一段话,因此对这两部分的准确性提出了很高的要求。更糟糕的是,这个框架不能处理需要多个段落才能正确回答的情况。考虑到关键信息的聚集,Wang et al. (2018b)提出了一种重新排序的方法来解决上述问题。然而,他们的重新排序阶段完全独立于候选答案提取过程。与他们的方法不同的是,我们提出了一种新的答案抽取模型,将所有提取的候选答案的信息结合起来。此外,通过强化学习,我们的候选答案提取和答案选择模型可以联合学习。Trischler et al.(2016)还提出了两步提取-推理模型,首先提取K个最可能的候选答案,然后将假设与文中所有句子进行比较。然而,在他们的工作中,每个候选答案都被认为是孤立的。
本文所采用的训练策略是强化学习,这是受最近将其应用于问题回答问题的工作的启发。上述粗到细的框架(Choi et al., 2017;Wang et al.,2018a)将句子选择作为潜在变量,通过RL与答案生成模块共同训练句子选择模块。Shen et al. 2017)将多跳推理过程建模为一个终止状态,以决定什么时候能够产生答案。RL适用于捕捉这种随机行为。Hu等人(2018)只是对提取过程进行建模,除了最大似然估计外,还使用F1作为奖励。在他们的训练过程中使用了RL,因为F1测度是不可微的。
3 Two-stage RC Framework
在本研究中,我们主要考虑了开放域阅读理解。在这种情况下,给定的问题Q与多个文章P = [p1,p2,p3]。我们的主要框架由两部分组成:(1)从文章P中提取候选答案C = [c1,c2,c_m]和(2)从候选答案中选择最终答案A。过程如图1所示。我们为每个部分设计了不同的模型,并通过联合强化学习将它们作为一个整体进行优化。
3.1 Candidate Extraction
我们根据以下分布分别从每篇文章Pi中独立提取K个候选答案,构建候选集合C:
其中Cij表示从第i段中提取的第j个候选项。在我们的公式中K是一个常数。以K为2为例:
我们忽略Q,简化方程1中的条件分布。因此,我们的候选提取阶段的基本块是每个候选P (Cij|Q;Pi)。在本小节的其余部分中,我们将详细介绍有关候选提取的模型体系结构,如图2所示 :
Question & Passage Representation
首先我们对问题和文章进行表示,首先对问题和文章向量化表示,然后将表示的P和Q送人双向的LSTM网络,获得其表示H_Q和H_P:
Question & Passage Interaction
建立问题和段落之间的关系表示模型是阅读理解的关键一步。在这里,我们采用类似于(Lee et al., 2016)的注意机制来生成与问题相关的段落表示H_P。
这个公式就是计算问题和文章句子级别的attention,使用问题去表示文章,然后生成新的文章表示,然后将两个表示做连接,经过另外一个双向的LSTM获得文章的最终表示G_p:
Candidate Scoring 两个线性变换来计算答案开始和结束的得分
也就是将最终的表示直接映射为一维向量,没有做softmax啥的
接下来预测每一篇文章的范围作为候选答案,根据其开始和结束位置,构成候选答案集合
在这个定义中,所有有效答案候选项的概率已经标准化。
笔记:
首先从每篇文章中抽取候选答案集合,注意是每篇文章抽取top k个疑似答案的集合,然后将问题和文章做embedding之后过一个双向LSTM获得文章和问题的表示,然后使用(Lee et al., 2016)的方法生成文章和问题的attention vector 然后使用问题表示文章获得文章的另一个表示H一撇~将文章的表示和文章对问题的表示做结合过一个双向LSTM或者文章的最终表示GP,这个是单篇文章的最终表示,然后通过两个1*len(GP)的矩阵w_b,w_e,预测每一个位置是开始和结束的得分,然后进行归一化,或者最终的候选答案集合C。
3.2 Answer Selection
作为框架的第二部分,答案选择模型通过计算p(C|Q,P,C)找到最可能的答案,其中P是文章集,C是候选集,对于每个候选c,模型体系结构如图3所示。
值得注意的是,选择模型使用候选集合C作为附加信息。对于选择最佳答案很有用。
为了便于理解,我们简要描述了选择阶段。从一个文章中提取信息后,不同文章的候选片段可以相互利用之间的信息。有了这些全球信息,本文将重新阅读,以进一步证实文章的正确性。下面是关于选择模型的详细信息。
Question Representation
问题是找到正确答案的基础。用于抽取答案的模型一样的,首先将问题embedding。然后我们使用双向LSTM获得问题的表示:
在所有位置上执行一个max-pooling操作以得到压缩的向量表示:
Passage Representation
假设候选信息C是从文章P中提取出来的,为了得到C的更多信息,我们首先建立文章P的表示。P中的每一个单词都使用了三种特征:
- 单词嵌入:每个单词用单词向量表达其基本特征。
- 常见单词:当单词出现在问题中时,特性值为1,否则为0。
- 问题独立表示:rq。
有了这些特性,Q中的信息和P中的信息均做了考虑。通过把它们串联起来,我们得到r_t_p对应于文章P中的每个位置t。然后和另一个双向LSTM,我们融合这些特征形成上下文表示:
Candidate Representation
候选答案提供更重要的信息,用来提取选择。因此,对于每个候选答案,我们首先根据其在文章中的位置构建其独立的表征,然后通过其他相关候选人的组合构建融合表征的候选人。
考虑到文章P中的候选C,我们从文章P中提取候选段落其对应的范围,作为其上下文编码,记作SC。通过其起始位置和结束位置计算其向量表示:
为了给所有候选答案之间关系进行建模,我们通过注意机制计算候选答案与其他候选答案的相关性:
通过这种方式,我们形成一个关联矩阵V,M是候选答案的总数。在关联矩阵中,对于候选答案C,我们通过softmax操作对其进行规范化,强调了关联的影响
为了考虑其他候选答案的影响,根据上述规范化交互生成一个融合表示的候选对象:
在这个公式中,所有其他候选答案通过与C的相关性计算形成了最终的融合表示,因此从不同的段落中收集信息。在我们的实验中,这种信息融合是提高性能的关键。
Passage Advanced Representation
随着候选答案C的信息更加集中,我们可以通过重读相应的段落P来更好地确认其正确性。具体来说,我们在P中的每个位置t都配备了以下功能:
- 篇章语境表征:前文篇章语境表征。
- 与候选答案相关的文章表示:将等式4中的H_Q替换为S_C,将H_P替换为S_P,来对候选答案与文章之间的关联关系进行建模。
- 文章候选距离特征:到候选答案C的相对距离可以作为每个位置重要性的参考。
- 候选答案特征:使用r_C代替候选答案C、
- 候选答案融合表示:使用rc一撇表示当前候选答案与所有答案的关系。
有了这些特征,我们就可以从问题、段落和所有的候选答案中获取信息。通过把它们串联起来,我们得到了每个位置的u_p。将这些特性通过双向LSTM计算,我们得到:
最后,对F_P的每个维度进行最大池化,得到一个压缩的向量表示,其中包含一个候选中的所有相关信息:
答案最终得分是通过线性变换计算出来的,然后与所有候选答案进行规范化:
Joint Training with RL
在我们的公式中,答案候选集在很大程度上影响了答案选择的结果。然而,由于训练数据中只提供了标准答案,因此不清楚哪些候选答案需要进一步考虑。
为了解决上述问题,我们将候选答案范围提取作为一个潜在变量,通过强化学习联合训练提取模型和选择模型。形式上,在提取和选择阶段,建模两种操作。提取模型的作用是从不同的候选集合中进行选择,由式1表示。选择模型的作用是从所有提取的候选对象中进行选择,由式17表示。我们的目标是选择最终的答案,从而获得更高的回报。受到Wang等人(2018a)的启发,我们定义了一个候选人的奖励,以反映其与标准答案的一致性:
在f1(C,A)是测量两个序列间单词级F1得分的函数。结合这种奖励可以减轻传统的极大似然估计所设定的过于严格的要求,同时也与我们实验中的评价方法保持一致。学习目标是最大化期望的奖励建模的框架,θ代表所有涉及的参数。
依照强化学习的算法,我们使用候选集的估计函数近似上面的期望值,C∼P(C|Q;P),结果如下:
Experiments
我们用300维Glove向量来初始化单词嵌入。所有双向LSTM,LSTM结构为1层和100个隐藏单元。所有的线性变换都以100的大小作为输出维数。词共现特征和候选相关距离特征分别嵌入维数为4和50的向量。默认情况下,我们将式1中的K设为2,即每一段根据提取模型生成两个候选项。
为了便于训练,我们首先通过最大似然估计初始化我们的模型,并使用RL对其进行优化。当涉及到RL过程时,通常采用类似 (Ranzato et al., 2015; Li et al., 2016a; Hu et al., 2018)的训练策略。为了对提取模型进行预训练,我们只使用包含真是答案的段落作为训练数据。以方程7的对数似然为训练目标,对每道题和每道对进行训练。在对提取模型进行预训练后,我们使用它从每一篇文章中产生两个得分最高的候选答案,形成训练数据,对我们的选择模型进行预训练,并将公式17的似然估计作为我们的第二个目标函数。在预训练中,提取模型的批量大小为30,选择模型为20,RMSProp(Tieleman and Hinton, 2012)初始学习率为2e-3。在对RL进行微调时,我们使用的batch大小为5,RMSProp初始学习率为1e-4。此外,我们在每个培训过程中使用0.1的的dropout。
Experimental Results
Conclusion
本文将RC问题表述为两阶段过程,首先通过提取模型生成候选对象,然后结合所有候选对象的信息选择最终答案。此外,我们将候选提取作为一个潜在变量,并与RL共同训练这两个阶段。公共开放域RC数据集Quasar- t和SearchQA表明了引入选择模型的必要性和建模时融合候选信息的有效性。此外,我们的联合培训战略导致了绩效的显著提高