【读论文】Improving Multi-hop Question Answering over Knowledge Graphs using Knowledge Base Embeddings

系统简称:EmbedKGQA
发表会议:ACL 2020
研究领域:KBQA
作者团队:Indian Institute of Science

KBQA旨在通过KG回答自然语言问句。multi-hop KGQA需要在KG上的多条边之间进行推理,同时知识库上存在很多missing links,这些都给multi-hop KGQA带来了挑战。
本文尝试将KG embedding与multi-hop KGQA结合,实验表明EmbedKGQA是一种有效的multi-hop KGQA的方式。


如上图所示,当这里缺失了一条has_genre(Ganster No.1, Crime)边时,现有的KGQA系统就无法很好地回答了(因为通常他们限制3跳以内的实体)。

为了解决这种问题,作者提出了EmbedKGQA,利用KG embedding来回答多跳问题。(应该是首个将 KG embedding应用到multi-hop问题上的方法)

Overview

KG Embedding模块学习KG中所有的entity embedding,Question Embedding模块学习句子的embedding。 Answer selection 模块选择最终的答案。
通过这种方式,能够:

  1. 解决KG稀疏的问题(缺失边)
  2. 由于EmbedKGQA将所有的实体作为候选实体,因此不存在答案实体out-of-reach的问题

KG Embedding Module

这里采用了ComplEX的embedding。
Trouillon T, Welbl J, Riedel S, et al. Complex embeddings for simple link prediction[C]//International Conference on Machine Learning. PMLR, 2016: 2071-2080.
https://arxiv.org/abs/1606.06357

ComplEx是一种基于张量分解的embedding方法,将relation和entity嵌入到复数空间。
score function定义为:


Question Embedding Module

用RoBERTa做question embedding,将[CLS]过了一个4层的全连接层。打分函数和ComplEx的定义相同 (从topic entity出发,经过句子的embedding,得到target entity):



损失函数为预测的分数的sigmoid概率与实际标签的binary cross entropy

Answer Selection Module

很简单,选取打分最高的实体即可。


但是显然,去遍历所有的实体是不可接受的,因此需要进行搜索空间裁剪。这里采用了Relation matching进行空间裁剪。

定义关系和句子的相似度为:


其中 为relation 的embedding。

选取分数大于0.5的作为集合。

对每个候选实体,找到从头实体到的最短路径中的relation,记为集合。
定义relation score为:

最终,对于候选实体的打分修改为:

实验

数据集:

  • MetaQA
  • WebQuestionSP (这里为WebQuestionSP抽取了一个freebase子图,只包含问句集中出现的关系和topic entity及其两跳内的entity)

实验结果

QA实验:


missing link 实验:


neighbour based 过滤及relation matching model的重要性:


你可能感兴趣的:(【读论文】Improving Multi-hop Question Answering over Knowledge Graphs using Knowledge Base Embeddings)