【机器学习】图卷积网络GCN的原理及Pytorch实现

一、背景知识

1.1 GCN的作用

欧几里得结构:CNN处理的数据是矩阵形式,就是以像素点排列成的矩阵为基础。称为Euclidean Structure,欧几里得结构。

拓扑结构(图结构):GCN处理的数据是图结构,即Non Euclidean Structure非欧几里得结构,拓扑结构。如社交网络连接,信息网络等等。对于Non euclidean structure的数据,卷积神经网络就没有用了。

对于卷积神经网络CNN,图片中提取特征,可以采用卷积的方式提取特征。但是对于拓扑结构,只能用其他方法来提取特征。因此使用GCN来提取拓扑结构图中的特征。

1.2 傅立叶变换

傅立叶变换:将一个域的信号转换到另一个域,便于我们分析与运算。

傅立叶变换的性质:原域进行卷积,相当于频域进行相乘,即:
f ∗ g = F − 1 { F { f } ⋅ F { g } } f * g=\mathcal{F}^{-1}\{\mathcal{F}\{f\} \cdot \mathcal{F}\{g\}\} fg=F1{ F{ f}F{ g}}
即一个域相乘,相当于另一个域卷积;一个域卷积,相当于另一个域相乘。

算图域卷积相当于傅立叶域相乘,那先对图和卷积核做傅立叶变换后相乘,再傅立叶反变换回来,就得到了图域卷积。

1.3 图的拉普拉斯矩阵

图的拉普拉斯矩阵定义为:L = D - A请添加图片描述
L为拉普拉斯矩阵Laplacian matrix;
D为对角度矩阵Degree matrix,对角线上的元素是顶点的度,即该元素链接的元素的个数;
A为邻接矩阵 Adjacency matrix ,即表示任意两个顶点之间的邻接关系,邻接则为1,不邻接则为0。

1.4 傅立叶变换与拉普拉斯矩阵的关系

传统傅立叶变换的基,就是拉普拉斯矩阵的一组特征向量。
L = U Λ U T = U ( λ 1 ⋱ λ n ) U − 1 L=U \Lambda U^{T}=U\left(\begin{array}{ccc} \lambda_{1} & & \\ & \ddots & \\ & & \lambda_{n} \end{array}\right) U^{-1} L=UΛUT=Uλ1λn

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值