[论文速览] Dataset and Neural Recurrent Sequence Labeling Model for Open-Domain Factoid Question Answeri

开放域QA的数据集和神经递归序列标记模型,2016 ,https://arxiv.org/abs/1607.06275

abstract

近年来,基于神经网络的问答系统(QA)取得了令人瞩目的成果,但缺乏大规模的实词问答数据集仍然是开发和评价神经问答系统的一个挑战。为了解决这个问题,我们提出了一个大规模的人类注释的真实世界QA数据集WebQA,它包含42k个问题和556k个证据。由于现有的神经问答方法将问答问题归结为序列生成或分类/排序问题,它们面临着代价高昂的softmax计算、未知答案处理或分离候选答案生成组件的挑战。在这项工作中,我们将神经问答问题归结为一个序列标记问题,并提出了一个端到端序列标记模型,克服了上述所有挑战。在WebQA上的实验结果表明,在基于单词的输入下,该模型的F1分数为74.69%,而在更具挑战性的基于字符的输入下,性能仅下降了3.72个F1点。

Introduction

基于神经网络的问答系统是朝着构建通用对话代理的长期人工智能目标发展的一个积极的研究方向。与传统的方法不同,神经网络不依赖于特征工程,并且具备(至少接近)端到端的可训练性。它大大降低了对领域特定知识的需求,使领域适应更加容易。解决QA问题需要一些基本的能力,包括推理、记忆等。为了提高这些能力,人们提出了各种神经方法,包括神经张量网络(Socher et al.,2013)、递归网络(Iyyer et al.,2014)、卷积神经网络(Yih et al.,2014;Dong et al.,2015;Yin et al。,2015)、注意模型(Hermann et al.,2015;Yin et al.,2015;Santos et al.,2016)和记忆模型(Graves et al.,2014;Weston et al.,2015;Kumar et al.,2016;Bordes et al.,2015;Sukhbaatar et al.,2015)等,这些方法在各种数据集上都取得了很好的效果,显示了基于神经网络问答的巨大潜力。然而,仍然存在两大挑战:

真实世界数据的系统开发和/或评估:尽管近年来提出了一些高质量和设计良好的QA数据集,但是由于数据的大小和它们的创建方式,在实际环境下使用它们来开发和/或评估QA系统仍然存在问题。例如,bAbI(Weston et al.,2016)和30M因子化问答语料库(Serban et al.,2016)是人工合成的;TREC数据集(Harman and Voorhees,2006)、Free917(Cai and Yates,2013)和WebQuestions(Berant et al.,2013)是人工生成的,但只有几千个问题;SimpleQuestions(Bordes等人。,2015年)以及CNN和每日邮报新闻数据集(Hermann等人,2015年)规模巨大,但在受控条件下生成。因此,需要一个新的大规模的真实世界QA数据集

除序列生成和分类外的一种新的答案生成设计选择/排名:一般来说,现有的神经问答系统中产生答案的方法大致可分为序列生成型和分类/排序型。前者逐字生成答案,由于它通常涉及大量词汇量的softmax计算,计算成本非常高,而且很难用词汇表外的词来生成答案。后者通过对预先定义的一组答案进行分类来生成答案,或根据模型分数对给定候选人进行排名。虽然它的计算量一般比前者低,但它要么难以处理看不见的答案,要么需要一个额外的候选生成组件,这对于端到端的训练来说是很困难的。最重要的是,我们需要一种新的设计选择来生成答案,它既能计算有效,又能处理看不见的单词/答案。

在这项工作中,我们通过一个新的数据集和一个新的神经问答模型来解决上述两个挑战。我们的贡献有两方面:

  • 我们提出了一个新的大规模真实问答数据集WebQA,它包含42k个问题和566k个证据,其中证据是一段文本,其中包含回答问题的相关信息。一方面,我们的数据集比现有的实际质量保证数据集(Harman和Voorhees,2006;Cai和Yates,2013;Berant等人,2013)大一个数量级,而这些数据集通常不足以训练端到端的质量保证系统。另一方面,我们数据集中的所有问题都是由日常生活中的真实世界用户提出的,这比在受控条件下生成的问题更接近真实世界的设置(Bordes et al.,2015;Hermann et al.,2015)。此外,由于我们还为每个问题提供了多个人工标注的证据,该数据集还可用于证据排序和答案句选择等研究。
  • 我们将端到端序列标记技术引入到神经问答中,作为答案产生的一种新的设计选择。模仿人类如何使用搜索引擎找到答案,我们使用条件随机场(CRF)(Lafferty et al.,2001)从检索到的证据中标记问题的答案。我们通过与CRF联合训练的神经模型计算特征来避免特征工程。由于我们的模型不依赖于预先定义的词汇表或候选词,它可以很容易地处理看不见的单词/答案,并且避免了昂贵的softmax计算。
