Graphic Convolution Network(GCN)

1 定义

1.1输入

  • 对于节点i的特征描述为xi,构成整个图的特征矩阵X ,N行D列,N为节点数,D为特征数
  • 对于图的结构描述也为矩阵,一般为邻接矩阵A

1.2输出

  • 输出结果为节点层次的矩阵Z,N行F列,F为每个节点的输出特征数
  • 要输出图层次的结果则需引入一些池化操作,见Duvenaud et al.

1.3神经网络

  • 神经网络的每一层都可以写作如下非线性函数,其中H^{0}=X,H^{L}=Z, L为神经网络层数,模型差别就在于函数f()上

                                             H^{l+1}=f(H^{l},A)

2 简单示例

令神经网络层的前向传播函数为

                               f(H^{(l)},A)=\sigma (AH^{(l)}W^{(l)})

其中,W^{(l)}为第l层网络的权重矩阵,\sigma为激活函数,如ReLu激活器,这个模型很简单,但是很有用。但这个模型也有2个缺陷:

  • 矩阵A直接相乘意味着对于每一个节点,我们将全部节点的全部特征都提取出来,而并非关注的这个节点本身(除非图中有自环出现)。我们可以通过向图中添加自环来解决这个问题,即将A矩阵和I矩阵直接相加。
  • 矩阵A并未标准化,A经过矩阵乘法后,会彻底改变特征矩阵的数量级,可以通过标准化矩阵解决这个问题,即D^{-1}A,D为A的对角矩阵,使每一列的和为1。

如果是非对称矩阵,结果会更有意思,把上面两种技巧结合起来,就是Kipf & Welling (ICLR,2017)所用的前向传播函数

                                          f(H^{(l)},A)=\sigma (\widehat{D}^{-\frac{1}{2}}\widehat{A}\widehat{D}^{-\frac{1}{2}}H^{(l)}W^{(l)})

其中\widehat{A} = A + I\widehat{D}\widehat{A} = A + I的对角矩阵

3 模型应用(ZACHARY问题)

Karate club graph, colors denote communities obtained via modularity-based clustering (Brandes et al., 2008).

           Karate club graph, colors denote communities obtained via modularity-based clustering (Brandes et al., 2008).

 

ZACHARY空手道俱乐部是ZACHARY对美国一个空手道俱乐部长期观测构建的一个社交网络,常用于复杂网络社团结构的分析,测试聚类算法的划分精度。其中,节点为俱乐部成员,边代表成员之间的关系(联系密切的成员之间才有边),共有34个节点,78条边。该俱乐部关于在是否提高俱乐部收费问题上产生了分析,最终分裂成为以俱乐部主管和俱乐部教练为中心的两个团体,分别为节点1和节点34。

我们用上述模型对ZACHARY问题进行聚类分析,网络一共有3层,每层的权重随机分配,输入邻接矩阵和特征矩阵X=I(因为我们对于这些节点的特征一无所知,只知道节点之间的关系)。在随机分配参数,没有训练的情况下,模型的输入结果已经和上图很接近了,如下图所示。

GCN embedding (with random weights) for nodes in the karate club network.

                                         GCN embedding (with random weights) for nodes in the karate club network​​​​

 

 

4 半监督学习

用半监督学习算法对每一类中的一个节点打上标签,然后开始训练若干步,结果如下所示:

Semi-supervised classification with GCNs: Latent space dynamics for 300 training iterations with a single label per class. Labeled nodes are highlighted.

模型自动在二维空间生成可视化图像。三层的GCN在每一类只有一个标签节点的情况下,成功划分了社区团体。本模型没有考虑节点的特征。

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值