一、概要
该文章发于ACL 2017,在Knowledge base-based question answering (KB-QA)上,作者针对于前人工作中存在没有充分考虑候选答案的相关信息来训练question representation的问题,提出了一个使用Cross-Attention机制的神经网络模型来针对于候选答案的不同方面信息来训练模型;并且训练知识库的全局信息学习,在一定程度上减轻的the out of vocabulary (OOV)问题,最终在数据集 WEBQUES- TIONS上取得不错的效果。
二、模型方法
2.1 模型简介
KB-QA的目标是给出一个用自然语言表达的问题,返回在实体集合A作为问题的答案。本文的模型如下图所示,首先使用Freebase API识别出问题中的实体,在知识库中找到候选答案,然后使用Attention机制的神经网络针对候选答案的answer entity、answer relation、answer type、以及answer context四个方面分别训练对应的question representation和及其representation,最后使用相似度得分来选出最终的答案。本文的方法与Li Dong等人提出的方法非常类似,具体可看:【论文笔记】Question Answering over Freebase with Multi-Column Convolutional Neural Networks,但其实大有不同,比如/business/board member 和/location/country 都是表示答案类型,但是因为它们的Attention不同,最后得到的question representation也会不同。
2.2 Question Representation
首先,我们需要获取到问题中每个词的representation,假设存在问题 q=(x1,x2,...,xn) , xi 表示问题中的第i个单词,如下图所示,我们通过look up在 Ew∈Rd×vw 中获得每个单词的embeddings, Ew∈Rd×vw 是随机初始化的矩阵,并在模型虚拟立案过程中训练,d表示单词representation的维度, vw 表示所有问题单词集合的元素的个数,然后将这些词向量传入LSTM中,LSTM模型已经被证明在许多NLP问题上表现得非常好,同时为了考虑到每个词的前后词汇的信息,这里使用了双向LSTM,LSTM的隐藏单元输出维度为d/2,最后将双向LSTM的输出连接起来,即得到维度为d的向量。
2.3 Answer aspect representation
在答案方面,直接通过KB embedding 矩阵 Ek∈Rd×vk 获得上面提到四个方面的embedding,其中 vw 表示KB中词表的大小, Ek 也随着模型训练而不断学习优化,我们将answer entity , answer relation , answer type,以及answer context分别表示为 ae、ar、at、ac ,其对应的embedding分别表示为 ee、er、et、ec ,值得注意的是answer context 来自于知识库中的多个方面,可以表示为