深入浅出GCN------Graph Convolutional Network
文章目录
深入浅出GCN------Graph Convolutional Network
1 什么是GCN?
2 提取拓扑图空间特征的两种方式?
3 GCN的过度平滑问题?
4 GCN相关资料?
1 什么是GCN?
类似于社交网络、信息网络这样的图论中抽象意义的拓扑图。
2 提取拓扑图空间特征的两种方式?
vertex domain(spatial domain)是非常直观的一种方式。顾名思义:提取拓扑图上的空间特征,那么就把每个顶点相邻的neighbors找出来。
思考两个问题??
a 如何去找中心节点的邻居?
b 按照什么方式处理包含不同数目neighbors的特征?
推荐论文:Learning Convolutional Neural Networks for Graphs (mlr.press)
spectral domain:这种思路就是希望借助图谱的理论来实现拓扑图上的卷积操作。
要点来啦!!!!!!!!
Q1 什么是Spectral graph theory?
简单的概括就是借助于图的拉普拉斯矩阵的特征值和特征向量来研究图的性质。具体参考论文。
Q2 什么是拉普拉斯矩阵?
首先我们先来认清拉普拉斯矩阵。
对于图G=(V,E),其Laplacian 矩阵的定义为L=D-A。其中L是Laplacian 矩阵,D是顶点的度矩阵(对角矩阵),对角线上元素依次为各个顶点的度,A是图的邻接矩阵。
看个示例:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Awyymfob-1638858859050)(D:\DBLab\MyNote\TyporaImages\image-20211207132117093.png)]
事实上,常用的拉普拉斯矩阵实际有三种:
a.Combinatorial Laplacian:
b.Symmetric normalized Laplacian:
c.Random walk normalized Laplacian:
Q3 为什么GCN要用拉普拉斯矩阵?
拉普拉斯矩阵是对称矩阵,可以进行特征分解(谱分解),这就和GCN的spectral domain对应上了
拉普拉斯矩阵只在中心顶点和一阶相连的顶点上(1-hop neighbor)有非0元素,其余之处均为0
Q4 拉普拉斯矩阵的谱分解(特征分解)?
重要提醒:不是所有的矩阵都可以特征分解,其充要条件为n阶方阵存在n个线性无关的特征向量。
拉普拉斯矩阵是半正定对称矩阵(半正定矩阵本身就是对称矩阵),有如下三个性质:
a.实对称矩阵一定n个线性无关的特征向量
b.半正定矩阵的特征值一定非负
c.实对阵矩阵的特征向量总是可以化成两两相互正交的正交矩阵
3 GCN的过度平滑问题?
参考链接:如何解决图神经网络(GNN)训练中过度平滑的问题? - 知乎 (zhihu.com)
4 GCN相关资料?
必读论文:清华大学孙茂松组:图神经网络必读论文列表 (qq.com)
动手教程:图卷积网络到底怎么做,这是一份极简的Numpy实现 (qq.com)
最后
参考文章:如何理解 Graph Convolutional Network(GCN)?
————————————————
版权声明:本文为CSDN博主「努力AC的潇潇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xiao_muyu/article/details/121768767