论文笔记:Spectral Networks and Deep Locally Connected Networks on Graphs

前言

这篇文章是最早提出将CNN扩展到图上,直接处理图类型的数据而不需要对图类型的数据进行转化。
这篇文章可以说是GCN领域的开山之作,在文中直接指出了日后GCN领域研究的两大方向:基于空域和基于频域。在此篇博客中着重对基于空域的GCN进行解读,关于基于空域GCN的理论框架在上一篇博客中基于频域GCN理论基础(拉普拉斯矩阵与傅里叶变换)

1.综述

卷积神经网络在图片和音频的识别任务中表现良好,是充分利用了信号在其域中的局部平移不变性
何为局部平移不变性
1.首先明确何为平移不变性:
在欧几里得几何中,平移是一种几何变换,表示把一幅图像或一个空间中的每一个点在相同方向移动相同举例,比如对图像分类任务来说,图像中的目标不管被移动到图片的哪个位置,得到的结果(标签)应该是相同的,这就是卷积神经网络中的平移不变性。平移不变性意味着系统产生完全相同的响应(输出),不管它的输入是如何平移的 。

2.在CNN中如何实现平移不变性
在CNN中卷积被定义为不同位置的特征检测器,同时存在的池化操作返回局部感受野中最显著的值。两者结合起来提供了CNN的局部平移不变性,通俗来说就是通过卷积+池化的操作以后不管某一特征移动了位置,总可以检测出来输入到下一层中,且全连接层是加权求和计算被CNN激活的特征又可以传导到下一层中

3.基于CNN引发的对GCN的西靠
但由于图是非欧氏空间的数据结构无法进行传统意义上的卷积操作,但是同时又希望卷积的思想可以应用在图结构上。于是作者基于此提出了两种结构,一种基于域的层次聚类(空域),另一种基于图拉普拉斯矩阵(频域)

同时作者通过实验证明对于低维图而言,学习卷积层成为可能因为存在大量与输入大小无关的变量。于是得到了有效的深层结构

2.CNN高效的原因及与GCN的关系

无论是文本数据(1D)还是图片数据(2D)都是规则化的数据。以图片为例,CNN可以利用几种有效的结构减少系统中的参数数量:
1.固定大小的卷积核在图上进行遍历,在此过程中用卷积+非线性变换的激活函数替代了一般化的线性映射。提高深层次特征提取能力同时,同一卷积核在一张图上共享权重,大大减少了参数的数量
2.由于网格上的结构特点,可以支持紧凑的过滤器,其支持的过滤器通常比输入信号的尺寸小的多。这里的意思是卷积核的尺寸远小于输入图片的尺寸因此可以更加紧凑的提取特征???
3.网格的结构允许多尺度的二元聚类,也就是子采样操作,在CNN中通过步长卷积和池化实现

这里举了一个例子:
如果在 d d d维网格上有 n n n个输入坐标,则有 m m m个输出的全连通层,需要 n ∗ m n*m nm个参数,在典型的运行状态下,其复杂度为 O ( n 2 ) O(n^2) O(n2)参数。使用任意的过滤器而不是通用的全连接层可以将每个特征图的复杂度降低到 O ( n ) O(n) O(n)个参数,就像通过构建“局部连接”网络来使用度量结构一样。结合使用这两种方法给出了 O ( k ⋅ S ) O (k·S) O(kS)参数,k是特征图的数量和S的支持过滤器,因此学习复杂性不依赖于 n n n。最后,使用多尺度二元聚类使每个继承层使用比 2 d 2^d 2d更少的(空间)坐标/过滤器。

图提供了一个自然的框架来概括低维网格结构,并扩展了卷积的概念。巴拉巴拉一大堆终于说到了正题上。在此篇文章中在图上讨论深层神经网络,而不是规则的网络上,提出了两种不同的结构。第一个是,我们展示了一个可以将上述结构(2)和(3)扩展到一般图的结构,并使用它们来定义“局部”连接和池化层,这需要 O ( n ) O(n) O(n)参数而不是 O ( n 2 ) O(n^2) O(n2)称之为空间结构。另一种结构,称之为谱结构它利用了傅里叶域中卷积的性质同时结合了图的拉普拉斯算子从而实现将原域的卷积转换到了傅里叶变换下频域的相乘。看到这里可以说这篇文章是第一代GCN不为过,直接确定了日后GCN的两个研究方向空域和频域。

3.空域GCN

最直接的概括如何泛化CNN到一般图的要点就是:多尺度、分层次、感受野

3.1图的局部性概念

