GCN阅读随笔

最近帮老师申自科项目需要涉及图卷积网络,paper和各种帖子看了不少,这里做个记录

从 CNN 到 GCN 的联系与区别——GCN 从入门到精通


 

作者:superbrother
来源:https://www.zhihu.com/question/54504471/answer/332657604

图卷积与CNN类似,本质上就是要利用一个共享参数的过滤器(卷积核),通过计算中心像素点以及相邻像素点的加权和来构成feature map实现空间提特征的提取。

卷积核系数确定的方法是:随机化初值,根据误差函数通过反向传播梯度下降进行迭代优化。卷积核的参数通过优化求出才能实现特征提取的作用,GCN理论的很大一部分工作就是为了引入可以优化的卷积参数

那么为什么要研究GCN?原因有三:

(1)CNN无法处理Non Euclidean Structure的数据,学术上的表达是传统的离散卷积(如问题1中所述)在Non Euclidean Structure的数据上无法保持平移不变性。通俗理解就是在拓扑图中每个顶点的相邻顶点数目都可能不同,那么当然无法用一个同样尺寸的卷积核来进行卷积运算。(2)由于CNN无法处理Non Euclidean Structure的数据,又希望在这样的数据结构(拓扑图)上有效地提取空间特征来进行机器学习,所以GCN成为了研究的重点。(3)读到这里大家可能会想,自己的研究问题中没有拓扑结构的网络,那是不是根本就不会用到GCN呢?其实不然,广义上来讲任何数据在赋范空间内都可以建立拓扑关联,谱聚类就是应用了这样的思想(谱聚类(spectral clustering)原理总结)。所以说拓扑连接是一种广义的数据结构,GCN有很大的应用空间。

综上所述,GCN是要为除CV、NLP之外的任务提供一种处理、研究的模型。

提取拓扑图空间特征的两种方式

Vertex Domain

核心思想:把每个顶点相邻的neighbors找出来,其中蕴含两个问题:

  • 按照什么条件去找中心的neighbors,即如何确定receptive field
  • 按照什么方式处理包含不同数目neighbors的特征

Spectral Domain

借助图谱理论(Spectral Graph Theory)来实现拓扑图上的卷积操作,从研究进程上来看是:首先研究GSP(graph signal processing)的学者定义了graph上的Fourier Transformation,进而定义了graph上的convolution,最后与深度学习结合提出了Graph Convolutional Network。

拉普拉斯矩阵的知识对数学功底有一定要求,因为想要快速地对GCN有一个系统性的认知,目前没有花时间磕相关理论,所以先按下不表。

原文地址:https://www.cnblogs.com/heiheixiaocai/p/12345925.html