论文链接:https://arxiv.org/abs/1710.10370
谱图卷积神经网络(Spectral graph convolutional neural networks, CNNs)需要对卷积进行近似,以降低计算复杂度,导致性能损失。本文提出了拓扑自适应图卷积网络(TAGCN),这是一种定义在顶点域上的图卷积网络。我们提供了一种系统的方法来设计一组固定大小的可学习滤波器来执行图上的卷积。这些滤波器在扫描图进行卷积时,其拓扑结构与图的拓扑结构相适应。TAGCN不仅继承了CNN对于网格结构数据卷积的特性,而且与图信号处理中定义的卷积一致。由于不需要对卷积进行近似,TAGCN在一些数据集上表现出比现有频谱cnn更好的性能,并且比其他最近的方法在计算上更简单。
卷积神经网络(CNN)架构在各种学习任务中展示了最先进的性能,卷积作为特征提取器,处理1D, 2D和3D网格结构数据,如声信号,图像和视频。然而,当CNN应用于任意图上由于不是规则的网格结构,(通常的)卷积操作并不适用,因为图上每个顶点的邻居数量和拓扑结构都是不同的,并且很难设计一个固定大小的滤波器扫描图结构数据进行特征提取。
最近,人们对图CNNs的兴趣越来越大,研究员们试图将深度学习方法推广到图结构数据,特别关注图卷积的设计。本文提出了拓扑自适应图卷积网络(TAGCN),这是一种统一的卷积神经网络,用于学习图结构数据的非线性表示。它同时在图上滑动一组固定大小的可学习滤波器,输出是这些滤波器输出的加权和,提取顶点特征和顶点之间的相关性强度。它的应用是让每一个滤波器自适应在拓扑的局部区域的图上。TAGCN将频谱和顶点域的滤波统一起来;该模型对有向图和无向图都适用。
一般来说,现有的图cnn可以分为两类:谱域技术和顶点域技术。首先,cnn被推广到图结构数据中,卷积是根据卷积定理在频谱域中通过点积实现的。随后,研究员们分别提出了利用Chebyshev多项式和Cayley多项式的基于频谱滤波的方法。Kipf & Welling(2017)简化了这种谱方法,并在顶点域得到了一个滤波器,实现了最先进的性能。一部分研究人员致力于设计图cnn顶点域的特征传播模型、另外的一批则研究将图结构数据转化为嵌入向量来解决学习问题。最近研究提出了图注意网络利用隐藏的自注意层来解决近似现有的图卷积网络。然而,如何将cnn从网格结构数据扩展到具有局部特征提取能力的任意图结构数据仍然是一个开放的问题。
我们严格地将顶点域上的图卷积运算定义为图邻接矩阵的多项式相乘,这与图信号处理中的卷积概念是一致的。在图信号处理中邻接矩阵的多项式是图滤波器,将传统时间或基于图像的信号处理中通常的滤波器概念扩展到基于图的数据。因此,将我们的研究成果与已有的关于图结构CNNs的研究成果进行比较,我们的论文为我们提出的卷积步骤提供了坚实的理论基础,而不是针对图结构数据在CNNs中进行卷积的专门方法。
我们提出的方法表现出比现有方法更好的性能,因为不需要近似。我们的贡献总结如下:
提出的TAGCN探索了一个通用的滤波器,用于在顶点域进行图卷积,在一组大小为1到大小为k的接受域上提取局部特征。这些滤波器的拓扑结构是自适应的图的拓扑结构,因为它们扫描图执行卷积。它取代了传统CNNs网络中固定的平方滤波器,使传统CNNs网络的输入数据网格化。(我们在卷积步骤中定义的顶点域卷积与传统CNNs中的卷积是一致的.)
我们分析了图卷积层的原理,证明了如果只使用一个大小为k滤波器,随着卷积层在一定条件下深入,最后一层的输出是第一层的输出沿幅值最大的图邻接矩阵对应的特征向量的投影。这种线性逼近会导致信息丢失和分类精度下降。相反,使用一组大小为1到大小为K的过滤器(如我们的TAGCN)可以避免线性近似,并增加表示能力。因此,它可以提高分类精度。
TAGCN与图信号处理中的卷积是一致的。它既适用于有向图也适用于无向图。与Defferrard et al.(2016)和Levie et al.(2017)的25度和12度拉普拉斯矩阵多项式相比,它只需要最大度为2的邻接矩阵多项式,因此与现有方法相比,它的计算复杂度要低得多。
由于TAGCN不需要对卷积进行近似,因此与现有方法相比,它的性能更好。我们将TAGCN与最近提出的包括两种频谱滤波方法的graph CNN进行对比(Bruna等人,2014;Defferrard等人,2016)和顶点域传播方法(Kipf & Welling, 2017;Monti等人,2017;Atwood & Towsley, 2016),评估他们在三种常用的图结构数据集上的性能。我们的实验测试表明,TAGCN始终如一地在所有这些数据集上取得了卓越的性能。
我们使用黑体大写字母和小写字母分别表示矩阵和向量。图G上的信息及其关系可以用 G = ( V , E , A ‾ ) G = (V, E,\overline A) G=(V,E,A)表示,其中V是顶点的集合,E是边的集合, A ‾ \overline A A是图的加权邻接矩阵;图可以是加权的或非加权的,有向的或无向的。我们假设G中没有孤立的顶点。如果G是一个有向加权图,权重矩阵 A ‾ n , m \overline A_{n,m} An,m在从顶点m到n的有向边上。 A ‾ n , m \overline A_{n,m} An,m揭示了节点n和m之间的依赖关系,可以取任意的实数或复数值。图卷积具有普适性,可适用于特定任务的graph CNNs。在本文中,我们关注顶点半监督学习问题,我们可以访问非常有限的标记顶点,任务是通过将最后一个卷积层的输出输入到一个完全连接层来分类剩余的未标记顶点。
在不损失一般性的情况下,我们展示了隐藏层中的第 l l l层上的图卷积。结果适用于任何其他隐藏层。假设在第 l l l隐藏层上,图的每个顶点的输入特征映射有 C l C_l Cl个特征。我们用向量 x c ( l ) ∈ R N l x^{(l)}_c∈R^{N_l} xc(l)∈RNl收集的第 l l l隐含层中第c个特征的所有顶点输入数据,其中 c = 1 , 2 , … C l c = 1,2,…C_l c=1,2,…Cl, N l N_l Nl是顶点数。 x c ( l ) x^{(l)}_c xc(l)的分量由数据图表示 G = ( V , E , A ‾ ) G = (V, E,\overline A) G=(V,E,A)的顶点索引。设 G c , f ( l ) ∈ R N l × N l G^{(l)}_{c,f}∈R^{N_l ×N_l} Gc,f(l)∈RNl×Nl表示第 f f f个图滤波器。图的卷积是矩阵与向量的乘积,即 G c , f ( l ) x c ( l ) G^{(l)}_{c,f} x^{(l)}_c Gc,f(l)xc(l)。然后给出了第 f f f个输出特征映射和一个ReLU函数如下:
y f ( l ) = ∑ c = 1 C l G c , f ( l ) x c ( l ) + b f 1 N l … … ( E q . 1 ) y^{(l)}_f =∑_{c=1}^{C_l}G^{(l)}_{c,f} x^{(l)}_c+ b_f 1_{N_l}……(Eq.1) yf(l)=c=1∑ClGc,f(l)xc(l)+bf1Nl……(Eq.1)
其中 b f ( l ) b^{(l)}_f bf(l)是可学习偏差, 1 N l 1_{N_l} 1Nl是数值为1的 N l N_l Nl维向量。我们设计 G c , f ( l ) G^{(l)}_{c,f} Gc,f(l)使 G c , f ( l ) x ( l ) G^{(l)}_{c,f} x^{(l)} Gc,f(l)x(l)在任意拓扑图上均可以使用的图卷积。
在最近的图信号处理理论中(Sandryhaila & Moura, 2013),图移位被定义为一种局部操作,它用相邻顶点的图信号值的线性加权组合替换图信号:
X ~ c ( l ) = A ˉ X c ( l ) \tilde X_c^{(l)}=\bar AX_c^{(l)} X~c(l)=AˉXc(l)
图转移矩阵 A ˉ \bar A Aˉ将传统信号处理中的时序扩展到图结构数据。Sandryhaila & Moura(2013),一个图滤波器 G c , f ( l ) G^{(l)}_{c,f} Gc,f(l)是移位不变的,即图转移矩阵 A ˉ \bar A Aˉ和图滤波器 G c , f ( l ) G^{(l)}_{c,f} Gc,f(l)交换, A ˉ ( G c , f ( l ) x c ( l ) ) = G c , f ( l ) ( A ˉ x c ( l ) ) \bar A(G^{(l)}_{c,f} x^{(l)}_c)=G^{(l)}_{c,f}(\bar Ax^{(l)}_c) Aˉ(Gc,f(l)xc(l))=Gc,f(l)(Aˉxc(l))如果在适当的假设 G c , f ( l ) G^{(l)}_{c,f} Gc,f(l)下是矩阵A的多项式,
G c , f ( l ) = ∑ k = 0 k g c , f , k ( l ) A k … … ( E q . 2 ) 我们用上标 ( l ) 表示第 l 层的数据,用上标 l 表示矩阵的第 l 次幂。 G^{(l)}_{c,f}=∑^k_{k=0}g^{(l)}_{c,f,k}A^k……(Eq.2)\\ 我们用上标(l)表示第l层的数据,用上标l表示矩阵的第l次幂。 Gc,f(l)=k=0∑kgc,f,k(l)Ak……(Eq.2)我们用上标(l)表示第l层的数据,用上标l表示矩阵的第l次幂。
在公式2中, g c , f , k ( l ) g^{(l)}_{c,f,k} gc,f,k(l)是图滤波多项式系数;量 A = D − 1 / 2 A D − 1 / 2 A = D^{-1/2}AD^{-1/2} A=D−1/2AD−1/2是图的归一化邻接矩阵, D = d i a g [ D ] D = diag[D] D=diag[D]对角矩阵,第i个连通分量为 d ( i ) = ∑ j A i , j d(i) =∑_j A_{i,j} d(i)=∑jAi,j 我们采用归一化邻接矩阵来保证 A A A的所有特征值都在单位圆内,因此 G c , f ( l ) G^{(l)}_{c,f} Gc,f(l)是计算稳定的。下一小节显示我们将采用 1 × C l , 2 × C l , … , K × C l 1 × C_l, 2 × C_l,…, K × C_l 1×Cl,2×Cl,…,K×Cl滤波器在图结构数据上滑动采样。这一事实与GoogLeNet (Szegedy et al., 2015)相吻合,在GoogLeNet中,每个卷积层都使用一组不同大小的过滤器。其中定义的卷积算子与经典信号处理图为1D循环形式时的卷积算子是一致的,如下图。
根据CNN的架构,在每一个图卷积操作之后,都会使用一个额外的非线性操作,例如,非线性激活函数(ReLU):
x f ( l + 1 ) = σ ( y f ( l ) ) , x^{(l+1)}_f = σ(y^{(l)}_f), xf(l+1)=σ(yf(l)),
接下来,我们分析了图卷积层的机制。我们从图滤波器开始,用单项 g l A k l glA^{kl} glAkl的形式表示第 l l l层和 C l = F l = 1 C_l = F_l = 1 Cl=Fl=1其中 l = 1 , … L . l = 1,…L. l=1,…L.下面我们展示了当图卷积层越深时,最后一层图卷积层的输出与第一层图卷积层的输出数据在振幅最大的图邻接矩阵本征值对应的本征向量上的投影成正比。
对于有N个顶点的图上的任意输入数据 x ∈ R N x∈R^N x∈RN,图的第一卷积层的输出为 y 1 ( 1 ) = σ ( g 1 A k 1 x ) y^{(1)}_1 = σ(g_1A^{k_1}x) y1(1)=σ(g1Ak1x).根据ReLU函数的定义,我们知道 y 1 ( 1 ) y^{(1)}_1 y1(1)中的每个分量都是非负的。输入全连通层进行分类的数据为 σ ( σ ⋅ ⋅ ⋅ ( σ ( g 2 A k 2 y 1 ( 1 ) ) ) σ(σ···(σ(g_2A^{k_2}y^{(1)}_1)) σ(σ⋅⋅⋅(σ(g2Ak2y1(1))),是第 L L L层图卷积层的输出。显而易见,当 i ≥ 2 i≥2 i≥2时所有学习 g i g_i gi都应该是正的,否则输出将为0,从而产生一个全连接层的全零向量馈送分类。进一步,由于 A k l A^{k_l} Akl的所有分量都是非负的, y 1 ( 1 ) y^{(1)}_1 y1(1)也是非负的,通过传导,ReLU函数在每层的输入都是非负的。因此,第L个图卷积层的输出可以等价地写成
在等式(a)中,我们使用A的特征分解,其中 V = [ v 1 , … , v N ] ,其中 v i V = [v1,…, v_N],其中v_i V=[v1,…,vN],其中vi是矩阵A的特征向量, J J J是一个对角矩阵,对角元素是矩阵A的特征值(当A不对称且秩不足时,采用Jordan分解代替特征分解,则J为块对角矩阵。其余的分析也适用于Jordan分解)。等式(b)是由于特征向量 { v i } i = 1 N \{v_i\}^N _{i=1} {vi}i=1N的集合形成了一个正交基,我们可以用这些向量的线性组合表示 y 1 ( 1 ) ∈ R N 其中 c i = < y 1 ( 1 ) , v i > 。 I N ( c ) , { e i } i = 1 N y^{(1)}_1∈R^N其中c_i =
注意, 当 k l = 1 对于所有 l ∈ { 1 , 2 , … L } 当k_l = 1对于所有l∈\{1,2,…L\} 当kl=1对于所有l∈{1,2,…L},图卷积滤波器简化为 g l A glA glA, 。由于是线性逼近(沿着最大特征值幅值对应的特征向量投影),信息丢失会降低分类精度。但是,如果我们选择图滤波器设置其中大小为1到大小为K的一组滤波器,它就不再是一个投影,并且提高了图卷积层的表示能力。
在本节中,我们想把提出的卷积理解为传统CNN中的特征提取算子,而不是嵌入传播。这样的观点有助于我们借鉴传统CNN的设计知识/经验,并将其应用到网格结构化数据中。我们在本节中对路径权重的定义以及以下用于图卷积的滤波器大小使得设计一个类似于GoogLeNet (Szegedy et al., 2015)的graph CNN架构成为可能,其中在每个卷积层中使用一组不同大小的滤波器。事实上,我们发现大小为 1和 2滤波器的组合在所有测试的三个数据集中表现出了最好的性能,这是一个最大阶为2的多项式。
在传统的CNN中, K × K × C l K × K × C_l K×K×Cl滤波器对输入的网格结构数据进行扫描,进行特征提取。对于图像分类问题,为了达到更好的性能,对于不同的CNN架构和任务,K的值是不同的。例如,在VGG-Verydeep-16 CNN模型(Simonyan & Zisserman, 2015)中,只使用了 3 × 3 × C l 3 × 3 × C_l 3×3×Cl滤波器;在ImageNet CNN模型中(Krizhevsky et al., 2012),采用 11 × 11 × C l 11 × 11 × C_l 11×11×Cl滤波器;在GoogLeNet (Szegedy et al., 2015)中,不是在每个卷积层中使用相同大小的滤波器,而是在每个卷积层中连接不同大小的滤波器,例如, 1 × 1 × C l , 3 × 3 × C l 和 5 × 5 × C l 1 × 1 × C_l,3 × 3 × C_l和5 × 5 × C _l 1×1×Cl,3×3×Cl和5×5×Cl滤波器。类似地,我们为graph CNN提出了一个通用的k本地化滤波器。
对于图结构的数据,我们不能使用方形的过滤窗口,因为图拓扑不再是网格。在下面,我们证明了卷积运算 G c , f ( l ) x c ( l ) 其中 G c , f ( l ) G^{(l)}_{c,f} x^{(l)}_c其中G^{(l)}_{c,f} Gc,f(l)xc(l)其中Gc,f(l)一个多项式滤波器 G c , f ( l ) = ∑ k = 0 k g c , f , k ( l ) A k G^{(l)}_{c,f}=∑^k_{k=0}g^{(l)}_{c,f,k}A^k Gc,f(l)=∑k=0kgc,f,k(l)Ak等价于使用一组滤波器大小从1到K的滤波器,每个K大小的滤波器,用于图上的局部特征提取。
在图G上定义一个长度为m的路径为序列 v = ( v 0 , v 1 , … , v m ) v = (v_0, v_1,…, v_m) v=(v0,v1,…,vm)的顶点 v k ∈ V v_k∈V vk∈V,使得路径 ( v k , v k + 1 ) (v_k, v_{k+1}) (vk,vk+1)的每一步都对应于图的一条(有向)边,即 ( v k , v k + 1 ) ∈ ε (v_k, v_{k+1})∈\varepsilon (vk,vk+1)∈ε。在这里,一条路径可以多次访问相同的顶点或穿过相同的边。下面的邻接矩阵A就是这样一个例子:
由于A是不对称的,它表示一个有向图,如下图所示。在这个例子中,从顶点2到顶点1的图上有6条不同长度的3-path,分别是(2,1,4,1)、(2,1,2,1)、(2,1,5,1)、(2,3,2,1)、(2,4,2,1)和(2,4,5,1)。
一个有向图的例子,有向图的权值沿着A对应的有向边。左边(右边)边发光的部分表示不同位置的过滤器。左边的图表示从顶点1开始的滤波/卷积,然后滤波器滑动到顶点2,如右边的图所示,滤波器拓扑自适应新的局部区域。
我们进一步将路径的权值定义为沿路径的边权值的乘积,即 φ ( p 0 , m ) = ∏ k = 1 m A v k − 1 , v k φ(p_0,m) =∏^m_{k=1} A_{v_{k−1},v_k} φ(p0,m)=∏k=1mAvk−1,vk,其中 p 0 , m = ( v 0 , v 1 , … v m ) p_{0,m} = (v_0, v_1,…v_m) p0,m=(v0,v1,…vm)。例如路径(2,1,4,1)的权值为1 × 1 × 2 = 2。那么, A k 在 ( E q . 2 ) A^k在(Eq.2) Ak在(Eq.2)中的第 ( i , j ) (i, j) (i,j)项,用 ω ( p j , i k ) ω(p^k_{j,i}) ω(pj,ik)表示,可以解释为从 j 到 i j到i j到i的所有长度为 k k k的路径的权值之和,即
ω ( p j , i k ) = ∑ j ∈ { j ~ ∣ j ~ 表示 k 到 i 的路径 } ϕ ( p j , i ) ω(p^k_{j,i}) = ∑_{j∈\{\tilde j|\tilde j 表示k到i的路径\}}\phi(p_{j,i}) ω(pj,ik)=j∈{j~∣j~表示k到i的路径}∑ϕ(pj,i)
在上面的例子中,将上面从顶点2到顶点1的6条长度为3的路径的权值相加,很容易验证 A 1 , 2 3 = 18 A^3 _{1,2 }= 18 A1,23=18。然后, A k x c ( l ) A^kx^{(l)}_c Akxc(l)的第 i i i个分量是每个顶点 x c ( l ) x^{(l)}_c xc(l)到顶点 i i i的长度为 k k k条路径的输入特征的加权和。这里, k k k被定义为过滤器的大小。输出特征图是一个矢量,每个分量都是由大小为 k k k过滤器按照固定的顶点索引顺序在图上滑动给出的。
第 i i i个分量的输出可以显式写成 ∑ C = 1 C l ∑ j g C , f , k ( l ) ω ( p j , i k ) x C ( l ) ( j ) ∑^{C_l}_{C =1}∑_j g^{(l)}_{C,f,k}ω(p^k_{j,i})x^{(l)}_C(j) ∑C=1Cl∑jgC,f,k(l)ω(pj,ik)xC(l)(j)。这个加权和类似于传统CNNs中网格结构数据的卷积点积。最后,输出特征图是不同尺寸滤波器卷积结果的加权和,即
由上式可知,图卷积层中的每个神经元只与输入数据体顶点域中的一个局部区域(局部顶点和边缘)相连,对图拓扑是自适应的。在 ω ( p j , i k ) ω(p^k_{j,i}) ω(pj,ik)中显式地利用了相关强度。我们将这种方法称为拓扑自适应图卷积网络(TAGCN)。在上面的图中,我们用一个2大小的过滤器从顶点1(左边的图)滑动到顶点2(右边的图)的例子来展示TAGCN。过滤器首先放置在顶点1。因为路径(1,2,1)(5,4,1)等等(带有红光的路径)都是到顶点1的2长度路径,所以它们被这个2大小的过滤器覆盖。因为路径(2,3)和(7,3)不在任何到顶点1的2长度路径上,所以它们不被这个过滤器覆盖。此外,当这个2大小的过滤器移动到顶点2时,路径(1,5)、(4,5)和(6,5)不再被覆盖,但路径(2,3)和(7,3)第一次被覆盖,并与顶点2的输出进行卷积。
进一步, y f ( l ) ( i ) y^{(l)}_f (i) yf(l)(i)是 x c ( l ) x^{(l)}_c xc(l)中顶点的输入特征的加权和,这些顶点在 k k k条路径到顶点 i i i的范围内,对于 k = 0 , 1 , … K k = 0,1,…K k=0,1,…K,其权重由 A k A^k Ak和 g c , f , K ( l ) g^{(l)}_{c,f, K} gc,f,K(l)的分量乘积给出。因此,输出是由大小为1到大小为k的过滤器的过滤结果给出的特征映射的加权和。很明显,图上使用k阶多项式的顶点卷积是局部化的k条路径。而且,图上的不同顶点共享 g c , f , K ( l ) g^{(l)}_{c,f, K} gc,f,K(l)。上面的局部卷积和卷积(5)在图上的权值共享性质与传统CNN中的非常相似。(2)中定义的卷积算子虽然是在顶点域上定义的,但也可以理解为频谱域上的滤波器,与图信号处理中卷积的定义是一致的。我们在附录中提供了详细的讨论。
通常,CNN体系结构有两种类型的图卷积运算符。一个定义了频谱域中的卷积,其输出特征映射是频谱域中傅里叶反变换矩阵与滤波后的结果的乘法,研究员通过基于该谱域算子的进一步逼近,得到了一个简化的卷积。另一种是通过顶点域的特征传播模型定义卷积,我们详细研究了每种选择。通过计算图的归一化拉普拉斯矩阵的特征分解,利用卷积定理和频谱域中的滤波操作定义了卷积运算。定义拉普拉斯矩阵 L 为 L = D − A L为L = D−A L为L=D−A,并进一步假设 A A A是对称的,以保证矩阵L是正半定。
其中T k [ ⋅ ] 是 k _k[·]是k k[⋅]是k阶矩阵Chebyshev多项式(Shuman et al., 2013),其中
初始值定义为 T 0 [ L ] = I 和 T 1 [ L ] = L T_0[L] = I和T_1 [L] = L T0[L]=I和T1[L]=L。为了进行性能比较,我们稍后将该方法称为ChebNet。注意拉普拉斯矩阵可以被看作是一个微分算子。对称矩阵A的假设将应用限制在无向图上。注意在Defferrard et al.(2016)中,需要最大次K = 25的拉普拉斯矩阵多项式来近似公式(6)中左侧的卷积运算,这增加了计算负担。而TAGCN只需要一个最大2阶的邻接矩阵多项式就可以达到更好的性能,如实验部分所示。
Kipf & Welling(2017)通过(6)的一阶近似得到了图卷积网络(GCN)。特别地,设K = 1,并进一步假设 λ m a x = 2 , θ 0 = θ 1 = θ λ_{max} = 2, θ_0 = θ_1 = θ λmax=2,θ0=θ1=θ。然后得到一个不依赖频谱知识的更简单的卷积算子为
注意 I + D − 1 / 2 A D − 1 / 2 I + D^{−1/2} AD^{−1/2} I+D−1/2AD−1/2是一个特征值为[0,2]的矩阵。这里采用重正化方法,令 A ~ = A + I a n d D ~ i , i = ∑ j A ~ i , j \tilde A = A + I \space and\space\tilde D_{i, i} =∑_j\tilde A_{i,j} A~=A+I and D~i,i=∑jA~i,j。最后,卷积算子近似为
其中 A ^ = D ~ − 1 / 2 A ~ D ~ − 1 / 2 \hat A = \tilde D^{-1/2}\tilde A \tilde D^{-1/2} A^=D~−1/2A~D~−1/2
有趣的是,这种方法虽然是通过简化光谱法得到的,但其性能优于光谱法(Defferrard et al., 2016)。原因可能是简化的形式相当于在图上传播顶点特征,这可以被视为我们的TAGCN方法的一个特例,尽管还有其他重要的区别。
正如我们在第2.2节中所分析的,如公式(8)中的GCN或甚至扩展到更高阶,即 θ A ^ K θ\hat A^K θA^K只在卷积层更深时将输入数据投射到特征值最大的图特征向量上。我们的TAGCN能够在更远的距离上利用信息,但它不是GCN的简单扩展。首先,将GCN中的图卷积定义为图拉普拉斯矩阵的一阶Chebyshev多项式,近似于Defferrard等(2016)在频谱域中定义的图卷积。相反我们的图卷积是严格定义为乘上图邻接矩阵的多项式;这不是近似,而是简单地用定义好的图滤波器进行滤波,并且与图信号处理一致。
接下来,我们会展示出我们的工作与GCN方法之间的区别,当使用二阶(K= 2,2步距离中心节点)拉普拉斯矩阵的Chebyshev多项式时。GCN论文Kipf & Welling(2017)通过Chebyshev多项式的定义,证明了 ∑ k = 0 1 θ k T k ( L ) ≈ A ^ ∑^1_{k=0}θ_kT_k(L)≈\hat A ∑k=01θkTk(L)≈A^,且 T 2 [ L ] = 2 L 2 T_2[L] = 2L^2 T2[L]=2L2。然后,根据GCN的原始定义,将GCN扩展到二阶Chebyshev多项式(距离中心节点两步),即 ∑ k = 0 2 θ T k ( L ) = A ^ + 2 L 2 − I ∑^2_{k=0} θT_k(L) =\hat A + 2L^2−I ∑k=02θTk(L)=A^+2L2−I,这与我们在公式(2)中的定义不同。因此,显然我们的方法不是对GCN的简单扩展。我们应用了图信号处理中从基本原理提出的图卷积,不涉及近似,而GCN都是基于近似定义在频谱域中的卷积。在我们的方法中,自由度是图滤波器的设计——它的自由度和它的系数。我们提供了一种通用的方法。我们获得的性能增益是捕获底层图结构的结果,在卷积操作中没有近似。
Simonovsky & Komodakis(2017)提出了边缘卷积网络(edge convolution network, ECC),将卷积算子从规则网格扩展到任意图。卷积算子的定义类似于公式(8)为:
其中 Θ j , i ( l ) Θ^{(l)}_{j,i} Θj,i(l)是需要学习的权值矩阵。
Monti等人(2017)提出了一种混合模型网络(MoNet),其中卷积定义为
其中 K f K_f Kf为高斯核, K f = e x p − 1 / 2 ( u − μ f ) T Σ f − 1 ( u − μ f ) , g f K_f = exp{−1/2 (u−μ_f)^T Σ^{−1}_f (u−μ_f)}, g_f Kf=exp−1/2(u−μf)TΣf−1(u−μf),gf为各高斯核 K f K_f Kf的权系数。进一步假设 Σ f Σ_f Σf是一个2 × 2对角矩阵。GCN、ECC和MoNet都设计了图上的传播模型;它们的区别在于每个模型所使用的权重
Atwood & Towsley(2016)提出了一种扩散CNN (DCNN)方法,该方法考虑了图上的扩散过程。图上随机游走的转移概率由 P = D − 1 A P =D^{−1}A P=D−1A给出,等价于归一化邻接矩阵。
将上述方法与公式(5)中的TAGCN进行比较,可以得出结论,GCN、ECC和MoNet可以看作是TAGCN的特例,因为公式(5)中 k = 1 k = 1 k=1的项可以看作是一个信息传播项。但是,如2.2节所示,当卷积层越深时,GCN、ECC和MoNet的最后一个卷积层的输出都是对应的第一卷积层的输出的线性近似,这降低了表示能力。TAGCN通过设计一组固定大小的过滤器来克服这一问题,该过滤器在对图进行卷积时适应于输入图拓扑结构。进一步比较现有的光谱方法(Bruna et al., 2014;Defferrard等,2016;Levie et al., 2017), TAGCN满足前一小节中所示的卷积定理,并在顶点域实现,从而避免了执行昂贵的、实用的数值不稳定特征分解。在表1中,我们进一步比较了这些不同方法在每个隐藏层中需要学习的权值的数量。如我们稍后所示,在我们使用交叉验证的实验中选择K = 2。然而,对于(Defferrard等人,2016)中的ChebNet,建议需要一个25次切比雪夫多项式来为图拉普拉斯谱提供一个很好的近似。因此,我们有一个中等数量的权重需要学习。在接下来的文章中,我们展示了我们的方法为每一个常用的图结构数据集实现了最佳性能。
所提出的TAGCN具有通用性,可以适用于适用于不同任务的通用图CNN架构。在实验中,我们关注的是顶点半监督学习问题,即我们只能访问少数的标记顶点,任务是对剩余的未标记顶点进行分类。为了比较TAGCN与现有方法的性能,我们在三个图结构数据集上广泛地评估了TAGCN,包括Cora、Citesser和Pubmed数据集。数据集拆分和实验设置严格遵循Yang等人(2016)的标准标准。在每个数据集中,顶点是文档,边是引用链接。每个文档用稀疏词袋特征向量表示,并提供文档之间的引用链接。表2汇总了这三个数据集的详细统计数据。它显示了对应于文档和引用链接的节点和边的数量,以及每个数据集中文档类的数量。同时,给出了每个顶点的特征数。标签率表示用于训练的标记文档数量除以每个数据集中的文档总数。
我们为每个数据集构造一个图,用节点表示文档和无向边(如果存在引用关系)连接两篇论文。我们得到了包含0和1个分量的邻接矩阵A,并进一步得到了归一化矩阵A。
我们在这里使用无向图,因为两个文档之间的引用关系是正相关的。然而,与这里介绍的其他方法相比,如果有向图更适合于应用程序,TAGCN方法并不局限于无向图。
在接下来的实验中,我们设计了一个具有两个隐含层(通过交叉验证获得)的TAGCN用于半监督节点分类。在每个隐藏层中,提出TAGCN用于卷积,然后是ReLU激活。每个隐藏层设计16个隐藏单元(过滤器),每个隐藏层后应用dropout。在第二层隐层的输出中应用softmax激活函数进行最终分类。在消融研究中,我们评估了TAGCN在1到4不同滤光片尺寸下的性能。为了研究不同参数数量下的分类性能,我们还设计了一个每个隐含层有8个过滤器的TAGCN,并将其分类精度与所有基线和16个过滤器的TAGCN进行比较。我们使用Adam (Kinga & Ba, 2015)训练我们的模型,学习率为0.01,窗口大小为45的早期停止。通过交叉验证选择网络的超参数(过滤器大小、退出率和隐藏层数)。为了进行公平的比较,我们密切遵循与Kipf和Welling(2017)中相同的训练、验证和测试集分割;Yang等人(2016),即500个超参数(过滤器大小、退出率和隐藏层数)优化和交叉熵误差的标记示例用于分类精度评估。提出的TAGCN方法的性能结果平均超过100次运行。
我们将其分类精度与其他最近提出的图CNN方法以及被称为DeepWalk和plantoid 的图嵌入方法进行了比较。最近发表的图形注意网络(GAT) 还比较了利用掩蔽的自我注意层。
定量结果汇总见表3。报告的数字表示以百分比表示的分类精度。DeepWalk、plantoid、GCN和ChebNet的结果来自Kipf和Welling (2017), DCNN和MoNet的结果来自Monti等人(2017)。所有不同方法的实验均基于表2所示的相同数据统计。数据集拆分和实验设置密切遵循Yang等人(2016)的标准标准;Kipf & Welling(2017)。表3显示,我们的方法在所有三个数据集上都明显优于所有最新的图形CNN方法(DCNN, ChebNet, GCN, MoNet)。
这些实验结果证实了我们在2.2节和第3节的分析,TAGCN不需要对卷积进行近似,与ChebNet和GCN等谱近似方法相比,它具有更好的性能。此外,使用一组大小从1到2的过滤器避免了简单大小1过滤器的线性逼近(GCN Kipf & Welling(2017)中的矩阵A),这进一步验证了所提出的TAGCN的有效性。与最新的GAT方法相比,我们的方法在最大的数据集Pubmed上表现出明显的优势。应该注意的是,GAT在其模型中存在存储限制,并且正如作者所解释的那样,对于大规模图不能很好地伸缩。
对于消融研究,我们进一步比较了表4中K = 1到K = 4不同滤波器尺寸的性能。结果表明,K = 2的滤波器的性能总是优于其他滤波器的性能。当K = 1时,分类精度最差。由于K = 1的滤波器是一个单项的,这进一步验证了2.2节中的分析,即单项滤波器会得到一个非常粗略的近似。在表4中,我们还比较了不同数量的过滤器的性能,这反映了不同数量的网络参数。注意,我们也选择了文件大小K = 2,过滤器数量 F l = 8 F_l = 8 Fl=8,得到的网络参数数量与GCN、MoNet、ECC和DCNN中相同,如表1所示。结果表明,TAGCN在每个隐层中使用8个过滤器与使用16个过滤器的分类精度相当。此外,带有8个滤波器的TAGCN仍能比GCN、MoNet、ECC和DCNN方法获得更高的精度。这证明,即使在相同数量的参数或架构下,我们的方法仍然表现出比GCN更好的性能。
正如我们在第2.2节和第3节中分析和解释的那样,本文中的TAGCN并不是简单地将GCN Kipf & Welling(2017)扩展到k阶。尽管如此,我们还是实现了 A 2 A^2 A2,并将其性能与我们的进行了比较。对于数据集Pubmed、Cora和Citeseer,分类精度分别为79.1(80.8)、81.7(83.0)和70.8(71.2),其中括号内的数字是用我们的方法得到的结果。与 A 2 A^2 A2相比,我们的方法仍然取得了显著的性能优势;特别是,我们注意到在这三个数据集中拥有最多节点的Pubmed数据库所带来的显著性能提升。
我们定义了一种新的图卷积网络,它为图结构数据重新构建了CNN体系结构。该方法被称为TAGCN,当过滤器扫描图时,它是自适应的图拓扑。TAGCN继承了经典CNN卷积层的特性,即局部特征提取和权值共享。另一方面,通过卷积定理,在顶点域实现的TAGCN提供了在谱域实现谱域和顶点域的统一图CNN。TAGCN在图信号处理中与卷积是一致的。对于计算复杂度低的半监督图顶点分类问题,这些良好的特性在分类精度方面具有显著的性能优势。
在经典信号处理中(Oppenheim & Schafer, 2009),时域的卷积等价于频谱域的乘法。这种关系被称为卷积定理。Sandryhaila & Moura(2013)表明在顶点域定义的图滤波自然满足广义卷积定理,也可以解释有向图和无向图的频谱滤波。近期工作(Bruna et al., 2014;Defferrard等人,2016)使用卷积定理处理无向图结构数据,并设计了频谱图滤波。
假设图的邻接矩阵A是可对角化的,即 A = F − 1 J F A = F^{−1}JF A=F−1JF, J J J是一个对角矩阵。 J J J对角线上的分量是A的特征值, F − 1 F^{−1} F−1的列向量是A的右特征向量; F F F的行向量是 A A A的左特征向量。通过整个思想
当A不可对角化时, F − 1 F^{−1} F−1的列和F的行分别是A的广义左右特征向量。在这种情况下,F不再是一个酉矩阵。J是块对角矩阵;
对于TAGCN,我们得到公式(2)中的A
上式左边的表达式表示顶点域上的滤波/卷积。矩阵F定义了图的傅里叶变换(Sandryhaila & Moura, 2013;2014), F x c ( l ) Fx^{(l)}_c Fxc(l)为输入特征谱图,是顶点域上输入特征到谱域的线性映射。多项式 ∑ K = 0 K g c , f , k ( l ) J k ∑^K_{K =0} g^{(l)}_{c,f,k}J^k ∑K=0Kgc,f,k(l)Jk是图滤波器的频谱。公式(9),即Sandryhaila & Moura(2013)中的式(27),将经典卷积定理推广到图结构数据:顶点域上的卷积/滤波变成谱域上的乘法。当图为如下所示的一维循环形式时
其对应的矩阵以及矩阵的矩阵分解
DFT是离散傅里叶变换矩阵。公式(2)中定义的卷积算子与经典信号处理中的卷积算子一致。