Pytorch神经网络实战学习笔记_42 基于空间域的图卷积GCNs(ConvGNNs):定点域+谱域+图卷积的操作步骤

Pytorch神经网络实战学习笔记_42 基于空间域的图卷积GCNs(ConvGNNs):定点域+谱域+图卷积的操作步骤

图卷积网络(Graph Convolutional Network,GCN)是一种能对图数据进行深度学习的方法。图卷积中的“图”是指数学(图论)中用顶点和边建立的有相关联系的拓扑图,而积指的是“离散卷积”,其本质就是一种加权求和,加权系数就是卷积核的权重系数。

Pytorch神经网络实战学习笔记_42 基于空间域的图卷积GCNs(ConvGNNs):定点域+谱域+图卷积的操作步骤

图结构数据是具有无限维的一种不规则数据,每一个顶点周围的结构可能都是独一无二的,没有平移不变性使得传统的CNN、PNN无法在上面工作。

1 GCN

如果说CNN是图像的特征提取器,那么GCN便是图数据的特征提取器。

CNN可以直接对矩阵数据进行操作,而GCN操作方式有两种:谱域和顶点域。

1.1 基于谱域的图处理

谱域是谱图论中的一个术语。谱图理论起源于天文学。在天体观测中,通过观测光谱可以观测到远处的天体。同样,图表是描述图表的重要工具。

光谱仪理论研究如何通过几个易于计算的量化来描述图形的属性。通常的做法是将图结构的数据编码成矩阵,然后计算矩阵的特征值。该特征值也称为图谱。编码矩阵可以理解为图的谱域。

谱是方阵的独特性质。对于任何非欧几里得空间数据,必须通过计算其定量描述生成方阵,然后才能获得进一步的谱。

GCN使用图结构中的度矩阵和邻接矩阵来表示图的谱域,这就是基于谱域实现。

GCN对矩阵的拉普拉斯变换,则是对图结构提取特征(谱)的一种方法。

1.2 基于定点域/空间域的图处理

指由图本身的结构形成的空间,直接根据图的结构,根据相邻顶点之间的关系和每个顶点自身的属性,逐个顶点计算。

1.3 基于顶点域的图卷积

基于顶点域的图卷积处理比谱域更直观、更容易理解。

1.3.1 图卷积公式

Pytorch神经网络实战学习笔记_42 基于空间域的图卷积GCNs(ConvGNNs):定点域+谱域+图卷积的操作步骤Pytorch神经网络实战学习笔记_42 基于空间域的图卷积GCNs(ConvGNNs):定点域+谱域+图卷积的操作步骤

1.3.2 图卷积的操作步骤(从顶点的角度)

图卷积的操作就是在整个图上对每个顶点都按照上式(10-1)的描述执行一遍。从顶点的角度来看,主要可以分成以下3个步骤:

Pytorch神经网络实战学习笔记_42 基于空间域的图卷积GCNs(ConvGNNs):定点域+谱域+图卷积的操作步骤

1、发射(send):每一个顶点将自身的特征信息经过变换后发送给邻居顶点。这一步是对顶点的特征信息进行抽取变换,如图10-2所示。

Pytorch神经网络实战学习笔记_42 基于空间域的图卷积GCNs(ConvGNNs):定点域+谱域+图卷积的操作步骤

2、接收(receive):每个顶点将邻居顶点的特征信息聚合。这一步是对顶点的局部结构信息进行融合,如图10-3所示。

Pytorch神经网络实战学习笔记_42 基于空间域的图卷积GCNs(ConvGNNs):定点域+谱域+图卷积的操作步骤

3、变换(transform):将前面的信息聚合之后进行非线性变换,增加模型的表达能力,如图10-4所示。

Pytorch神经网络实战学习笔记_42 基于空间域的图卷积GCNs(ConvGNNs):定点域+谱域+图卷积的操作步骤

使用GCN从图数据中提取的特征可以用于对图数据执行多种任务,如顶点分类、图分类(graph classification)和边预测(Iinkprediction),还可以顺便得到图的垂入表示。

1.3.4 图卷积的特性

  1. 局部参数共享:算子适用于每个顶点(圆圈代表算子),处处共享。
  2. 感受野与层数成正比:在开始时,每个顶点都包含其直接邻居的信息。在计算第二层时,可以将邻居顶点的信息包括在内,这样操作所涉及的信息就越来越充分了。 .层数更广,操作涉及的信息更多(逐层提取特征,每增加一层会更抽象,更高级)。

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
xiaoxingxing的头像xiaoxingxing管理团队
上一篇 2022年4月1日 下午8:54
下一篇 2022年4月1日 下午9:06

相关推荐