[ 深度学习 ] —— 图卷积神经网络 GCN

 

[ 深度学习 ] —— 图卷积神经网络 GCN
Multi-layer Graph Convolutional Network (GCN) with first-order filters.

 

1、图卷积要干什么?

图卷积神经网络主要要完成的就是这件事,给定一个图网络,把节点(node)(又称顶点(vertex))与 边(edge)输入进一个函数[ 深度学习 ] —— 图卷积神经网络 GCN,希望得到一个各个节点的feature信息,利用这个feature去实现各种任务(比如分类)。如图1所示。

[ 深度学习 ] —— 图卷积神经网络 GCN
图1  图卷积神经网络的输入输出

其中,

[ 深度学习 ] —— 图卷积神经网络 GCN 表示输入特征矩阵,形状为 [ 深度学习 ] —— 图卷积神经网络 GCN[ 深度学习 ] —— 图卷积神经网络 GCN是节点的个数,[ 深度学习 ] —— 图卷积神经网络 GCN是每个节点的特征向量维度);

[ 深度学习 ] —— 图卷积神经网络 GCN 表示输出特征矩阵,形状为 [ 深度学习 ] —— 图卷积神经网络 GCN[ 深度学习 ] —— 图卷积神经网络 GCN是节点的个数,[ 深度学习 ] —— 图卷积神经网络 GCN是每个节点的特征向量维度);

 

2、图卷积神经网络的结构是什么?

图卷积神经网络最核心的就是下面这个公式。

[ 深度学习 ] —— 图卷积神经网络 GCN
公式1  图卷积神经网络前向传播公式

在这个公式中可以看到,输入与输出是分别由[ 深度学习 ] —— 图卷积神经网络 GCN[ 深度学习 ] —— 图卷积神经网络 GCN 和 [ 深度学习 ] —— 图卷积神经网络 GCN 构成,那么他们是什么呢?与图1中的 [ 深度学习 ] —— 图卷积神经网络 GCN 和 [ 深度学习 ] —— 图卷积神经网络 GCN 有什么关系呢?

[ 深度学习 ] —— 图卷积神经网络 GCN  实际上是图卷积神经网络的隐藏层[ 深度学习 ] —— 图卷积神经网络 GCN 表示隐藏层的层数。当 [ 深度学习 ] —— 图卷积神经网络 GCN, 把这个公 [ 深度学习 ] —— 图卷积神经网络 GCN 时,公式1就变成图1的特例就变成了 [ 深度学习 ] —— 图卷积神经网络 GCN。实际上图卷积神经网络就是在输入 [ 深度学习 ] —— 图卷积神经网络 GCN 与输出 [ 深度学习 ] —— 图卷积神经网络 GCN 之间插入了大量隐藏层 [ 深度学习 ] —— 图卷积神经网络 GCN 构成。如图2所示。

[ 深度学习 ] —— 图卷积神经网络 GCN 是图网络中的邻接矩阵

[ 深度学习 ] —— 图卷积神经网络 GCN
图2  前向传播示意图

 

到这里就明白了图卷积神经网络的前向传播

 

3、节点的前向传播

我们用一个最简单的 [ 深度学习 ] —— 图卷积神经网络 GCN 函数来具体说明图卷积神经网络中具体每个节点是如何前向传播的。同时,还要说明图卷积神经网络要更新的 学习参数 是什么?

[ 深度学习 ] —— 图卷积神经网络 GCN
公式2  一个f的最简单函数

公式2中,[ 深度学习 ] —— 图卷积神经网络 GCN 是非线性函数比如ReLU; [ 深度学习 ] —— 图卷积神经网络 GCN 是第  [ 深度学习 ] —— 图卷积神经网络 GCN 层的学习参数

 

将公式2代入到公式1中,并将 [ 深度学习 ] —— 图卷积神经网络 GCN 分开看,就是具体每个节点的传播方法。下面是关键公式。

[ 深度学习 ] —— 图卷积神经网络 GCN
公式3  每个节点的前向传播

其中,[ 深度学习 ] —— 图卷积神经网络 GCN 指的是图中第 i 个节点;[ 深度学习 ] —— 图卷积神经网络 GCN 表示归一化系数。 这个公式最大的特点是说,图中每个节点的特征是在其他节点特征共同作用下更新的。即:[ 深度学习 ] —— 图卷积神经网络 GCN

 

 

 

 

 

参考文献汇总

 

1、GCN作者官方教程

2、延伸阅读。 知乎专栏拉普拉斯算子