论文浅尝 | Question Answering over Freebase

2018 年 1 月 9 日 开放知识图谱 花云程

Dong,L., Wei, F., Zhou, M., & Xu, K. (2015). Question Answering over Freebasewith Multi-Column Convolutional Neural Networks. Meeting of the Association forComputational Linguistics and the, International Joint Conference on NaturalLanguage Processing (pp.260-269).


动机


基于知识图谱的问答系统(KBQA),旨在利用知识图谱覆盖领域内的三元组,来回答一些事实性问题。处理 KBQA 问题,其关键在于两个方面:实体识别/链接,关系映射。其中,最重要的工作是关系映射,即将问题中的关系模式(relation pattern),或称谓词指称,映射为知识图谱中连接实体的关系。为了解决这个问题,传统的方法为使用模板。对于训练语料中覆盖的模板,固然可以精确地从模板映射到某个关系。但是模板覆盖的范围有限,而且需要大量的人为标注和模板统计工作,会耗费大量的人力。对于模板没有覆盖的问题,就有很大的概率无法正确回答。为了解决这个问题,本文引入了卷积神经网络,旨在建立一个端到端的问答系统,将自然语言问句与知识图谱映射到同一个向量空间,从语义上理解问题,而非通过规则的堆砌来解决 KBQA 问题。

本文为了引入更丰富的信息,从三个角度:答案路径、答案上下文、答案类型对候选实体进行理解,并尽量从问题中找到与候选实体近似的语义,从而推测出正确的答案实体。

 

贡献


文章的贡献有:

1)设计了基于 CNN 的端到端语义模型,解决 KBQA 问题;

2)同时训练自然语言问句词向量与知识图谱三元组,将问题与知识图谱映射到同一个语义空间;

3)从三个方面考察候选实体与候选实体的上下文,而不是从问句去进行谓词映射,从一个新颖的角度处理 KBQA 问题。

4)实验效果表面,本文提出的方法是 state-of-the-art 的。

 

方法


本文从三个角度来理解问题,试图找到最可能的候选答案。该文主要聚焦于三个方面:答案路径(answer path)、答案上下文(answer context)和答案类型(answer type)来分析问题和答案的相似度。每一个方面都对应一个训练好的卷积网络,以此来回答问题。这三个 CNN 被称为多列卷积神经网络(Multi-Column convolutional neural networkMCCNNs)。

该模型的主要设计框架如下:首先利用命名实体识别、实体链接等技术,从自然语言问句中找到KB中对应的实体,然后将该实体连接的每个实体,都视为一个候选答案实体。找到候选答案实体后,对候选答案实体从答案路径、答案上下文、答案类型进行向量的映射。具体映射方式为将相关实体或属性对应的向量进行累加(如构成答案路径的属性边的向量累加),从而形成三个向量:g_1(a),g_2(a), g_3(a)。同时,利用三个 CNN 分别对问句从三个方面(答案路径、答案上下文、答案类型)进行卷积,得到三个向量:f_1(a),f_2(a), f_3(a)。有这些向量,最终可以对问题-候选答案进行评分,评分公式为:


根据计算结果得到最高分的就是问题答案。

 

下面对方法细节进行阐述。

首先,是找到候选答案实体。模型中,识别出来的实体,在一定范围内相连的其他实体(经过一跳或两跳),都视为候选实体,形成一个候选实体集合 c_q

其次,是对自然语言问句的卷积计算。如图1所示,每一个 CNN,首先对问题中所有的词赋予一个预训练好的初始词向量,并根据上下文窗口(窗口大小为5)进行拼接;再经过卷积计算、最大池化得到定维的向量。最后将这三个向量与候选问题映射的三个向量进行加权求和,得到最后的问题-候选答案打分。三个 CNN 的输入都是单词向量,而不同的是每个网络的参数不同,得到的向量也不同。此外,需要注意的是,在 MCCNN 中,词向量也是待学习的参数,也就是说,每次的 loss 反向传播都会更新词向量。

1 MCCNNs框架图


再次,是对候选答案的向量映射。模型将 KB 中所有的实体、关系和答案类型都映射为事先初始化的向量,并组成一个知识图谱向量矩阵,每个实体和关系都可以从矩阵中找到对应向量,而这个矩阵的参数也在训练中被更新。如同词向量一样,训练完成后,知识图谱的实体与关系映射的向量也得到相应的更新。

