RGCNs-paper

一、摘要

SRL主要关注预测知识图谱丢失的信息,知识图谱储存三元组(subject,predicate,object)。eg。(Mikhail Baryshnikov,educated_at,Vaganova Academy),Baryshnikov和Vaganova Academy)是实体,educated_at是关系,实体标注类型,Vaganova Academy标签是university。


关系.jpg

知识图谱有广泛的应用前景,比如问答系统、信息检索。这篇文章我们介绍R-GCNs,解决知识图谱两大经典任务:实体识别、链路预测,实体识别恢复丢失三元组,链路预测将实体进行分类,处理实际生活中多关系数据。接下来,我们将完整展示应用R-GCNs完成实体识别,使用softmax分类node,优化cross-entropy损失得到参数。链路预测类比autoencoder,(1)encoder,R-GCNs生成实体特征表示,(2)decoder,tensor factorization model用这些特征预测带上标签的edge。原则decoder可以使用任何factorization或得到score模型,我们使用最简单有效的模型DistMult,DistMult丰富encode,加速关系图推断过程,在FB15K-237提升了29.8%。

我们主要的贡献有:(1)首次展示GCN可以预测关系数据,(2介绍参数共享的技术,在多关系中处理sparsity constraints,(3)DistMult可以丰富encoder表现,主要关系图中多步骤处理information propagation

二、模型原理

定义多关系图G=(V,\varepsilon,R)v_i \in V表示,node(entities),(v_i,r,v_j)表示labeled edges关系,r\in R是关系类型。

RGCNS.jpg

1. Relational graph convolutional networks

我们的模型灵感来源于GCNs,GCNs处理图邻居,这些图神经网络和消息传递框架不同。

h_i^{(l+1)}=\sigma(\sum_{m\in M_i}g_m(h_i^{(l)},h_j^{(l)}),\quad (1)

h_i^{(l)} \in R^{d^{(l)}}节点v_i在l-th layer的隐藏状态,g_m(.,.)传递给element-wise激活方法\sigma(.),比如ReLU(.)=max(0,.)^2M_i表示节点v_i进来的消息,类比于incoming edge集合,g_m(.,.)消息处理神经网络或者简单的线性转换g_m(h_i,h_j)=Wh_j,这些类型的转换在聚合编码结构化邻居特征非常有效,特别是图分类。受这些启发,我们定义了以下propagation model计算向前更新实体v_i

h_i^{(l+1)}=\sigma(\sum_{r\in R}\sum_{j \in N_i^r} \frac{1}{c_{i,r}}W_r^{(l)}h_j^{(l)}+W_0^{(l)}W_i^{(l)}), \quad (2)

N_i^r表示node i的在关系r \in R邻居indices,c_{i,r}是problem-specifi归一化约束,可以使用c_{i,r}=|N_i^r|

等式(2)用sum转换邻居特征向量,与常规的GCNs不同,我们介绍基于关系的转换,这些关系依赖边的类型和方向。为了确保在l+1节点依赖l层,每个节点加特殊关系self-connection。除了简单的线性消息传递,也可以更加灵活的方法,比如多层神经网络,当然这也会提高计算代价。

2.Regularization

等式(2)随着图中关系增加,参数个数也急速增加。在关系比较少见或图非常大会过渡拟合,为了解决这个问题,我们介绍两种方法,regularing R-GCNs权重:basis和block-diagonal-decomposition。在basis decomposition

W_r^{(l)} = \sum_{b=1}^B a_{rb}^{(l)}V_b^{(l)},\quad (3)

i.e.是线性转化,V_b^{(l)} \in R^{d^{(l+1)}*d^{(l)}}a_{rb}^{(l)}是关系r的相关系数。

在block-diagonal decomposition,每个W_r^{(l)}通过低维度矩阵相加

W_r^{(l)} = \oplus_{b=1}^B Q_{br}^{(l)} \quad (4)
W_r^{(l)}是block-diagonal矩阵diag(Q_{1r}^{(l)},...,Q_{Br}^{(l)}) \quad with \quad Q_{br}^{(l)} \in R^{d^{(l+1)/B}*(d^{l}/B)}

等式(3)可以被看作不同关系参数共享,等式(4)每个关系在权重上sparsity constraint
。block decomposition中,隐藏的特征可以分组成变量集合,组内关系比组外关系更紧密。这两种方式,都可以减少参数数量,basis decomposition可以解决关系少见过拟合问题,因为所有关系都共享参数。

R-GCNs遵循以下原则,等式(2)前一层是下一层的输入,第一层的输入如果节点其他特征,可以使用one-hot。

三、应用

1.实体识别

半监督实体分类,我们通过等式(2)stack R-GCNs layer,在输出层采用softmax(.)激活节点。每个带标签节点采用cross-entropy,忽略没有带标签的节点

\zeta = -\sum_{i\in \gamma}\sum_{k=1}^K t_{ik}\,ln\, h_{ik}^{(L)},\quad(5)

\gamma有标签节点的索引,h_{ik}^{(L)}是第k层网络的输出,t_{ik}表示真实的标签。在实践中,我们通过随机梯度法训练模型。

2.链路预测

链路预测预测新的三元组,知识图谱生成有向带标签的图{G=(V,\varepsilon,R},任务是评估f(s,r,o)到可能的边{(s,r,o)},未来决定多大可能性这些边属于\varepsilon

为了解决这些问题,我们介绍自编码模型,有encoder和得分函数decoder。encoder生成节点向量,decoder根据向量表示重建边。通过R^d * R * R^d -> R评估(subject,relation,objection)。我们使用DistMult作为得分函数,f(s,r,o) = e_s^TR_re_oR_r\in R^{d*d}是对角矩阵。在训练模型中,我们还使用了负采样,每一个观测的样例,我们采样w个负样例,通过cross-entropy优化模型,使用观察到的三元组数据高于负样例

\zeta=-\frac{1}{(1+w)|\hat{\varepsilon|}}\sum_{(s,r,o,y)\in \tau}y log\quad l(f(s,r,o))+(1-y)log(1-l(f(s,r,o)))
\tau是所有真实的三元组,l是logistic sigmoid函数,y=0是负采样

四、实验评估

1. 实体识别

数据集:AIFB,MUTAG,BGS,AM


实体识别数据集.jpg

Baseline模型:
RDF2vec嵌入向量结果:在带标签的节点中随机游走,通过skipgram计算实体向量,最后用实体向量来分类。

结果
RGCNS用的是2层网络16个隐藏层单元,训练使用基础规则,优化使用Adam,训练50轮次,学习率0.01,正则化参数c_{i,r}=|N_i^r|

实体识别结果.jpg

实体识别的结构是10轮次的平均精度,我们的模型在AIFB,AM是表现突出。MUTAG是分子图,之后转换成RDF格式,数据集中关系很少有特征。BGS中岩石类型,有多层特征,类似于RDG格式,关系表示某个特征或特征层级。MUTAG和BGS的带标签的实体仅仅与高度中枢节点有联系,编码确定的特征。

当然,当节点有很高的度,收集邻居信息有限制,我们可以通过引进attention机制,用a_{i,jr}代替正则1/c_{i,r}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容