开放域QA作为序列标签

在这项工作中,我们将重点放在开放域factoid QA上。
以图1为例,我们将问题形式化如下:给定每个问题Q,我们有一个或多个证据E,任务是生成答案A,其中证据是任何长度的文本,其中包含回答问题的相关信息。这种形式化的优点是可以从web或非结构化的知识库中检索证据,从而大大提高了系统的覆盖率。受(Yao等人,2013)的启发,我们将端到端序列标记作为神经问答中答案生成的一种新的设计选择。给出一个问题和一个证据,我们使用CRF为证据中的每个单词分配一个标签,以表明该单词是在答案的开头(B)、内部(I)还是外部(O)。我们的工作与(Yao et al.,2013)的关键区别在于(Yao et al.,2013)在特征工程方面需要做大量的工作,而特征工程进一步依赖于POS/NER标记、依赖解析、问题类型分析等,而我们避免了特征工程,只使用一个单一的模型来解决问题。此外,与序列生成和分类排序方法相比,该方法避免了昂贵的softmax计算,并且能够以一种原则性的方式自然地处理看不见的答案/单词。[论文速览] Dataset and Neural Recurrent Sequence Labeling Model for Open-Domain Factoid Question Answeri
形式上,我们将QA形式化为一个序列标记问题:假设我们有一个大小为|V|的词汇表V,给定问题xq=(x1q,x2q,,xNq)\mathbf{x}^{\mathbf{q}}=\left(x_{1}^{q}, x_{2}^{q}, \cdots, x_{N}^{q}\right) 和证据 xe=(x1e,x2e,,xMe),\mathbf{x}^{\mathbf{e}}= \left(x_{1}^{e}, x_{2}^{e}, \cdots, x_{M}^{e}\right),其中xiqx_{i}^{q}xjex_{j}^{e}是|V|维的独热向量,N和M是问题和证据中的字数。问题是寻找在参数θ下使条件概率最大的标记序列
y^=argmaxypθ(yxq,xe)\hat{\mathbf{y}}=\underset{\mathbf{y}}{\arg \max } p_{\theta}\left(\mathbf{y} \mid \mathbf{x}^{\mathbf{q}}, \mathbf{x}^{\mathbf{e}}\right)
本文利用LSTMs和CRF组成的神经网络对上式进行建模。

递归序列标记模型

[论文速览] Dataset and Neural Recurrent Sequence Labeling Model for Open-Domain Factoid Question Answeri
图2:QA的神经递归序列标记模型。该模型由三个部分组成:“问题LSTM”用于计算问题表征(rqr_{q}),“证据LSTM”用于分析证据,以及“CRF”用于生成标签序列,该序列指示证据中的每个词是在答案的开头(B)、内部(I)还是外部(O)。证据中的每个词也有两个0-1特征。

图2显示了模型的结构。该模型由三个部分组成:(1)用于计算问题表示的问题LSTM;(2)用于证据分析的证据LSTM;(3)用于序列标记的CRF层。问题LSTM以单层LSTM的形式配置单时间注意,将问题作为输入,生成问题表示rqr_{q}。三层证据LSTMs以证据、问题表征rqr_{q}和可选特征为输入,为CRF层生成“特征”。CRF层以“features”作为输入并生成标签序列。

Long Short-Term Memory (LSTM),我们将 (s,y)=\left(s^{\prime}, y^{\prime}\right)= LSTM(x,s,y)L S T M(x, s, y) 定义为一个映射函数,映射其input xx, previous state ss and output yy to current state ss^{\prime} and output y:y^{\prime}:

i=σ(Wxix+Wyiy+Wsis+bi)f=σ(Wxfx+Wyfy+Wsfs+bf)s=fs+iσ(Wxsx+Wysy+bs)o=σ(Wxox+Wyoy+Wsos+bo)y=otanh(s)\begin{aligned} i &=\sigma\left(W_{x i} x+W_{y i} y+W_{s i} s+b_{i}\right) \\ f &=\sigma\left(W_{x f} x+W_{y f} y+W_{s f} s+b_{f}\right) \\ s^{\prime} &=f s+i \sigma\left(W_{x s} x+W_{y s} y+b_{s}\right) \\ o &=\sigma\left(W_{x o} x+W_{y o} y+W_{s o} s^{\prime}+b_{o}\right) \\ y^{\prime} &=o \tanh \left(s^{\prime}\right) \end{aligned}

