论文:Beta Embeddings for Multi-Hop Logical Reasoning in Knowledge Graphs

NIPS 2020的一篇论文,涉及知识嵌入方法和Multi-Hop QA,有完整代码

  • 作者:Hongyu Ren,Jure Leskovec
  • pdf:https://arxiv.org/pdf/2010.11465.pdf
  • github:https://github.com/snap-stanford/KGReasoning(包含三种模型,BetaEQuery2boxGQE

0. Abstract

为处理知识图谱存在的规模庞大和不完整问题,近期研究采用知识嵌入方法,将知识图谱实体嵌入到低维空间中,利用嵌入获取答案实体。当前研究条件下的知识嵌入存在的局限包括:

  • 无法处理所有任意一阶逻辑查询(FOL),特别是无法处理否定运算
  • 不能自然地模拟不确定性

文中提出的BetaE模型能处理所有一阶逻辑操作(与、或、非)。其核心思想是采用了带有界支持(bounded support)的概率分布,尤其是Beta概率分布,将问题及实体嵌入到概率分布中,从而模拟不确定性。逻辑操作在神经网络构造的概率嵌入空间中完成

文中的BetaE模型在三个大型不完整知识图谱上均实现了最好成绩,比之前不支持否定运算的模型提高了25.4%

1. Introduction

知识图谱中的推理涉及一阶逻辑查询first-order logic, FOL,包括:量化quantification,连接conjunction,析取disjunction,取反negation。相关例子如下图所示

当前的知识嵌入方法不支持取反negation操作,仅支持正一阶查询existential positive first-order, EPFO

本文贡献主要包括:

  • 概率建模方法,可以反映查询的不确定性
  • 通过基于β分布的神经网络模型,支持FOL
  • 可以模拟实际操作,如取两次反等于正
  • 支持任意FOL查询(后两条有点凑数)

2. Related Work

知识图谱嵌入中的不确定性

当前知识嵌入方法,如KG2ETransG,主要关注链路预测。本文作者认为这些方法不好应用在多跳推理任务中(实际上上一篇文章已经讲了,链路预测可以解决多跳推理问题)。本文的解决方案是,通过神经网络学习概率嵌入方法,实现对复杂查询问题的多跳推理

知识图谱多跳推理

相比于使用多跳规则或路径提高链路预测性能的方法,知识嵌入方法能够直接嵌入和回答复杂FOL查询,而不用对中间实体建模。这样提高了算法的可扩展性(不随知识图谱扩大而变慢)

3. Preliminaries

  • first-order queries
  • 计算图:一种异构树,叶节点表示锚节点anchor entity(?),根节点表示答案实体集合。对给定的FOL查询,通过跟踪计算图并执行逻辑算子,最后观察根节点中的实体集合获取答案。这种计算过程类似于遍历知识图谱。基本运算包括以下三种:关系投影、交、非(并可以被交和非的联合运算代替)