论文阅读笔记: Modeling Relational Data with Graph Convolutional Networks

arXiv:1703.06103v4

1.Introduction

主要贡献如下:

  • 第一个证明GCN框架可以应用于关系数据建模的工具,特别是链接预测和实体分类任务的工具。
  • 介绍了用于参数共享和实施稀疏性约束的技术,并使用它们将R-GCN应用于具有大量关系的多图。
  • 展示了以DistMult为例的分解模型的性能,可以通过在关系图中执行多个信息传播步骤的编码器模型来丰富它们,从而显着提高其性能。

2.神经关系建模(Neural relational modeling)

定义有向标签多图(directed and labeled multi-graphs)为G=(V,E,R)G = (\mathcal{V}, \mathcal{E}, \mathcal{R}),包含顶点viVv_i \in \mathcal{V},和有标签的边(关系)(vi,r,vj)E(v_i, r, v_j) \in \mathcal{E},其中的rRr \in \mathcal{R}是一类关系类型。

R-GCN模型如下图:

论文阅读笔记: Modeling Relational Data with Graph Convolutional Networks

2.1 关系图卷积网络(Relational graph convolutional networks)

一般的图卷积神经网络层结构:
hi(l+1)=σ(mMigm(hi(l),hj(l))) h_i^{(l+1)} = \sigma \left( \sum_{m \in \mathcal{M}_i} g_m(h_{i}^{(l)}, h_{j}^{(l)}) \right)
其中Mi\mathcal{M}_i是顶点viv_i的消息输入顶点集合。gm(.,.)g_m(.,.)通常选择一个类似于神经网络函数,比如简单线性变换gm(hi,hj)=Whjg_m(h_i, h_j) = Wh_j

论文提出的图卷积神经网络层结构:
hi(l+1)=σ(rRjNir1ci,rWr(l)hj(l)+Wr0(l)hj(l)). h_i^{(l+1)} = \sigma \left( \sum_{r \in \mathcal{R}} \sum_{j \in \mathcal{N}_i^r} \frac{1}{c_{i,r}} W_{r}^{(l)} h_{j}^{(l)} + W_{r0}^{(l)} h_{j}^{(l)} \right).
其中Nir\mathcal{N}_i^r是在关系rRr \in \mathcal{R}下顶点viv_i的邻居顶点,ci,rc_{i,r}是归一化因子,可以取ci,r=Nirc_{i,r}=|\mathcal{N}_i^r|

为图中的每个顶点添加自连接。

To ensure that the representation of a node at layer l+1l + 1 can also be informed by the corresponding representation at layer ll, we add a single self-connection of a special relation type to each node in the data.

2.2 正则化(Regularization)

R-GCN的两种分离的正则化方法:basis-decomposition 和 block-diagonal-decomposition.

basis-decomposition :
Wr(l)=b=1Bar,b(l)Vb(l),Vb(l)Rd(l+1)×d(l).W_{r}^{(l)} = \sum_{b=1}^{B} a_{r,b}^{(l)} V_{b}^{(l)}, \qquad V_{b}^{(l)} \in \mathbb{R}^{d^{(l+1)} \times d^{(l)}}.
ar,b(l)a_{r,b}^{(l)}是只依赖于rr的因子。
Wr(l)W_{r}^{(l)}是由Vb(l)V_{b}^{(l)}线性组合。

block-diagonal decomposition
Wr(l)=b=1BQb,r(l),Qb,r(l)Rd(l+1)B×d(l)B.W_{r}^{(l)} = \bigoplus_{b=1}^{B} Q_{b,r}^{(l)}, \qquad Q_{b,r}^{(l)} \in \mathbb{R}^{ \frac{d^{(l+1)}}{B} \times\frac{d^{(l)}}{B} }.
Wr(l)W_{r}^{(l)}是由Vb(l)V_{b}^{(l)}组成的块对角矩阵diag(Q1,r(l),,QB,r(l))diag(Q_{1,r}^{(l)}, \cdots, Q_{B,r}^{(l)})

basis-decomposition可以看作是不同关系类型之间有效权重共享的一种形式,而block-diagonal decomposition可以看作是每种关系类型对权重矩阵的稀疏约束。 块分解结构编码的直觉是,可以将潜在特征分组为变量集,这些变量在组内比在组之间更紧密地耦合。 两种分解都减少了学习高度多关系数据(例如,现实的知识库)所需的参数数量。 同时,我们期望基本参数化可以缓解稀疏关系的过度拟合,因为稀疏关系和更频繁关系之间共享参数更新。

3.实体分类(Entity classification)

最后一层采用softmax(.)softmax(.)**函数,在有标签顶点上使用cross-entropy loss:
L=iYk=1Kti,klnhi,kL. \mathcal{L} = - \sum_{i \in \mathcal{Y}} \sum_{k=1}^{K} t_{i,k} \ln h_{i,k}^{L}.
其中Y\mathcal{Y}是有标签顶点集,ti,kt_{i,k}是ground-truth。

4.链接预测(Link prediction)

Link prediction的任务 知识库由一般用有向有标签图G(V,E,R)G(\mathcal{V}, \mathcal{E},\mathcal{R})表示,一般提供一个不完全的边子集E^\hat{\mathcal{E}},需要找到一个分数函数f(s,r,o)f(s,r,o)将边(s,r,o)(s,r,o)预测为某类的分数。

采用自动编码机模型:

Encoder 将每个实体viVv_i \in \mathcal{V} 映射到一个实值向量eiRd\vec{e}_i \in \mathbb{R}^d

Decoder 解码器根据顶点表示重建图的边,将(subject, relation, object)三元组映射一个实数分数,即s:Rd×R×RdRs:\mathbb{R}^d \times \mathcal{R} \times \mathbb{R}^d \rightarrow \mathbb{R}

论文阅读笔记: Modeling Relational Data with Graph Convolutional Networks

使用DistMult[ang et al. 2014]做解码器,每个关系rr对应一个对角阵RrRd×dR_r \in \mathbb{R}^{d \times d},元组(s,r,o)(s,r,o)的分数为:
f(s,r,o)=esTRre0. f(s,r,o) = e_s^T R_r e_0.

使用负样本训练模型采样。 对于每个观察到的示例,我们进行采ww个负样本。通过随机破坏每个正面示例的主题或对象来进行采样。 针对交叉熵损失进行了优化,以使模型的可观察三元组得分高于负三元组:
L=1(1+w)E^(s,r,o,y)Tylogl(f(s,r,o))+(1y)log(1l(f(s,r,o))). \mathcal{L} = - \frac{1}{(1+w)|\hat{\mathcal{E}}|} \sum_{(s,r,o,y)\in \mathcal{T}} y \log l(f(s,r,o)) + (1-y) \log \left( 1-l(f(s,r,o)) \right).
其中T\mathcal{T}是总的样本数(含真实的与破坏得到的负样本),ll是logistic sigmoid函数,yy是指示函数,真样本是取值为1,否则为0。

5.对该方法的实验评估

关系抽取实验

数据集:WordNet(WN18),Freebase(FB15K)

baseline:LinkFeat,DistMult,CP,TransE,HolE,ComplEx

评价准则:MRR(mean reciprocal rank)(Raw,Filtered),Hits @(1,3,10)

结果如下图:

论文阅读笔记: Modeling Relational Data with Graph Convolutional Networks

实体分类实验
数据集:AIFB、MUTAG、BGS、AM

baseline:Feat、WL、RDF2Vec

评价准则:准确率

结果如下图:

论文阅读笔记: Modeling Relational Data with Graph Convolutional Networks

参考文献