本文就是大名鼎鼎的R-GCN,由于是比较早的工作了,在这篇博客中我们只讨论它的链接预测部分和模型结构部分。
工作简介
本文引入了关系图卷积网络(R-GCNs),并将其应用于两个标准的知识库完成任务: 链接预测和实体分类。
通过使用GNN编码器模型来丰富用于链接预测的因子分解模型DistMult,可以显著改善链接预测的结果。R-GCN可以视为是一个自动编码器,产生实体潜在特征的表示。
R-GCN是首次将GCN用于关系数据建模。
工作简介-关系图卷积网络
模型主要是作为在局部图邻域上操作的GCNs扩展到大规模关系数据。可以理解为简单可微消息传递框架的特殊情况,结构简介如下:
hi(l)是结点vi在第l层的隐藏状态。
d(l)是该层的表征维度
形式为gm(·,·)的传入被累计并通过激活函数σ(·)传递。
Mi表示结点vi的传入消息集合,通常被选择为与传入边集合相同。
gm(·,·)通常被选择为(特定于消息的)类神经网络函数或简单的线性变换。如gm(hi,hj)=Whj。
这种类型的转换已被证明在从局部、结构化邻域积累和编码特征方面非常有效。
内容介绍-关系图卷积网络
基于上述架构,定义RGCN的传播模型,用于计算关系型多图(有向)中由vi表示的实体的前向传递更新:
𝑁i𝑟表示节点i在关系r∈𝑅下的邻居合集。ci,𝑟是一个特定于问题的归一化常数,既可以学习也可以提前选择。
上式通过归一化和累计相邻节点变换后的特征向量。与常规的GCN不同的地方在于RGCN引入了特定于关系的转换,即根据边的类型和方向进行转换。
为了确保l+1层节点的表示可以被l层对应的表示所告知,我们为每个节点添加一个特殊关系类型的单一自连接。
神经网络层的更新包括对图中每个节点用上式进行并行评估,在实践中,上式可以通过稀疏矩阵乘法有效地实现,以避免对领域进行显式求和。可以堆叠多个层,以允许跨几个关系步骤的依赖关系。
内容介绍-正则化
将上述传播过程应用于高度多关系数据的一个核心问题就是参数的数量随着图中关系的数量快速增长。在实践中,这很容易导致对罕见关系和对非常大的规模的模型的过度拟合。
为了解决这个问题,引入两种不同的方法来正则化R-GCN的权重,基分解和块对角线分解。
通过基分解, 每个𝑊𝑟(𝑙)的定义如下:
(3)
只取决于r,W是基变换的线性组合。
W也可以通过对一组低维矩阵的直接求和来定义。
(4)
W_r^((l))是块对角矩阵,
基函数分解(3)可以看作是不同关系类型之间有效的权重共享的一种形式,而块分解(4)可以看作是对每种关系类型的权重矩阵的稀疏性约束。块分解结构编码了一种直觉, 即潜在特征可以被分组到变量集中,这些变量集在组内比组间耦合更紧密。两种分解都减少了高度多关系数据(如现实的知识库)所需学习的参数数量。同时,我们期望基参数化可以缓解稀有关系上的过拟合,因为参数更新在稀有关系和更频繁的关系之间共享。
内容介绍-评分函数和损失函数
整个R-GCN模型采用以下形式:
将(2)中定义的L层堆叠起来—前一层的输出是下一层的输入。如果没有其他特征存在,第一层的输入可以被选择为图中每个节点的唯一的one-hot向量。对于块表示,我们通过单个线性变换将这个one-hot向量映射到一个稠密表示。
DistMult作为评分函数:
在DistMult中,每个关系r都与一个对角矩阵Rr∈R^dxd相关联
用负采样训练模型。对于每个观察到的例子,对ω负样本进行采样。通过随机破坏每个正例的主体或客体来采样。优化交叉熵损失,以推动模型对正三元组的评分高于负三元组的评分。
这篇工作的关键特征是对编码器的依赖:
实验结果