对于答案路径的映射,首先是找到路径。在模型中,问题中的实体与答案实体之间相连的关系(一跳或两跳),即为路径。如图 1 所示,实体“Avatar”与答案实体“2009-12-17”之间由“release_date_s”“cate_release_date”这两个关系相连,这两个关系就组成路径。路径对向量的映射,就是在知识图谱向量矩阵中找到关系对应的向量,并求平均值。

对于答案上下文的映射,就是在与问题路径相关的一跳实体和关系,都视为答案上下文。如图1中所示,“release_date_s”“m.0gdp17z”“cate_release_date”形成了一个答案路径,那么与这三个元素相连的单跳实体或关系就是上下文。上下文对向量的映射,也是找到这些元素对应的向量求平均值。

对于答案类型的映射,即对于候选答案实体,确定其答案类型,并从知识图谱向量矩阵中找到映射的向量。比如图1中,“2009-12-17”的答案类型为“datetime”,而“JamesCameron”的答案类型为“person”“film.producer”。映射方法也是求平均值。

由此,问题的三个向量和候选答案的三个向量,就已经得到,进行点积计算并求和后,就得到最终评分。

最后进行训练。损失函数为


其中mmarginS(q,a) 为问题-正确答案对的相似度,S(q,a`) 为问题-随机答案对的相似度。随机答案是从候选答案集 c_q 中随机抽取的答案,视为负例。目标函数是使该损失函数最小:

|A_q|是一个问题的正确答案数量,R_q 是随机答案集合。模型使用反向传播来训练,并使AdaGrad 来解决非凸函数问题,并且使用了 max-norm regularization技术。此外,由于 WIKIANSWERS 有平行问题,所以采用平行问题来额外训练模型,即平行问题(paraphrased questions)应该经过卷积后有类似的向量。所以将平行问题作为正例,随机抽取的非平行问题作为负例,设置 margin 损失函数,并最小化损失函数为目标进行模型训练,而训练过程如前所述。


实验


从图 2 所示的表格可以见到,当前系统的方法,比使用传统 semantic parser(即模板)和使用粗放词向量相加来表示问题的 Bordes 方法,有了显著提高。

2 问答系统实验效果比较


另外,从图3可见,从多列模型中,去除 path 网络(w/o path),实验效果下降最多,可知道 path 对问题理解最为重要;而如果只使用一种方法来理解问题(w/o multi-column),比从多个维度理解问题,效果差很多;另外,平行问题(w/oparaphrase)的训练也提高了实验效果。


3 实验方法效果比较

除此之外,这篇文章中还做了两个有趣的实验。

其一是寻找句子中的显著词。所谓显著词,就是如果将该词用一个停用词(of/a/is/to)来替代,句子的语义变化最大(卷积出来的向量与原始句子的向量做欧氏距离计算,值为最大),那么这个词就是显著词。

4 显著词实验


如上图 4 所示,柱状条代表该词的显著程度(即前述计算出来的欧氏距离)。可见 wh-疑问词(如whatwhowhere)、与疑问词相连的名词或动词(如typespeak)是最为显著的,也就是说,这些词最能体现出问句的语义,是重要的关键词。

其二是通过卷积出来的向量,从三个维度去观察,是否真的相似,即通过三个维度考察的句子,是否真的有聚类效应。

5 句子聚类实验


如上图 5 所示,每一列都代表,通过答案路径、答案类型、答案上下文的映射向量,所找到的最相近向量所对应的句子。从这三列可以看到,基本都能将最相近的答案路径、答案类型、答案上下文的问句找到,即可以通过模型训练出来的问句卷积神经网络,找到语义最相似的句子。

这篇文章,作者从三个角度去理解问题和候选答案,并找到最佳预测答案,这样可以更加精细地理解问题语义,准确地找到答案,并且可以附加训练出词向量词典和知识图谱向量词典。当然,如果实体链接没有正确找到实体,或者遇到时间判断的问题(谁是**的第二任妻子),或者问题问得很模糊(**是谁,是问这个人的身份,还是这个人的职位?),模型处理效果都不佳,这些都需要以后去解决。此外,大量的参数(词向量、知识图谱、三个卷积神经网络)都是训练生成,那么训练的调参就非常重要,找到最佳参数相对更加困难,训练时间也更长,这些都是有可能妨碍模型效果的问题,需要在实践中积累经验。

 

论文笔记整理:花云程,东南大学博士,研究方向为自然语言处理、深度学习、问答系统。



OpenKG.CN


中文开放知识图谱(简称OpenKG.CN)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。

转载须知:转载需注明来源“OpenKG.CN”、作者及原文链接。如需修改标题,请注明原标题。

点击阅读原文,进入 OpenKG 博客。

登录查看更多
18

相关内容

实体(entity)是有可区别性且独立存在的某种事物,但它不需要是物质上的存在。尤其是抽象和法律拟制也通常被视为实体。实体可被看成是一包含有子集的集合。在哲学里,这种集合被称为客体。实体可被使用来指涉某个可能是人、动物、植物或真菌等不会思考的生命、无生命物体或信念等的事物。在这一方面,实体可以被视为一全包的词语。有时,实体被当做本质的广义,不论即指的是否为物质上的存在,如时常会指涉到的无物质形式的实体-语言。更有甚者,实体有时亦指存在或本质本身。在法律上,实体是指能具有权利和义务的事物。这通常是指法人,但也包括自然人。
【斯坦福大学-论文】实体上下文关系路径的知识图谱补全
FlowQA: Grasping Flow in History for Conversational Machine Comprehension
专知会员服务
22+阅读 · 2019年10月18日
论文浅尝 | 基于知识库的自然语言理解 04#
开放知识图谱
14+阅读 · 2019年3月14日
论文浅尝 | Global Relation Embedding for Relation Extraction
开放知识图谱
12+阅读 · 2019年3月3日
论文浅尝 | 基于知识库的自然语言理解 01#
开放知识图谱
15+阅读 · 2019年2月22日
论文浅尝 | 近期论文精选
开放知识图谱
5+阅读 · 2018年7月8日
论文浅尝 | 基于知识图谱子图匹配以回答自然语言问题
开放知识图谱
25+阅读 · 2018年6月26日
论文浅尝 | 基于知识图谱的子图匹配回答自然语言问题
开放知识图谱
26+阅读 · 2018年5月17日
论文浅尝 | 基于知识图的问答变分推理
开放知识图谱
6+阅读 · 2018年5月6日
论文浅尝 | 利用 RNN 和 CNN 构建基于 FreeBase 的问答系统
开放知识图谱
11+阅读 · 2018年4月25日
论文浅尝 | 基于Freebase的问答研究
开放知识图谱
5+阅读 · 2018年3月26日
论文浅尝 | Improved Neural Relation Detection for KBQA
开放知识图谱
13+阅读 · 2018年1月21日
VIP会员
相关VIP内容
【斯坦福大学-论文】实体上下文关系路径的知识图谱补全
FlowQA: Grasping Flow in History for Conversational Machine Comprehension
专知会员服务
22+阅读 · 2019年10月18日
相关资讯
论文浅尝 | 基于知识库的自然语言理解 04#
开放知识图谱
14+阅读 · 2019年3月14日
论文浅尝 | Global Relation Embedding for Relation Extraction
开放知识图谱
12+阅读 · 2019年3月3日
论文浅尝 | 基于知识库的自然语言理解 01#
开放知识图谱
15+阅读 · 2019年2月22日
论文浅尝 | 近期论文精选
开放知识图谱
5+阅读 · 2018年7月8日
论文浅尝 | 基于知识图谱子图匹配以回答自然语言问题
开放知识图谱
25+阅读 · 2018年6月26日
论文浅尝 | 基于知识图谱的子图匹配回答自然语言问题
开放知识图谱
26+阅读 · 2018年5月17日
论文浅尝 | 基于知识图的问答变分推理
开放知识图谱
6+阅读 · 2018年5月6日
论文浅尝 | 利用 RNN 和 CNN 构建基于 FreeBase 的问答系统
开放知识图谱
11+阅读 · 2018年4月25日
论文浅尝 | 基于Freebase的问答研究
开放知识图谱
5+阅读 · 2018年3月26日
论文浅尝 | Improved Neural Relation Detection for KBQA
开放知识图谱
13+阅读 · 2018年1月21日
Top
微信扫码咨询专知VIP会员