在图中用加权图 G = ( ω , W ) G=(\omega,W) G=(ω,W)表示 ω \omega ω是大小为 m m m的离散集, W W W m ∗ m m*m mm大小的对称非负矩阵
局部性的概念在图的上下文中很容易推广。实际上,图中的权重决定了局部性的概念。例如,一个简单的方式来定义W的邻居是设定一个阈值δ> 0和把邻居设置为
在这里插入图片描述
我们可以将注意力限制在稀疏的“过滤器”上,感受野由这些邻域给出以获得局部连接的网络,从而将一个过滤器层中的参数的数量减少到 O ( S ⋅ n ) O(S⋅n) O(Sn) S S S是平均的邻居大小。换句话说就是可以根据权重值来筛选某一结点的邻居

3.2图的多分辨率分析( Multiresolution Analysis on Graphs)

其实就是一种图聚类操作
由CNN上的操作所启发,作者介绍了一种图上的操作,此操作类比于CNN中池化和下采样可以减少CNN中feature map的大小。通过这种操作可以在图上进行类似于池化的操作以减少特征图的尺寸,简单来说就是在图上将多个点映射成一个点层层映射,达到减少图上点的目的。同时得到聚合了多个点且包含更丰富信息的点。这种方法叫做图的多分辨率分析( Multiresolution Analysis on Graphs).作者介绍此方法还是一个开放的研究领域也就是还没有定论,于是作者在此篇文章中将使用一种比较简单的凝聚方法。具体的凝聚过程如图所示
在这里插入图片描述
现在我们考虑有K个尺度。第0个尺度表示原始的图,即 Ω 0 = Ω \Omega_0=\Omega Ω0=Ω对于之后的每个尺度的特征图,定义为 Ω k , k = 1... K \Omega_k,k=1...K Ωk,k=1...K.聚类算法会把图 Ω k − 1 \Omega_{k-1} Ωk1分成 d k d_k dk类。 d 0 d_0 d0为原始图的结点数量 m m m因此图 Ω k − 1 \Omega_{k-1} Ωk1中每个结点的相邻结点可以定义为上述描述在这里插入图片描述
明确各符号的定义:

  1. K K K:聚类的层数,也就是网络的层数
  2. Ω \Omega Ω:代表着每一层网络的顶点个数,各层的输入信号 Ω k \Omega_k Ωk,原始的输入信号就是 Ω 0 \Omega_0 Ω0
  3. d k d_k dk:第 k k k层的下采样的cluster数,用于决定下一次输入feature的维
    度。
  4. N k , i N_{k,i} Nk,i:第k层的第i个neighborhoods,局部连接的接收域
  5. f k f_k fk:第k层的滤波器数目,graph中每一个点的特征数。

举例:
对于此图来说
第一层12个结点,第二层6个结点,第三层按图看是3个结点(图中未标明)
第一层有6个聚类,第二层有3个聚类,第三层图中未标明未知
相对而言每一层的邻域满足定义 N k N_k Nk={ N k , i ; i = 1... d k − 1 N_{k,i};i=1...d_{k-1} Nk,i;i=1...dk1}

3.3 深度局部链接网络(Deep Locally Connected Networks)

在这里插入图片描述
空域图卷积重点
如图所示为卷积+池化的整个操作过程,此图对应的就是图聚类的示意图,只不过聚类的时候含有多个滤波器,这种情况就可以对应于传统CNN操作。

这里需要注意的是:

  1. 卷积的输入的结点特征可能是一个向量,维度记为 f k − 1 f_{k-1} fk1.同时,一次卷积操作可能包含多个卷积核,即卷积的通道数 f k f_k fk类似与图像中的卷积,对输入特征的每一维做卷积,然后累加求和,就可以得到某个通道 j j j的卷积结果。
  2. x k = ( x k , i ; i = 1... f k − 1 ) x_k=(x_{k,i};i=1...f_{k-1}) xk=(xk,i;i=1...fk1) k k k层的输入,大小为 d k − 1 ∗ f k − 1 d_{k-1}*f_{k-1} dk1fk1, d k − 1 d_{k-1} dk1是第 k − 1 k-1 k1层的图聚类数量也就对应为下一层的结点数量, f k − 1 f_{k-1} fk1是第 k − 1 k-1 k1层特征的维度(也就是卷积核的数量)
  3. 公式中括号内的对滤波器和输入运算求和则完全对应于卷积操作,也就是卷积操作后根据卷积核的数量组成下一层的feature map
    核心公式为
    在这里插入图片描述
    明确变量意义:
  4. x ( k , i ) x_(k,i) x(k,i):第 k k k层信号的第 i i i个特征
  5. F k , i , j F_{k,i,j} Fk,i,j:第 K K K层的第 j j j个滤波器的第 i i i个值
  6. h h h:非线性激活函数
  7. L k L_k Lk:第 k k k层的池化操作
  8. ( ∑ i = 1 f k − 1 F k , i , j x k , i ) (\sum_{i=1}^{f_{k-1}}F_{k,i,j}x_{k,i}) (i=1fk1Fk,i,jxk,i):是对信号 x k x_{k} xk进行滤波器 F k , j F_{k,j} Fk,j操作也就是对每一个滤波器进行特征点层数上的相加类似于CNN中的卷积操作,同时考虑了个数为 f k f_k fk的这一层的滤波器个数类比于CNN中的通道数,之后在对每一个滤波器产生的值进行处理。局部性体现在滤波器中(滤波器由neighborhoods给定),表示其他的邻域内的信息向中心节点汇聚。之后经过 h h h的非线性激活和 L k L_k Lk的池化(figure1 所示的聚类操作),得到下一层的信号

