基于卷积神经网络的KBC
原文:
A Novel Embedding Model for Knowledge Base Completion Based on Convolutional Neural Network
摘要
本篇文章是将图片卷积的概念扩展并应用于知识图谱点的嵌入表示,简单来说,是对知识图谱中的每一个三元组组合而成的嵌入矩阵(vh,vr,vt)∈Rk×3,(v_h,v_r,v_t)\in R^{k \times 3},(vh,vr,vt)∈Rk×3,k表示的是嵌入向量的维度,与不同的1×31\times31×3的filters进行卷积运算,来提取嵌入三元组相同维度的关系。得到多个feature maps,然后将这些feature maps拼接在一起,得到三元组的一个嵌入向量表示,该嵌入表示在于一个权重向量做内积,得到的数值来对三元组进行打分,表示三元组的有效与否。
提出的方法
将知识图谱的三元组(vh,vr,vt)(v_h,v_r,v_t)(vh,vr,vt)表示为矩阵的形式,A=[vh,vr,vt]∈Rk×3A=[v_h,v_r,v_t] \in R^{k\times3}A=[vh,vr,vt]∈Rk×3,卷积核ω∈R1×3\omega \in R^{1\times3}ω∈R1×3,ω\omegaω与A的每一行进行卷积运算,会得到一个k维的feature map,记为v=[v1,v2,...,vk]∈Rkv=[v_1,v_2,...,v_k]\in R_kv=[v1,v2,...,vk]∈Rk
vi=g(ω⋅Ai,:+b)v_i=g(\omega \cdot A_{i,:}+b)vi=g(ω⋅Ai,:+b)
其中b是偏置项,g是激活函数。
用Ω\OmegaΩ和τ=∣Ω∣\tau=|\Omega|τ=∣Ω∣分别表示卷积核集合和卷积核的个数。分别去和A进行卷积运算,运算结果直接拼接起来,得到一个向量∈Rτk×1\in R^{\tau k \times 1}∈Rτk×1,再和一个权重向量w∈Rτk×1w\in R^{\tau k \times 1}w∈Rτk×1做内积运算,得到的值是对该三元组的打分:
f(h,r,t)=concat(g([vh,vr,vt]×Ω))T⋅wf(h,r,t)=concat(g([v_h,v_r,v_t]\times \Omega))^T\cdot wf(h,r,t)=concat(g([vh,vr,vt]×Ω))T⋅w
对于所有的三元组共享Ω\OmegaΩ和www参数
最后,目标函数如下:
L=∑(h,r,t)∈G∪G′log(1+exp(−l(h,r,t)⋅f(h,r,t)))+λ2∣∣w∣∣22L=\sum_{(h,r,t) \in {G \cup G'}}log(1+exp(-l_(h,r,t) \cdot f(h,r,t)))+\frac{\lambda} {2} ||w||_2^2L=(h,r,t)∈G∪G′∑log(1+exp(−l(h,r,t)⋅f(h,r,t)))+2λ∣∣w∣∣22
[1]: A Novel Embedding Model for Knowledge Base Completion Based on Convolutional Neural Network