其中 WRH×HW_{*} \in \mathbb{R}^{H \times H} 为参数矩阵, bb_{*} \in RH\mathbb{R}^{H} are biases, HH is LSTM layer width, σ\sigma is the sigmoid function, i,fi, f and oo 分别是输入门、遗忘门和输出门。

问题LSTM由单层lstm和单次注意模型组成。问题xq=(x1q,x2q,,xNq)\mathbf{x}^{\mathbf{q}}=\left(x_{1}^{q}, x_{2}^{q}, \cdots, x_{N}^{q}\right) 被输入LSTM,来产生一系列向量表示q1,q2,,qNq_{1}, q_{2}, \cdots, q_{N}
(siq,qi)=LSTM(Eˉxiq,si1q,qi1)\left(s_{i}^{q}, q_{i}\right)=L S T M\left(\bar{E} x_{i}^{q}, s_{i-1}^{q}, q_{i-1}\right)

其中 EˉRD×V\bar{E} \in \mathbb{R}^{D \times|V|}是 embedding matrix,DD 是word embedding dimension. weight αi\alpha_{i}是由单次注意力模型计算的

αi=softmax(vqTtanh(Waqi))\alpha_{i}=\operatorname{softmax}\left(v_{q}^{\mathrm{T}} \tanh \left(W_{a} q_{i}\right)\right)

where vqRDv_{q} \in \mathbb{R}^{D} and WaRD×DW_{a} \in \mathbb{R}^{D \times D}. 最后加权平均数 rqr_{q} of qiq_{i} 用作问题的表示

rq=iαiqir_{q}=\sum_{i} \alpha_{i} q_{i}

Evidence LSTM

三层证据LSTMs处理证据xe=(x1e,x2e,,xMe)\mathbf{x}^{\mathbf{e}}=\left(x_{1}^{e}, x_{2}^{e}, \cdots, x_{M}^{e}\right)以产生CRF层的“特征”。第一层LSTM以证据xex^ e、问题表示rqr_q和可选特征作为输入。我们发现以下两个简单的常用单词指示符特征是有效的:

  • 问题-证据共词特征(q-e.comm):对于证据中的每个词,当该词也出现在问题中时,特征值为1,否则为0。直觉是,出现在疑问句中的词语往往不是因素问题答案的一部分
  • 证据-证据共同词特征(e-e.comm):对于证据中的每个词,当该词出现在另一个证据中时,该特征值为1,否则为0。直觉是,两个或两个以上证据共同使用的词语更有可能是答案的一部分

虽然有悖常理,但我们发现了 non-binary ee.comm feature value并不适用。因为我们考虑的证据越多,单词越倾向于得到非零的特征值,并且特征的区分性越差。

第二个LSTM层堆叠在第一个LSTM层的顶部,但以相反的顺序处理其输出。第三LSTM层通过跨层链路堆叠在第一和第二LSTM层上,其输出作为CRF laye的特征。

形式上,计算定义如下

xe1=[Eˉxje;rq;Fˉ1gj1;Fˉ2gj2](sj1,ej1)=LSTM(xe1,sj11,ej11)(sj2,ej2)=LSTM(ej1,sj+12,ej+12)(sj3,ej3)=LSTM([ej1;ej2],sj13,ej13)\begin{aligned} x_{e 1} &=\left[\bar{E} x_{j}^{e} ; r_{q} ; \bar{F}_{1} g_{j}^{1} ; \bar{F}_{2} g_{j}^{2}\right] \\ \left(s_{j}^{1}, e_{j}^{1}\right) &=L S T M\left(x_{e 1}, s_{j-1}^{1}, e_{j-1}^{1}\right) \\ \left(s_{j}^{2}, e_{j}^{2}\right) &=L S T M\left(e_{j}^{1}, s_{j+1}^{2}, e_{j+1}^{2}\right) \\ \left(s_{j}^{3}, e_{j}^{3}\right) &=L S T M\left(\left[e_{j}^{1} ; e_{j}^{2}\right], s_{j-1}^{3}, e_{j-1}^{3}\right) \end{aligned}

