卷积后的特征有负数吗?_图卷积GCN

什么是卷积

炫云:卷积与傅里叶变换的关系

卷积的数学定义是

一般称g为作用在f上的filter或kernel

一维的卷积示意图如下

9934f4cc77e426095116de99de8bb012.png

大家常见的CNN二维卷积示意图如下

d688e5f9b425deeb1ee9f213294dce5a.png

在图像里面卷积的概念很直接,因为像素点的排列顺序有明确的上下左右的位置关系。

那在抽象的graph里面卷积该怎么做呢

3d2a1b9f0d547d6465059b46b855ba8b.png

比如这个社交网络抽象出来的graph里面,有的社交vip会关联上万的节点,这些节点没有空间上的位置关系,也就没办法通过上面给出的传统卷积公式进行计算。

傅里叶变换

炫云:傅里叶变换​zhuanlan.zhihu.com
fb7bb57013a1bce513b8037ede4522d5.png

为了解决graph上卷积计算的问题,我们给出第二个装备--傅里叶变换。

先上结论,根据卷积定理,卷积公式还可以写成

这样我们只需要定义graph上的fourier变换,就可以定义出graph上的convolution变换。

f2e023bbad1ff69e189305b01e1b2fdb.png

好的,先来看下Fourier变换的定义

Inverse Fourier变换则是

根据Fourier变换及其逆变换的定义,下面我们来证明一下卷积定理

我们定义

的卷积,那么

带入

;

最后对等式的两边同时作用

,得到


拉普拉斯算子

一阶导数定义为

拉普拉斯算子简单的来说就是二阶导数

那在graph上,我们可以定义一阶导数为

其中

的邻居节点

那么对应的Laplacian算子可以定义为

定义

的度数矩阵(degree matrix)

定义

邻接矩阵(adjacency matrix)

那么图上的Laplacian算子可以写成

标准化之后得到

Graph Fourier变换

定义Laplacian算子的目的是为了找到Fourier变换的基

比如传统Fourier变换的基

就是Laplacian算法的一组特征向量

,
是一个常数

那么图上的Fourier基就是

矩阵的n个特征向量
可以分解为

其中

是特征值组成的对角矩阵

拉普拉斯矩阵的特征向量构成了傅里叶变换的基,在图上做傅里叶变换就是将图上的信号(特征)投影到正交空间中,表示成了拉普拉斯矩阵特征向量的线性组合。

那么Graph Fourier变换可以定义为

其中

可以看做是作用在第
个点上的signal,用向量
来表示

的的对偶向量,
是矩阵
的第
行,
是矩阵
的第
行。

那么我们可以用矩阵形式来表示Graph Fourier变换

类似的Inverse Graph Fourier变换定义为

它的矩阵形式表达为


将图上的傅里叶变换推广到图卷积

走到这里,我们已经获得了新手村的所有装备,下面就开始推导GCN的公式。

还记得我们之前提到的先上卷积定理吗

那么图的卷积公式可以表示为

,即将信号经过傅里叶变换到频域中,在频域中进行卷积,再逆变换回去。

重新整理一下,对于图来说,如果节点的特征为

,把
看成是关于特征值的滤波函数,,所以一般写成

所以多层layer的图卷积可以表示成如下形式

以上就是谱图卷积的基本形式。

作为图卷积的filter函数

,我们希望具有很好的局部性。就像CNN模型里的filter一样,只影响到一个像素附近的像素。那么我们可以把
定义成一个laplacian矩阵的函数

587249aeb49aefb37483ee932789e5ec.png

作用一次laplacian矩阵相当于在图上传播了一次邻居节点。进一步我们可以把

看做是
一个laplacian特征值的函数,参数为

改写上面的图卷积公式,我们就可以得到论文SEMI-SUPERVISED CLASSIFICATION WITH GRAPH CONVOLUTIONAL NETWORKS

https://arxiv.org/pdf/1609.02907.pdf​arxiv.org

的公式(3)

可以看到这个卷积计算的复杂度是非常高的,涉及到求laplacian矩阵的特征向量,和大量的矩阵计算。下面我们考虑对filter函数做近似,目标是省去特征向量的求解

其中

是Chebyshev多项式。这里可以把简单
简单看成是
的多项式。

因为

所以上面filter函数可以写成

的函数

设定

那卷积公式可以简化为

那么再加上激活层,我们就可以得到最终的GCN公式

空域图卷积

一般来说,空域图卷积的本质就是不断聚合节点的邻居信息

最原始的GCN,其实就是

谱图卷积是空域图卷积的特例

既然

是一个关于特征值的可学习的参数,那么可以重写成
,其中
是特征值的函数。

如果将

写成列求和的形式
,并调整求和顺序

定义

,则有

最终,写成矩阵的形式

这就是空域下的图卷积形式!

空域下的图卷积和谱图卷积滤波器的联系

,我们可以得到
,所以卷积操作其实是一个让特定频率通过的滤波器集合.

所以,图卷积的本质就是设计一系列的滤波器对图上的信号进行聚合!对于谱图卷积,我们可以直接分析得到对应的滤波器形式,而对于复杂的空域图卷积,我们可以使用下式进行反推。

由于不同的数据库有不同的拉普拉斯矩阵,所以其最大特征值

也不一样,我们根据以上分析就可以自己设计不同的滤波器,去捕获不同的信息以此来获得更好的性能。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值