加入收藏 | 设为首页 | 会员中心 | 我要投稿 南平站长网 (https://www.0599zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > 建站资源 > 经验 > 正文

图卷积网络到底怎么做,这是一份极简的Numpy实现

发布时间:2019-02-25 09:32:33 所属栏目:经验 来源:机器之心编译
导读:副标题#e# 由于图结构非常复杂且信息量很大,因此对于图的机器学习是一项艰巨的任务。本文介绍了如何使用图卷积网络(GCN)对图进行深度学习,GCN 是一种可直接作用于图并利用其结构信息的强大神经网络。 本文将介绍 GCN,并使用代码示例说明信息是如何通过 G

你可能已经发现了其中的问题:

  • 节点的聚合表征不包含它自己的特征!该表征是相邻节点的特征聚合,因此只有具有自环(self-loop)的节点才会在该聚合中包含自己的特征 [1]。
  • 度大的节点在其特征表征中将具有较大的值,度小的节点将具有较小的值。这可能会导致梯度消失或梯度爆炸 [1, 2],也会影响随机梯度下降算法(随机梯度下降算法通常被用于训练这类网络,且对每个输入特征的规模(或值的范围)都很敏感)。

接下来,本文将分别对这些问题展开讨论。

1. 增加自环

为了解决第一个问题,我们可以直接为每个节点添加一个自环 [1, 2]。具体而言,这可以通过在应用传播规则之前将邻接矩阵 A 与单位矩阵 I 相加来实现。

  1. In [4]: I = np.matrix(np.eye(A.shape[0])) 
  2.         I 
  3. Out[4]: matrix([ 
  4.             [1., 0., 0., 0.], 
  5.             [0., 1., 0., 0.], 
  6.             [0., 0., 1., 0.], 
  7.             [0., 0., 0., 1.] 
  8.         ]) 
  9. In [8]: AA_hat = A + I 
  10.         A_hat * X 
  11. Out[8]: matrix([ 
  12.             [ 1., -1.], 
  13.             [ 6., -6.], 
  14.             [ 3., -3.], 
  15.             [ 5., -5.]]) 

现在,由于每个节点都是自己的邻居,每个节点在对相邻节点的特征求和过程中也会囊括自己的特征!

2. 对特征表征进行归一化处理

通过将邻接矩阵 A 与度矩阵 D 的逆相乘,对其进行变换,从而通过节点的度对特征表征进行归一化。因此,我们简化后的传播规则如下:

  1. f(X, A) = D⁻¹AX 

让我们看看发生了什么。我们首先计算出节点的度矩阵。

  1. In [9]: D = np.array(np.sum(A, axis=0))[0] 
  2.         D = np.matrix(np.diag(D)) 
  3.         D 
  4. Out[9]: matrix([ 
  5.             [1., 0., 0., 0.], 
  6.             [0., 2., 0., 0.], 
  7.             [0., 0., 2., 0.], 
  8.             [0., 0., 0., 1.] 
  9.         ]) 

在应用传播规则之前,不妨看看我们对邻接矩阵进行变换后发生了什么。

变换之前

  1. A = np.matrix([ 
  2.     [0, 1, 0, 0], 
  3.     [0, 0, 1, 1],  
  4.     [0, 1, 0, 0], 
  5.     [1, 0, 1, 0]], 
  6.     dtype=float 

变换之后

  1. In [10]: D**-1 * A 
  2. Out[10]: matrix([ 
  3.              [0. , 1. , 0. , 0. ], 
  4.              [0. , 0. , 0.5, 0.5], 
  5.              [0. , 0.5, 0. , 0. ], 
  6.              [0.5, 0. , 0.5, 0. ] 
  7. ]) 

(编辑:南平站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读