原文连接 https://arxiv.org/pdf/1902.07153.pdf
本文作者提出SGC,通过移除非线性变换和压缩卷积层之间的权重矩阵来降低 GCN 的复杂性。并且作者在理论上分析了得到的线性模型,认为它实际上是一个固定的低通滤镜,后接线性分类器。实验表明,这种简化,并且不会对下游分类器的准确度带来负面影响。因此,模型可以推广到更大的数据集,并且比FastGCN产生高达两个数量级的加速。
GCN中的网络层有个重要的功能,在每一层中,隐含状态的表达是由一步邻居的特征平均得到的。也就是说,K层之后,一个节点从k步所有邻居节点获得特征信息。
S
=
D
~
−
1
2
A
~
D
~
−
1
2
S = \tilde{D}^{-\frac{1}{2}}\tilde{A}\tilde{D}^{-\frac{1}{2}}
S=D~−21A~D~−21
H ˉ k ← S H ( k − 1 ) \bar{H}^{k} \leftarrow SH^{(k-1)} Hˉk←SH(k−1)
H ( k − 1 ) ← R e L U ( H ˉ k Θ ( k ) ) H^{(k-1)} \leftarrow \mathbf{ReLU}(\bar{H}^{k} \Theta^{(k)}) H(k−1)←ReLU(HˉkΘ(k))
Y ^ G C H = s o f t m a x ( S H ( k − 1 ) Θ ( k ) ) \hat{Y}_{GCH} = \mathbf{softmax}(SH^{(k-1)} \Theta^{(k)}) Y^GCH=softmax(SH(k−1)Θ(k))
其中, H ( k ) \mathbf{H}^{(k)} H(k) 表示节点第k层的隐含状态
作者假设,GCN的主要效果提升,不是因为卷积层之间的非线性变换,而是因为局部邻居特征平均。基于这种假设,作者移除卷积层之间的非线性激活函数,只保留最终的softmax。得到的模型是线性的,但仍然具有增加的K层GCN的感受野。
Y
^
G
C
H
=
s
o
f
t
m
a
x
(
S
.
.
.
S
S
X
Θ
(
1
)
Θ
(
2
)
.
.
.
Θ
(
k
)
)
\hat{Y}_{GCH} = \mathbf{softmax}(S...SSX\Theta^{(1)}\Theta^{(2)}...\Theta^{(k)})
Y^GCH=softmax(S...SSXΘ(1)Θ(2)...Θ(k))
压缩标准化邻接矩阵的连乘,简化上式。参数化每个卷积层的权重为单个矩阵,
Θ
=
Θ
(
1
)
Θ
(
2
)
.
.
.
Θ
(
k
)
\Theta = \Theta^{(1)}\Theta^{(2)}...\Theta^{(k)}
Θ=Θ(1)Θ(2)...Θ(k) ,得到简化的GCN。
Y
^
G
C
H
=
s
o
f
t
m
a
x
(
S
K
X
Θ
)
\hat{Y}_{GCH} = \mathbf{softmax}(S^{K}X\Theta)
Y^GCH=softmax(SKXΘ)
上式自然地将GCN分离成两个部分,特征提取器下游跟着线性逻辑回归分类器。特征提取没有参数,相当于一个特征预处理。这样,模型被简化成在预处理的特征基础上的多类逻辑回归。逻辑回归的训练是个凸优化问题,可以使用很多有效的二阶方法,或者随机梯度下降来优化。如果图的邻接矩阵足够稀疏。SGD能够扩展到更大的图形尺寸。
Low-Pass Filtering
GCN中,初始的第一阶切比雪夫滤镜对应于传播矩阵
S
1
−
o
r
d
e
r
=
I
−
D
−
1
2
A
D
−
1
2
S_{1-order} = I - D^{-\frac{1}{2}}AD^{-\frac{1}{2}}
S1−order=I−D−21AD−21 ,由于标准化拉普拉斯
Δ
s
y
m
=
I
−
D
−
1
2
A
D
−
1
2
\Delta_{sym}=I-D^{-\frac{1}{2}}AD^{-\frac{1}{2}}
Δsym=I−D−21AD−21 ,所以一阶传播
S
1
−
o
r
d
e
r
=
2
I
−
Δ
s
y
m
S_{1-order}=2I-\Delta_{sym}
S1−order=2I−Δsym 。因此,K次一阶特征传播矩阵
S
1
−
o
r
d
e
r
K
S^K_{1-order}
S1−orderK 暗指滤镜系数
g
^
i
=
g
^
(
λ
i
)
=
(
2
−
λ
i
)
K
\hat{g}_i=\hat{g}(\lambda_i)=(2-\lambda_i)^K
g^i=g^(λi)=(2−λi)K,其中
λ
i
\lambda_i
λi表示
Δ
s
y
m
\Delta_{sym}
Δsym的特征值。 Figure2展示了关于
S
1
−
o
r
d
e
r
S_{1-order}
S1−order的不同数量的传播步骤,
K
∈
{
1
,
.
.
.
,
6
}
K\in \{1,...,6\}
K∈{1,...,6}。过多的
S
1
−
o
r
d
e
r
S_{1-order}
S1−order传播导致滤波系数爆炸,并且在
λ
i
<
1
\lambda_i < 1
λi<1时会过度放大特征。
为了解决一阶Chebyshev滤波潜在的数据值问题, Kipf & Welling (2017) 提出renormalization trick。将标准化的邻接矩阵中每个节点加上自循环,来代替1阶切比雪夫滤镜。作者将得到的传播矩阵称为增强的标准化化邻接阵。 S ~ a d j = D ~ − 1 2 A ~ D ~ − 1 2 \tilde{S}_{adj}=\tilde{D}^{-\frac{1}{2}}\tilde{A}\tilde{D}^{-\frac{1}{2}} S~adj=D~−21A~D~−21,其中, A ~ = A + I \tilde{A}=A+I A~=A+I, D ~ = D + I \tilde{D}=D+I D~=D+I,相应地,定义增强的标准化拉普拉斯 Δ ~ s y m = I − D ~ − 1 2 A ~ D ~ − 1 2 \tilde{\Delta}_{sym}=I-\tilde{D}^{-\frac{1}{2}}\tilde{A}\tilde{D}^{-\frac{1}{2}} Δ~sym=I−D~−21A~D~−21。如此,可以将关于 S ~ a d j \tilde{S}_{adj} S~adj的图谱滤波描述为,关于基础拉普拉斯算子特征值的一个多项式。如 g ^ ( λ i ~ ) = ( 1 − λ i ~ ) K \hat{g}(\tilde{\lambda_i})=(1-\tilde{\lambda_i})^K g^(λi~)=(1−λi~)K,其中 λ i ~ \tilde{\lambda_i} λi~是拉普拉斯算子 Δ ~ s y m \tilde{\Delta}_{sym} Δ~sym的特征值。
接下来分析增强标准化拉普拉斯算子 Δ ~ s y m \tilde{\Delta}_{sym} Δ~sym的光谱,展示增加图中每个节点的自循环,能够缩减相应表转化拉普拉斯的特征值。
理论1:假设
G
\mathcal{G}
G是一个无向、加权并且没有孤立节点的图,相应的度矩阵是D,邻接矩阵为A。增强邻接矩阵
A
~
=
A
+
γ
I
\tilde{A} = A + \gamma I
A~=A+γI,并且
γ
>
0
\gamma > 0
γ>0,相应的度矩阵
D
~
\tilde{D}
D~。拉普拉斯算子
Δ
s
y
m
=
I
−
D
−
1
2
A
D
−
1
2
\Delta_{sym}=I-D^{-\frac{1}{2}}AD^{-\frac{1}{2}}
Δsym=I−D−21AD−21,
λ
1
,
λ
n
\lambda_1,\lambda_n
λ1,λn 分别表示算子的最小和最大特征值。同样地,
λ
1
~
,
λ
n
~
\tilde{\lambda_1}, \tilde{\lambda_n}
λ1~,λn~分别表示算子
Δ
~
s
y
m
=
I
−
D
~
−
1
2
A
~
D
~
−
1
2
\tilde{\Delta}_{sym}=I-\tilde{D}^{-\frac{1}{2}}\tilde{A}\tilde{D}^{-\frac{1}{2}}
Δ~sym=I−D~−21A~D~−21最小和最大的特征值。如此:
0
=
λ
=
λ
~
1
<
λ
~
n
<
λ
n
0 = \lambda = \tilde{\lambda}_1 < \tilde{\lambda}_n < \lambda_n
0=λ=λ~1<λ~n<λn
理论1表明,加上自循环
γ
>
0
\gamma>0
γ>0之后,标准化图拉普拉斯的最大特征值变小了。Figure 2 比较了标准化邻接矩阵和其增强变体,在Cora数据集上的表现。通过矩阵
S
a
d
j
S_{adj}
Sadj的特征传播,相应的滤波
g
(
λ
i
)
=
(
1
−
λ
i
)
K
g(\lambda_i)=(1-\lambda_i)^K
g(λi)=(1−λi)K在光谱域
[
0
−
2
]
[0-2]
[0−2]内,
S
a
d
j
S_{adj}
Sadj的奇次幂在
λ
i
>
1
\lambda_i > 1
λi>1时会产生负的滤波系数。通过增加自循环得到
S
~
a
d
j
\tilde{S}_{adj}
S~adj,最大特征值从2近似缩减到1.5,并且消除了负系数的影响。
实验与讨论
研究SGC的表现和性能,作者在文献引用和社交网络数据集上做了较为完备的对比实验。在Cora、Citeseer、Pubmed citation网络数据集上,进行半监督节点分类的实验。通过使用SGC对Reddit上的社区结构进行归纳预测来补充引文网络分析。
(Itable2 表明的在文献引用数据集上的表现能够媲美GCN和其他state-of-the-art图网络模型。特别是在Citeseer数据集上,SGC表现较GCN模型提升1%。这部分的提升归功于SGC参数更少,因此缓解了过拟合。由于过拟合GIN表现稍差。并且LNet和AdaLNet模型不适用于文献引用网络。
由table3表明,SGC性能优于之前其他基于采样的GCN变体,SAGE-GCN,FastGCN。随机初始化的DGI在数据集Reddit上的表现比SGC稍差,这表明,DGI encoder中额外的权重和非线性是多余的。
在数据集Pubmed和Reddit上,作者绘制了下图Figure 3,展示当前state-of-the-arts 图卷积网络的表现(测试准确度)与SCG相对训练速度。模型训练是在NVIDIA GTX 1080 Ti GPU上进行。Figure 3 表明,在大规模网络上,GCN由于过多的内存要求,无法训练。以前其他方法的做法是采样来减少邻居节点的数量,或者限制模型参数数量。而SGC,通过应用大小固定的滤镜,预计算特征
S
K
X
S^KX
SKX,因此在训练阶段只需要学习一个权重矩阵。由于S通常稀疏,而K通常很小,可以利用快速稀疏密度矩阵乘积来计算
S
K
X
S^KX
SKX。