4.结论

经过如上图所示的操作之后我们可以得出两点结论:

  1. 随着层数的增加,图的空间分辨率降低,即空间点数减少,因为由上述公式可知,我们在对一个邻域的结点进行滤波器操作之后进行了加权,也就是将一个邻域的结点的信息进行汇总,之后进行了池化操作。可以类比于欧氏空间的CNN操作。就是由多个滤波器作用于图片。每个滤波器得到的值进行拼接形成下一层的feature map
  2. 由图可知每一层的滤波器数目增加,在第二层为4个,第三层为6个

综上所述:信号输入到model后,卷积操作通过与滤波器 F F F实现( F F F由 neighborhoods 决定,实现 locally),之后通过聚类实现空间上的下采样,得到该层的输出结果。
使用空域构建,我们实现了CNN的特点(2)(3),但是很难实现特点(1)权重共享。从公式中我们可以看出,对于每个结点,卷积的权重是不同的。但是对于图像中的卷积,不同位置的卷积核的权重是共享的。主要的原因是在图G上无法使用传统的卷积公式计算,之前的内容只是近似的实现了卷积的操作。

5.优缺点

此种基于空域的GCN的优缺点如下
优点:
对于弱规则的图结构适用。也就是全局联系不大的图适用。因为整个操作的核心是基于聚类然后再聚类的局部进行卷积操作。如果整个图是有良好global embedding的高维图就没有聚类的优势反而会存在较大误差
缺点:
由图可知每个聚类的结点数可能不同同时采用不同的滤波器从而无法共享权重,在大图上导致了非常高的计算代价。换句话说就是CNN的单次卷积操作是由一个 filter 在整个数据立方(grid)上进行滑动(即 stride convolutions ),使得数据立方的不同位置可以使用同一个 fliter,而这个操作无法在 spatial construction 的 GCN 中实现。

6.频域卷积

在这里插入图片描述 V V V为图拉普拉斯 L L L的特征向量,按特征值排序。给出一个加权图,我们可以通过对权值的频谱进行操作来推广卷积网络,该谱由其图拉普拉斯的特征向量给出。
为了简单起见,让我们首先描述一个结构,每层 k = 1... K k = 1 . . .K k=1...K转换大小为 Ω × f k − 1 \Omega\times f_{k-1} Ω×fk1的输入向量 x k x_k xk到一个输出大小为 Ω × f k \Omega\times f_{k} Ω×fk的输出向量 x k + 1 x_{k+1} xk+1,也就是说,没有空间二次抽样

变量说明:

  1. x k , i x_{k,i} xk,i:第 k k k层的信号的第 i i i个特征
  2. F k , i , j F_{k,i,j} Fk,i,j k k k层的第 j j j个滤波器的第 i i i个值,整体来看这就是卷积核,在此表达式中是对称矩阵
  3. h h h非线性激活函数
  4. V V V图拉普拉斯矩阵的特征向量,由特征值排序

算法推导的具体流程可以详见我的上一篇博客
基于频域GCN理论基础(拉普拉斯矩阵与傅里叶变换)

7.实验

作者通过两个数字实验来证明模型的有效性。实验的数据集是MNIST。第一个实验是从原始28*28的图片中随机采样400个像素点,结果如图所示。这些像素点虽然还是有2-D结构,但是无法使用标准的卷积。
下采样MNIST数字举例
在这里插入图片描述展示了实验一构建的图的层次聚类结果,(a)k=1最细粒度的聚类结果 (b)k=3的聚类结果在这里插入图片描述
展示了图拉普拉斯矩阵的两个特征向量, 图拉普拉斯矩阵的两个特征向量u2,u20
在这里插入图片描述

