此博文是对深蓝学院《图卷积神经网络》课程笔记进行整理,简要阐述了谱域图卷积背景知识以及经典的图谱卷积模型。
其中背景知识先摆出结论,之后通过提问题的方式循序渐进引出各种知识点,如图谱卷积定理、傅立叶变换、拉普拉斯矩阵等;经典的图谱卷积模型有SCNN、ChebNet、GCN。
欢迎各位前辈们指出问题,一起交流。
未经授权禁止转载。
一、谱域图卷积定理
即:
- 将空域信号转换到频域,然后相乘。
- 在将相乘的结构再转换到空域。
问题来了:
- 空域信号如何转换到频域?通过图傅立叶正变换
- 频域信号如何转换到空域?通过图傅立叶反变换
二、图傅立叶变换
经典傅立叶反变换的本质:把任意一个函数表示成了若干个正交基函数的线性组合。
经典傅立叶正变换的本质:求线性组合的的系数。具体做法是由原函数和基函数的共轭的内积求得。
类比到图中
图傅立叶反变换:任意的图上信号可以表示为若干个正交基的线性组合。
其中x是原信号
用矩阵表示:
图傅立叶反变换(帮助信号从频域转换到空域):
图傅立叶正变换(帮助信号从空域转换到频域):
问题来了:
- 如何确定图傅立叶变换中的正交基?使用拉普拉斯矩阵
三、拉普拉斯矩阵
定义:图的拉普拉斯矩阵 = 图的度矩阵 - 邻接矩阵 (L = D - W)
性质:拉普拉斯矩阵是对称半正定矩阵,故
- 拉普拉斯矩阵的n个特征向量是n维空间中的一组标准正交基
- 实数拉普拉斯矩阵的特征向量一定是实向量
- 拉普拉斯矩阵的特征值一定非负(特征值类似频率,低特征值对应的特征向量比较平滑,高特征值对应的特征向量变换比较剧烈。两者对应于低频基函数和高频基函数。)
问题来了:
1、为什么使用拉普拉斯的特征向量作为图傅立叶变换的基?
因为经典傅里叶变换的基函数是拉普拉斯算子的本征函数(类似特征向量),又因为拉普拉斯矩阵就是图上的拉普拉斯算子。
所以类似,图傅里叶变换的基函数即为图拉普拉斯矩阵的特征向量。
2、为什么拉普拉斯矩阵是图上的拉普拉斯算子?
拉普拉斯算子定义:在n维欧几里得空间,可以认为拉普拉斯算子是各个维度求二阶导数后求和的结果。
例如:
离散情况下的拉普拉斯算子:
故类比到图上,拉普拉斯算子为:
节点i和j有边相连。
拉普拉斯算子即为中心节点i与周围节点j信号的差值再求和。
对于整个图来说:
D为图的度矩阵,W为图的邻接矩阵。
所以拉普拉斯矩阵是图上的一种拉普拉斯算子。
这也是为什么 度矩阵-邻接矩阵 的结果被命名为拉普拉斯矩阵。
四、小结
x是原信号, 是谱域信号,U是图的拉普拉斯矩阵的特征向量组合成的矩阵。
harmand乘积是对应元素相乘:
去掉harmand乘积,变为矩阵相乘形式,同时,通常我们并不关心空间域上的滤波器信号g是什么样子的,只关心其在频率域的情况。
所以令 ,公式转变为
即
三个经典图谱卷积模型
SCNN: 用可学习的对角矩阵来代替谱域的卷积核。
由k层到k+1层的卷积:
缺点:
- 计算拉普拉斯矩阵的特征值分解非常耗时
- 参数多、复杂度大
ChebNet:采用Chebyshev多项式代替谱域的卷积核。
特点:不需要对拉普拉斯矩阵做特征分解,省略了最耗时的步骤。
GCN:为ChebNet的进一步简化。仅考虑1阶切比雪夫多项式,且每个卷积核仅有一个参数。(忽略了input channel和output channel)