ConvKB

A Novel Embedding Model for Knowledge Base Completion Based on Convolutional Neural Network

2018-3-13 ConvKB

1 Introduction

知识图谱可以为knowledge base/knowledge graph

知识图谱在很多领域都有重要的作用,但是在open world assumion下,知识图谱本身是不完整的,不能包含所有实际存在的三元组。

在这种情况下,预测(h,r,t)是否valid就有意义了,这就是link prediction或者叫做knowledge completion。

之前有人提出过ConvE(2018),首个将CNN应用到knowledge completion中的model。

ConvKB就是在其基础上发展起来的。

CNN的意义:

CNN learns non-linear features to capture complex relationships with a remarkably less number of parameters compared to fully connected neural networks.

总结一下CNN相比fully connected neural network优势:

  • 更少的参数
  • 能够捕获复杂的,非线性的关系

2 Proposed ConvKB model

首先三元组组成矩阵 \[ A=[v_h,v_r,v_t]\in R^{k\times 3} \] 之后经过一个简单的CNN层, \[ v_i=g(w\cdot A_{i;}+b) \\ w\in R^{1\times k} \] 一个filter \(w\)得到一个\(k\times 1\)维的feature map

共有\(\Gamma\)个filter,通过concat得到\(R^{\Gamma k\times 1}\)维的向量,

最后与一个权值矩阵\(W\in R^{\Gamma k\times 1}\)相乘,得到最终的结果score。score function衡量不相似的程度,越小越相似。

训练时候的损失函数是log-likehood损失函数。

3 Experiments

实验数据集:

  • WN18RR
  • FB15k237

都是对于WN18和FB15k去除可逆关系之后的结果

sample corrupt triplets的时候采用了Bernoulli trick

embedding初始化使用TransE训练出来的结果

filter情况下的数据集进行训练