这里分别使用Nearest Neighbor分类器,两层全连接神经网络作为对比模型。第一个实验的结果如表1所示,FC N N N表示全连接层( N N N维输出),LRF N N N表示空域卷积( N N N维输出),MP N N N表示max-pooling层( N N N维输出),SP N N N表示频域卷积( N N N维输出):
在这里插入图片描述MNIST中的数字由笔画构成,具有局部性。空域卷积明确地满足这一约束,而频域卷积并没有强制具有空间局部性.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
空域和频域卷积在下采样MNIST上学习得到的卷积核。(a)(b)在两个不同的cluster中编码相同的特征的两个不同的感受野。©(d)频域卷积学习得到的卷积核。(e)(f)带平滑约束的空域卷积学习得到的卷积核。

### 回答1: 这句话的意思是,使用快速局部谱滤波在图上进行卷积神经网络。在这个过程中,图像被表示为一个图,节点表示像素,边表示它们之间的关系。然后使用谱滤波器来处理这些图像,以便更好地捕捉它们之间的关系。由于使用了快速局部谱滤波器,因此可以有效地减少计算量,并提高计算效率。 ### 回答2: 卷积神经网络(CNN)在计算机视觉领域中被广泛应用,而针对图像上的卷积运算也得到了很好的改进。但是,对于图结构数据,卷积操作却变得更加困难。近年来出现了一些新的关于卷积神经网络用于图结构数据的方法,如基于图卷积网络(GCN)等。本文要介绍的“convolutional neural networks on graphs with fast localized spectral filtering”,即基于图谱的局部快速滤波的卷积神经网络,是另一种针对图结构数据的卷积方法。 传统的CNN通常采用局部的、线性的滤波器来提取图像的空间特征。而对于图结构数据,由于图上两个节点之间的关系是任意的,以及节点的特征不一定是有序的,因此无法直接地应用局部的卷积操作。但是,与图结构数据相对应的,是一个特殊的函数——图谱,它提供了丰富的图结构信息。 图谱(即拉普拉斯矩阵)是一个对称的稀疏矩阵,反映了图结构和节点特征之间的关系。将图谱的特征值和特征向量作为滤波器,就可以将图上的卷积操作转化为图谱卷积的形式。尤其是,利用局部滤波器就可以实现对图上节点嵌入向量的快速计算。 该方法涉及到了图谱嵌入、拉普拉斯矩阵、小批量图谱卷积核的设计等方面的内容。其中,图谱嵌入是将图结构数据映射为一个低维向量表示的过程,具有降维和特征抽取的作用;拉普拉斯矩阵是反应了图结构的一类矩阵,与图谱嵌入有密切关系;在卷积核设计方面,考虑到图结构的多样性和规模,将设计小批量卷积核进行快速的局部卷积操作,以提高计算效率。 该方法的优点在于,可以处理任意结构的图像和非图像数据,并且具有较好的鲁棒性和泛化能力。是否可以进一步提高计算效率,仍需更多的研究来探索。 ### 回答3: 卷积神经网络是一种基于多层神经元的深度学习算法,被用于图像、文本和声音等领域。最近,学者们开始研究如何将卷积神经网络应用于图形数据,如社交网络、交通网络和化学分子。其中,卷积神经网络特别适合处理图形数据,因为它可以学习局部特征,并保持局部空间关系。因此,卷积神经网络在图形任务上取得了许多优秀成果。 然而,之前的卷积神经网络模型存在一些不足,比如缺乏设计可解释性、效率低下、过度拟合等。为了解决这些问题,一种新的基于谱滤波的图形卷积神经网络被提出,即convolutional neural networks on graphs with fast localized spectral filtering。 这种方法在卷积层引入了局部谱滤波器,能够提高模型的效率和可解释性。谱滤波器可以学习图形数据的空间结构特征,能够捕捉节点之间的相邻关系和密度。而局部谱滤波器则针对每个节点的邻居子图进行滤波,使模型能够更好地识别图形数据中的局部特征。 此外,该方法还能够解决过拟合问题。过拟合是神经网络经常遇到的问题,即模型在训练集上表现极佳,但在测试集上表现不佳。谱滤波器可以在输入数据中学习的特征不够显著时,利用图形数据的全局谱信息进行补充,并减少过拟合的发生。 总之,convolutional neural networks on graphs with fast localized spectral filtering是一种高效、可解释、稳定的图形卷积神经网络。此方法在实际应用中有很大的潜力,如社交网络分析、城市交通预测、生物学和化学分子分析等领域。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值