Semi-Supervised Classification with Graph Convolutional Networks

Semi-Supervised Classification with Graph Convolutional Networks

原问地址

时间:2017

Intro

要解决的问题:图上的结点分类,其中只有小部分结点有label。

这是一个基于图的半监督学习,可以通过在损失函数中额外加一项graph-based regularization来解决:
Semi-Supervised Classification with Graph Convolutional Networks
其中L0\mathcal{L}_0表示label的损失,ff表示神经网络,XX是结点特征矩阵,Δ=DA\Delta=D-A表示unnormalized graph Laplacian(???),AA是邻接矩阵,Dii=jAijD_{ii}=\sum_jA_{ij},这个方程假设了连接的结点更可能有一样的label,但因为边的存在除了表示结点之间的相似性外还有别的信息,所以这一假设可能限制模型的表达能力

本文通过直接用神经网络来encode图结构并在L0\mathcal{L}_0上训练来避免在损失函数中包括graph-based regularization,以邻接矩阵AA为条件的神经网络会使得模型将监督学习损失的梯度信息传递到其他图的其他结点上,使得无论是否有标签的结点都能学习到好的representation

本文贡献有以下两点

  • 提出了一个直接在图上作用的神经网络
  • 使用提出的网络在图上进行半监督学习,得到了更好的效果

Fast Approximate convolutions on graphs

multi-layer GCN的一层传播规则如下
Semi-Supervised Classification with Graph Convolutional Networks
其中A~=A+IN\tilde{A}=A+I_N,是无向图G\mathcal{G}的邻接矩阵加上每个结点自连接,D~ii=jA~ij\tilde{D}_{ii}=\sum_j{\tilde{A}_{ij}}W(l)W^{(l)}是训练参数,H(l)RN×DH^{(l)}\in R^{N\times D}是第ll层的**矩阵,且H(l)=XH^{(l)}=X,接下来证明这个形式是受到图上局部光谱滤波(localized spectral filter)的一阶逼近得到的

Spectral Graph Convolutions

图上的谱卷积定义为对信号xRNx\in R^N和卷积核gθ=diag(θ)g_\theta=diag(\theta)的乘积
Semi-Supervised Classification with Graph Convolutional Networks
其中UU是normalized graph LaplacianL=IND12AD12=UΛUTL=I_N-D^{-\frac{1}{2}}AD^{\frac{1}{2}}=U\Lambda U^T的特征向量,其中Λ\Lambda是特征值的对角矩阵,UTxU^Tx是图傅里叶变换,可以将gθg_\theta看做LL的特征值的函数gθ(Λ)g_\theta(\Lambda),上图的计算复杂度很高,因此通过truncated expansion来逼近
Semi-Supervised Classification with Graph Convolutional Networks
此时计算复杂度由O(N2)O(\mathcal{N}^2)降低到了O(ε)O(|\varepsilon|)
Semi-Supervised Classification with Graph Convolutional Networks

Layer-Wise Linear Model

将上面的式子stack起来就可以得到层的结构,此时选择K=1K=1,后面的看不懂

Semi Supervised Node Classification

下面使用之前的模型来进行半监督学习,因为邻接矩阵AA中包括了XX中不包含的信息,因此通过图卷积将它们融合起来,整个模型如图所示
Semi-Supervised Classification with Graph Convolutional Networks

Example

考虑一个两层的GCN
Semi-Supervised Classification with Graph Convolutional Networks
其中W(0)W^{(0)}是输入到隐层的权值,W(1)W^{(1)}是隐层到输出的权值,最后计算所有带标签样本的交叉熵损失
Semi-Supervised Classification with Graph Convolutional Networks

Conclusion

本文提出了一个图卷积网络,它能够以图作为输入,通过逐层的特征映射,完成了半监督的学习任务,达到了较好的效果

问题

  • 图结点的个数是样例的个数,在样本多的情况下计算量会很大
  • 暂时不支持有向图
  • 内存开销和数据集成正比