图卷积神经网络 GCN 沈华伟(1 谱方法)

视频连接:2020 CCF 沈华伟 GNN

   

   

1.概述

卷积神经网络的成功的原因:能够学习到数据中局部信息,通过局部化卷积核,实际上是一种参数共享的方式。

然后通过逐层堆叠的方式,把局部的卷积核变成多尺度的层次模式。从而实现特征学习的一个效果。

1.1 局部卷积核:

平移不变性,可以得到与位置无关的一些pattern

   

   

2.卷积的迁移

   

2.1难点

怎么将欧氏空间的卷积转移到非欧氏空间(non-Euclidean domain)中,比如说graph,其结构是非规则的难以定义卷积。

   

图像与网络:

我们可以想象为一个规则的网络,像素代表一个节点,其卷积核可以简单的定义。但是真实世界中的网络,要远比上述网络复杂。

   

真实网络节点的度分布差异非常大,有类似核心节点(微博大V),也有类似边缘节点,不像图像抽象出的网络只有上下左右存在度。

每个节点的邻居数不同,所以很难定义满足平移不变性的卷积核。这是图上定义卷积的很大的一个难点。

   

2.2 网络卷积的运用

CNN迁移到图上定义图上,总体来说还是这两点:

如何定义图上的卷积;定义图上的pooling(下采样这样的操作),但是pooling和具体的任务相关,如果和节点相关,也就不需要下采样。

2.2.1 卷积:

两个函数点积之后,做积分,生成第三个函数

   

信号处理中,g即一个方波;f即为是个信号,横轴为时间。

   

离散情况下,如图像中,卷积核即为一个patch,在图像的像素上滑动,抽取局部的信号。

举例:掷骰子,两次骰子,和为8的概率是多少?(2+6;3+5;4+4;5+3;6+2五种情况的概率之和)

   

2.2.2 图上卷积:

定义有两种方法,

一种是空间方法,但是网络中每个节点的邻域大小多少不一致,很难有进展;

另一种是谱方法,将原来的图 从节点域里变化到谱域里(利用卷积定理和傅里叶变换实现),在谱域里再定义卷积核。面临的挑战:其卷积不再局部化,会带来网络特征较大范围的改变。

   

2.2.3 谱方法:

输入图GW为其带权重的邻接矩阵。每个节点还有一个d维的特征,则n个节点形成特征矩阵X:Shape(n, d),每一个维度都理解成定义在这n个节点的一个信号,类似于图像中RGB三维特征。

这里可以看出,图的处理,本质上也与信号处理过程类似。

图拉普拉斯(Graph Laplacian):

参考信号处理的方式,我们有图拉普拉斯(Graph Laplacian)方式进行处理:实际上对信号求导数操作,获得信号在图上的平滑程度,称之为拉普拉斯算子

   

   

1)拉普拉斯矩阵:

拉普拉斯矩阵式带权度矩阵与带权邻接矩阵之差。度矩阵是一个对角阵,每一行的元素维邻接矩阵该行之和。

但是我们常用其normalized版本,数学性质更好。I是单位矩阵。

通过拉普拉斯矩阵即可实现将信号转移到谱域中去。


2)图傅里叶变换

参考连接:1、23

上面我们说到,图上的信号一般表达为一个向量。假设有n个节点。在这一节,我们将图上的信号记为:

每一个节点上有一个信号值。类似于图像上的像素值。

傅里叶反变换的本质,是把任意一个函数表示成了若干个正交基函数的线性组合

图上的信号如果要进行傅里叶变换,我们也需要找到一组正交基,来表达x。

任意的图上的信号可以表示为:

所以,图上的傅里叶变换,实际上是求一个表示的参数(权重),最终我们取这个表示的参数(权重),来替代这组信号,就是在谱域里面的表达。

3)在谱域上定义卷积:

图上的傅里叶变换只是一个手段,定义卷积利用的是卷积定理

卷积定理是傅立叶变换满足的一个重要性质。卷积定理指出,两个函数的卷积的傅立叶变换是两个函数分别傅立叶变换后的乘积。(百度百科)

因此可得:

两个信号,一个x一个y,

  • 分别做傅里叶变换后,取其权重,得到两信号在谱域上的表示,进行点积操作;
  • 然后进行傅里叶逆变换,就可以得到在节点域的卷积操作。

所以,我们将UTy作为卷积核,与信号x进行点积操作,再进行逆变换。

   

总结:

  • 把信号x变换到谱域中(这一步需要傅里叶变换),
  • 在谱域中,定义一个卷积核(设初始值,反向传播进行调整),与信号x在谱域中的表达做点积。
  • 最后进行逆变换,把谱域中的卷积转换到空间域或者说节点域中

   

   

这是CNN作者的原始方法,谱方法但是存在缺陷(挑战)

  • 依赖 拉普拉斯矩阵的特征分解,时间复杂度高,O(n3),且特征向量是稠密的计算代价太高,
  • n*n的拉普拉斯矩阵求特征向量复杂度是O(n2)
  • 在节点域上不是局部化的,

   

   

3.缺陷改进

3.1ChebyNet:参数化卷积核;

这里使用了拉普拉斯矩阵的特征值,改造卷积核。

原来的卷积核是反向传播算法得到的,这里将它改造,写成一个由固定对角阵形成的多项式,这个对角阵,就是拉普拉斯矩阵的特征值形成的对角阵。经过简化变换,可以发现卷积操作只剩拉普拉斯矩阵和输入信号。β为参数,实际上通常K很小 0-9 六度分割。

三个好处:

不需要特征分解了,时间复杂度降低到O(K|E|),卷积操作变为局部化的操作。

   

3.2 继续改进:Graph Wavelet Neural Network

ICLR2019,图小波神经网络:paper

chebNet的主要工作:

把原来自由的卷积核,用多项式函数做参数化,实现了图卷积核取值空间的约束,进而不再依赖逆傅里叶变换,也实现了局部化。

作者更改傅里叶基为小波基

   

   

但是这样操作,时间复杂度较高O(n*p*q)

   

   

   

   

posted @ 2020-06-08 22:07  森林1997  阅读(421)  评论(0编辑  收藏