论文阅读 ConvKB

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

基于卷积神经网络的知识库补全嵌入模型

发表于:NAACL-HLT 2018
摘要:本文提出了一种新的用于知识库完成的嵌入模型——ConvKB。我们的模型ConvKB通过使用卷积神经网络改进了最先进的模型,从而可以捕获实体和知识库中的关系之间的全局关系和过渡特征。在ConvKB中,每个三元组(头实体、关系、尾实体)表示为一个3列矩阵,其中每个列向量表示一个三元组元素。这个3列矩阵然后被送入卷积层,在那里多个过滤器操作的矩阵,以生成不同的特征图。然后这些特征映射被连接成一个表示输入三重的单一特征向量。通过点积将特征向量与权重向量相乘,返回一个分数。然后用这个分数来预测三重奏是否有效。实验表明,在两个基准数据集WN18RR和FB15k-237上,ConvKB比目前最先进的嵌入模型具有更好的链路预测性能。
最近,卷积神经网络(cnn),最初设计用于计算机视觉(LeCun et al.,1998),在自然语言处理中得到了显著的研究关注(Collobert et al.,2011;Kim,2014)。与完全连接的神经网络相比,CNN通过学习非线性特征来捕捉复杂的关系,其参数数量要少得多。受计算机视觉成功的启发,Dettmers等(2018)提出了第一个将CNN应用于知识库完成任务的模型ConvE。在ConvE中,只有vh和vr被重塑,然后连接成一个输入矩阵,并馈给卷积层。相同3×3形状的不同滤波器在输入矩阵上操作以输出特征映射张量。这些特征映射张量然后被矢量化,并通过线性变换映射成一个向量。然后用vt通过点积计算这个向量,以返回(h, r, t)的分数。参见表1中ConvE分数函数的正式定义。值得注意的是,ConvE关注的是每个vhorvr中不同维项之间的局部关系,即ConvE不观察嵌入三元(vh,vr,vt)中相同维项之间的全局关系,因此在基于过渡的模型中,ConvE忽略了过渡特性。这是对任务最有用的直觉之一。
在本文中,我们提出了一种新的利用CNN来完成知识库任务的嵌入模型——convkb。在ConvKB中,每个实体或关系都与一个唯一维度的嵌入相关联。设vh,vr, vt分别表示h,r, t的k维嵌入。对于每个三元组(h, r, t),相应的k维嵌入三元组(vh,vr,vt)被表示为k×3输入矩阵。该输入矩阵被输入到卷积层,在卷积层中使用相同1×3形状的不同滤波器来提取嵌入三元组中相同维度项之间的全局关系。也就是说,这些过滤器对输入矩阵的每一行重复操作,以产生不同的特征图。特征映射被连接成一个单一的特征向量,然后通过点积与权重向量一起计算该特征向量,生成三重(h, r, t)的分数。这个分数用于推断三重(h, r, t)是否有效。我们在本文中的贡献如下:

  • 我们引入了一种新的用于知识库完成的实体和关系嵌入模型——convkb。ConvKB为嵌入的相同维度项之间的关系建模。这意味着ConvKB在基于迁移的嵌入模型中推广了迁移特征。
  • 我们在两个基准数据集上评估了ConvKB: WN18RR (Dettmers et al.,2018)和FB15k-237 (Toutanova和Chen,2015)。实验结果表明,与以往的SOTA嵌入模型相比,ConvKB模型具有更好的链路预测性能。其中,ConvKB在WN18RR上的平均排名最高,Hits@10最高,在FB15k-237上的平均倒数排名最高,Hits@10最高。

嵌入模型的目的是定义一个分数函数,为每个三元组(h, r, t)给出一个不可信的分数,这样有效三元组得到的分数低于无效三元组。表1给出了以前SOTA模型中的得分函数。
论文阅读 ConvKB_第1张图片
我们用k表示嵌入的维数,使每个嵌入三(vh,vr,vt)被视为一个k x 3的矩阵A= [vh,vr,vt]。Ai表示a的第i行。假设我们在卷积层上使用一个ω∈R1x3滤波器。ω不仅研究了嵌入三元模型(vh,vr,vt)的同维项之间的整体关系,而且推广了基于转移模型的转移特性。ω对A的每一行重复操作,最终生成一个特征映射v= [v1, v2, …, vk]
在这里插入图片描述

其中b∈R是一个偏差项,g是某个激活函数,如ReLU。
论文阅读 ConvKB_第2张图片

我们的ConvKB使用不同的filters∈R 1×3来生成不同的特征映射。设Ω和τ分别表示滤波器的集合和滤波器的数量,即τ=|Ω|,得到τ特征映射。这些τ特征映射被连接成单个向量∈R τk×1,然后通过点积计算权向量w∈R τk×1,给三重(h, r, t)打分。图1展示了在ConvKB中的计算过程。
形式上,我们定义ConvKB分数函数f如下:
在这里插入图片描述
其中Ω和w为共享参数,∗表示卷积算子;concat表示连接操作符。如果我们只使用一个滤波器ω(即。使用τ= 1)带有固定偏差项b=0和激活函数g(x) =|x|或g(x) =x2,以及固定ω=[1,1,−1]和w=1,在训练过程中,ConvKB简化为普通TransE模型(Bordes et al.,2013)。因此,我们的ConvKB模型可以被视为TransE的扩展,以进一步建模全局关系。
我们使用Adam优化器(Kingma and Ba, 2014)通过最小化损失函数l (Trouillon et al.,2016)来训练ConvKB,对模型的权值向量进行l2正则化:
论文阅读 ConvKB_第3张图片
这里G’是一个无效三元组的集合,由损坏G中的有效三元组生成。
论文阅读 ConvKB_第4张图片

你可能感兴趣的:(算法,python,矩阵)