论文导读 | 基于查询图生成的复杂知识图谱问答

复杂问题往往具有在知识图谱上的多跳,聚合,比较,判断等多种特点中的一个甚至多个。对于这些自然语言问题,基于知识库的复杂问答系统可以给出传统的搜索引擎等方式无法给出的答案。该方面研究可以被划分为三大类:基于模板的方法、基于语义解析的方法以及端到端的方法。

本文将着重介绍基于语义解析的方法。该类方法旨在将自然语言问题解析为逻辑形式查询,需要进行管道建设(包括词汇映射、逻辑语言构建、图谱查询等步骤),具有覆盖率高、准确率高的优点,但效果也会受到复杂管道的误差累积限制,面临的主要挑战有语言模糊性、搜索空间大、组合复杂度高等。下文将介绍三篇相关工作,试图通过解析问句并生成正确的查询图去解决这些问题。


1) STAGG(ACL 2015 outstanding paper)

查询图由四种类型的节点组成:固定实体(圆角矩形),存在变量(圆),λ变量(唯一,未知变量,阴影圆)以及聚合函数(菱形)。其中,查询图的“根”被定义为主题实体,其到未知变量的路径为核心推理链。

其基本思想为:先链接到主题实体,再生成核心推理链,之后加入约束,最后对候选查询图进行排序。主题实体链接通过构建词汇表以及词频统计完成,保留链接分数前十的候选实体。第二步从主题实体出发,通过图谱搜索找到所有可能的谓词序列。这里为了限制搜索空间,将序列长度限制在1或2(如果存在CVT节点)。为了对谓词序列与问题的匹配度进行打分与排序,作者使用单词打散技术与CNN,将谓词序列与问句分别以字符级别编码为一个固定唯独的向量,便于使用余弦距离等相似度度量方法。

对于约束条件,使用实体链接与关键词匹配找到候选约束,并通过对推理链邻居进行枚举与匹配的方法将其加入查询图。最后根据手动设计的特征对查询图进行排序,包括图的结构特征与语义链接分数等。

该工作提出了一个分阶段查询图生成框架,将现有的各个组件整合为一个强大的模型,为后续的KBQA发展奠定了基础。


2) QGG(ACL 2020)

该工作在第一篇工作的基础上做了改进,引入了更灵活的生成方案与基于预训练语言模型的排序方法,提升了在复杂问题上的效果。对于多跳问题,如何限制查询图生成的搜索空间就变得十分关键。为了真正扩展查询图的复杂度,作者提出将排序融入到生成过程中,在中间步骤就提前进行剪枝操作、加入约束条件,即交替进行扩展查询图与排序查询图的操作,直至分数不再提升。

扩展查询图的操作有extend、connect与aggregate,分别代表加入新关系、加入固定实体、加入聚合函数。每一步操作都只对推理链的尾端进行拓展,不失一般性的同时减少了动作空间,其具体做法同样是基于搜索与匹配。

每次扩展后,需要进行一次排序,这里作者使用一个单层神经网络实现。每个查询图有一个七维特征向量,其中六维与第一篇工作类似,不同之处在于引入了基于 BERT 的语义匹配分数作为特征之一。

可以看到,其实验效果较之前工作有较为明显的提升。


3) AQGnet(IJCAI 2020)

不同于前两篇工作,该文章认为查询图的结构噪音会对结果产生重要影响,所以需要先找出正确的查询图结构,再生成完整的查询图,从而提升正确率的同时限制了搜索空间,保证了效率。

作者定义了抽象查询图(Abstract Query Graph,AQG),将顶点和边分别进行归类,将查询图用类别替换得到AQG,归类方法如下。

值得一提的是,在生成AQG的过程中,作者没有使用结构模板或是预定义的转换规则,而是通过图生成(graph generation)的方法实现。

具体而言,作者使用encoder-decoder框架,模型由四个模块组成:问题编码BiLSTM、图编码Graph Transformer、解码器BiLSTM 、执行器pointer network。动作序列为确定的,即加点、选点、连边的循环进行,每一步都恰好需要生成某一类信息。经过每一次长度为3的动作序列迭代,需要对查询图进行有效性检,即是否能够匹配到图谱中的子图。

得到查询图结构后,需要将类别信息替换为具体的实例,得到最终候选查询图。首先,观察到候选实例的个数,作者将除了variable之外的点,和除了relation之外的边,直接替换为候选实例,组合为不完整的候选查询图。其中,Entity的候选实例来自于实体链接。之后,执行查询图,得到relation边的候选实例,组合得到候选查询图。

使用已有模型对候选图进行排序,取分数最高的查询图,具体实验结果如下:

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值