where gj1g_{j}^{1} and gj2g_{j}^{2} are one-hot feature vectors, Fˉ1\bar{F}_{1} \in RD1×2\mathbb{R}^{D_{1} \times 2} and Fˉ2RD2×2\bar{F}_{2} \in \mathbb{R}^{D_{2} \times 2} are embeddings for the features, and D1D_{1} and D2D_{2} are the feature embedding dimensions. Note that we use the same word embedding matrix Eˉ\bar{E} as in question LSTM.

序列标签 Sequence Labeling

我们在证据LSTM之上使用CRF进行序列标记。在给定问题xqx^q和证据xex^e的情况下,计算标签序列y的概率

pθ(yxq,xe)exp(jμ[yj1,yj]+jej[yj])p_{\theta}\left(\mathbf{y} \mid \mathbf{x}^{\mathbf{q}}, \mathbf{x}^{\mathbf{e}}\right) \propto \exp \left(\sum_{j} \mu\left[y_{j-1}, y_{j}\right]+\sum_{j} e_{j}\left[y_{j}\right]\right)

where ej=Weej3,WeRL×D,Le_{j}=W_{e} e_{j}^{3}, W_{e} \in \mathbb{R}^{L \times D}, L is the number of label types, μ[i,j]\mu[i, j] is the transition weight from label ii to j,j, and ej[i]e_{j}[i] is the ii -th value of vector eje_{j}

Training

模型的目标函数为
Lθ(T)=ilog(pθ(y~ixiq,xie))+12λθ2L_{\theta}(T)=-\sum_{i} \log \left(p_{\theta}\left(\tilde{\mathbf{y}}_{i} \mid \mathbf{x}_{i}^{\mathbf{q}}, \mathbf{x}_{i}^{\mathbf{e}}\right)\right)+\frac{1}{2} \lambda\|\theta\|^{2}

where y~i\tilde{\mathbf{y}}_{i} is the golden label sequence, and T={(y~i,xiq,xie}T=\left\{\left(\tilde{\mathbf{y}}_{i}, \mathbf{x}_{i}^{\mathbf{q}}, \mathbf{x}_{i}^{\mathbf{e}}\right\}\right. is training set.

我们使用一个小批量随机梯度下降(SGD)(Lecun等人,1998)算法和rmsprop来最小化目标函数。初始学习率为0.001,批量为120,λ=0.016。我们还将dropout应用于所有LSTM层的输出。辍学率为0.05。所有这些超参数都是通过网格搜索经验确定的

WebQA Dataset

为了训练和评估开放领域的因子型问答系统,我们建立了一个新的中文问答数据集WebQA。数据集由(question,identions,answer)的元组组成,类似于图1中的示例。所有的问题、证据和答案都是从网上收集的。表1显示了数据集的一些统计信息。
[论文速览] Dataset and Neural Recurrent Sequence Labeling Model for Open-Domain Factoid Question Answeri

这些问题和答案主要是从大型社区问答网站Baidu-zhidao收集的,还有一小部分来自手工收集的web文档。因此,所有这些问题都是现实生活中的用户提出的,而不是在受控条件下提出的。所有问题都是单实体因素型,即(1)每个问题都是一个因素问题,(2)其答案只涉及一个实体(但可能有多个词)。图1中的问题是一个积极的例子,而问题“谁是阿尔伯特·埃尼斯坦的孩子?”是一个反例,因为答案涉及三个人。所有问答对的类型和正确性至少由两个注释器进行验证。

所有的证据都是通过一个搜索引擎以问题作为查询从互联网上检索出来的。我们下载前3个结果页返回的网页,将所有不超过5个句子且至少包含一个疑问词的文本片段作为候选证据。由于证据检索超出了这项工作的范围,我们只需使用TF-IDF值对这些候选对象进行重新排序。

对于训练集中的每个问题,我们提供前10个要注释的证据(表1中的“注释证据”)。如果一个问题可以在没有任何其他先验知识的情况下通过阅读证据来回答,那么这个证据就被注释为肯定的,否则就是否定的。只有注释至少经过两个注释者同意的证据才会被保留。我们还提供了微不足道的否定证据(表1中的“检索到的证据”),即不包含黄金标准答案的证据。

对于验证集和测试集中的每个问题,我们提供了一个主要的正面证据,也许还有一个额外的正面证据来计算特征。它们都有注释。原始检索到的证据也用于评估目的(表1中的“检索到的证据”)。
数据集将在项目页面上发布 http://idl.baidu.com/WebQA.html。

实验结果

[论文速览] Dataset and Neural Recurrent Sequence Labeling Model for Open-Domain Factoid Question Answeri