论文浅尝 | 使用变分推理做KBQA

原创 2018年04月15日 00:00:00

640?wx_fmt=png&wxfrom=5&wx_lazy=1

Yuyu Zhang, Hanjun Dai, Zornitsa Kozareva, Alexander J.Smola, and Le Song: Variational Reasoning for Question Answering with KnowledgeGraph. AAAI 2018

 

链接:https://arxiv.org/abs/1709.04071

 

本文提出了一个可端到端训练的 KBQA 框架,可以在模型内部完成实体链接,并且在找到用户 query 的 topic entity 后,可以通过变分推断完成多跳推理,找到答案。本文的框架将实体链接得到的实体 y 看做是隐变量,通过求解包含隐变量的极大似然函数得到模型参数。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

具体而言,第一步,给定用户 query,计算出知识库中每个实体可能是 topic entity 的概率。 做法是用一个神经网络得到 query 的向量表示,然后做 softmax 多分类即可。由于这里并没有使用传统的类似于字符串匹配的方式做实体链接,因此用户 query 的形式比较自由,可以使文本的,也可以是语音的。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

第二步,给定了问题和一个链接到的实体 y,要找到在 y 的邻域 (T 跳之内,T 是一个超参数,文中为3)内每个实体可能是 query 答案的概率。文中的做法是给从y到a的所有路径构成的子图 G_(y→a) 训练一个向量表示 g(G_(y→a)),那么如果给从y到其邻域内的每个实体的路径都训练了一个向量表示,就可以用如下方式计算出所有实体可能是答案的概率。

640?wx_fmt=png

如何计算 g(G_(y→a)) 是本文中体现出推理的地方。本文计算路径的向量表示采用了传播式的方法,即假设 b 是从 y 到 a 的路径上 a 的所有父节点的集合,那么计算 g(G_(y→a)),只需要利用到所有的 g(G_(y→b) ) 即可。

640?wx_fmt=png

以上虽然解决了极大似然函数 p_θ1(y|q_i) 中和 p_θ2(a_i |y,q_i) 的求解问题,但是如果要优化这个包含隐变量的极大似然函数,由于后验概率 p(y|q_i,a_i) 无法求解,因此无法直接使用EM算法。故本文采用变分推断的方法,由神经网络训练出另一个分布 Q_φ(y│q_i,a_i) 来近似代替。由于计算 Q_φ(y│q_i,a_i) 和计算p_θ2 (a_i |y,q_i) 的过程刚好相反,因此可以同样使用前面传播式的方法计算 g(G_(a→y)),只是方向相反。

本文框架的总体结构为:

640?wx_fmt=png

最后,本文采用了 REINFORCE 算法来求解参数,具体而言,是用变分推断近似替代后的新的损失函数为

640?wx_fmt=png

求梯度得到

640?wx_fmt=png

然后迭代至收敛即可。


实验结果:在本文新发布的 KBQA 数据集 Meta QA 上相比对照模型提升较为明显,尤其是要求多跳推理的问题。另外,在问题的形式是语音,机器翻译后的结果,以及训练时不给定标注好的 topic entity 的情况下, 都有较大的提升。

640?wx_fmt=png

640?wx_fmt=png


笔记整理:王梁,浙江大学硕士,研究方向为自然语言处理,知识图谱。




OpenKG.CN


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

640?wx_fmt=jpeg

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


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

lda的变分推理

上文, lda 原理及变形  ,我们提到  e-step 我们要用变分推理的方法求解如下的优化问题:                         所以,这里用了其他的方法来求解。     ...
  • nywsp
  • nywsp
  • 2016-01-29 15:35:48
  • 2319

变分推理

variational inference 泛函极值问题又称变分问题,寻求泛函极值的方法称为变分法「60]。图模型 变分推理是基于数学变分法的近似推理方法,其基本思想是根据凸对偶原理(...
  • LIQINGBHU
  • LIQINGBHU
  • 2016-03-08 22:23:25
  • 436

变分算法

注:本文中所有公式和思路来自于邹博先生的《机器学习升级版》,我只是为了加深记忆和理解写的本文。 本文介绍的变分算法是机器学习中的参数估计算法,跟数学中的变分法是有一些不一样的。在搜索引擎中搜索变分...
  • u012771351
  • u012771351
  • 2016-11-09 08:56:27
  • 1836

变分推断学习笔记(2)——一维高斯模型的例子

ref:http://www.crescentmoon.info/?p=745
  • AiTODD1
  • AiTODD1
  • 2014-11-13 20:58:44
  • 1187

变分推断

在机器学习中经常会遇到某个分布的期望的情况,简单的情况还好,但是一旦遇到难以计算或者估计的复杂分布,那么问题将变得难以处理。变分推断在机器学习上就是用来解决找到某种简单形式的分布来近似估计某个复杂分布...
  • github_36129812
  • github_36129812
  • 2016-09-13 14:30:44
  • 589

论文浅尝 | 变分知识图谱推理:在KG中引入变分推理框架

本文转载自公众号:机器之心。推理知识图谱中缺失的连接已经吸引了研究界的广泛关注。在本论文中,加州大学圣塔芭芭拉分校的王威廉等研究者在知识图谱推理中引入了变分推理框架,并将路径搜索和路径推理紧密结合从而...
  • TgqDT3gGaMdkHasLZv
  • TgqDT3gGaMdkHasLZv
  • 2018-04-10 00:00:00
  • 7

变分推断(Variational Inference)-mean field

变分推断的实质就是使用已知简单分布来逼近需要推断的复杂分布,并通过限制近似分布的类型,从而得到一种局部最优,但具有确定解的近似后验分布。...
  • step_forward_ML
  • step_forward_ML
  • 2017-09-24 16:00:34
  • 1096

变分推断(variational inference)

大家对贝叶斯公式应该都很熟悉 P(Z|X)=p(X,Z)∫zp(X,Z=z)dzP(Z|X)=p(X,Z)∫zp(X,Z=z)dzP(Z|X)=\frac{p(X,Z)}{\int_z p(X,Z=...
  • u012436149
  • u012436149
  • 2017-02-12 12:13:49
  • 5672

变分推断学习笔记

ref:http://www.crescentmoon.info/?p=709#more-709 问题描述 变分推断是一类用于贝叶斯估计和机器学习领域中近似计算复杂(intract...
  • AiTODD1
  • AiTODD1
  • 2014-11-13 20:57:45
  • 927

变分推断(variational inference)学习笔记(1)——概念介绍

ref:http://www.crescentmoon.info/?p=709#more-709 问题描述 变分推断是一类用于贝叶斯估计和机器学习领域中近似计算复杂(intractable...
  • AiTODD1
  • AiTODD1
  • 2014-11-13 21:04:31
  • 7215
收藏助手
不良信息举报
您举报文章:论文浅尝 | 使用变分推理做KBQA
举报原因:
原因补充:

(最多只允许输入30个字)