图卷积(6)——过平滑现象(1)
过平滑现象的提出是在论文Deeper Insights into Graph Convolutional Networks for Semi-Supervised Learning中。作者将GCN用于半监督学习任务,发现采用多层GCN之后,会出现过平滑现象(over-smoothing)。
文章提出三个核心观点:
- 拉普拉斯平滑:GCN中图卷积是特殊形式的拉普拉斯平滑,可以聚合临近节点的特征,使同一类别的节点的特征相似;
- 过平滑问题:多层GCN使得节点输出特征过度平滑,这样便无法区分不同类别的节点。该现象尤其是在小数据集上容易出现(这点类似于过拟合问题);
- 标签传播困难:多层GCN会造成过平滑现象的同时,层数太少也无法很好地传播节点标签;
拉普拉斯平滑介绍
我们将GCN于全连接进行简单的比对:
G
C
N
:
Y
=
A
^
X
W
F
C
N
:
Y
=
X
W
\begin{aligned} \mathrm{GCN}&: \mathrm{Y}=\hat{\mathrm{A}} \mathrm{XW} \\ \mathrm{FCN}&: \mathrm{Y}=\mathrm{XW} \end{aligned}
GCNFCN:Y=A^XW:Y=XW
图为原论文中的数据,不难看出GCN比FCN性能高出这么多的原因是因为GCN中包含邻接矩阵。而其表现优异的根本原因是GCN是一种特殊形式的拉普拉斯平滑。拉普拉斯平滑的三种形式为:
- 标准形式: y i = ( 1 − γ ) x i + γ ∑ j a ~ i j d i x j , 1 ≤ i ≤ n \boldsymbol{y}_{i}=(1-\gamma) \boldsymbol{x}_{i}+\gamma \sum_{j} \frac{\tilde{a}_{i j}}{d_{i}} \boldsymbol{x}_{j}, 1 \leq i \leq n yi=(1−γ)xi+γ∑jdia~ijxj,1≤i≤n
- 矩阵形式: Y = X − γ D ~ − 1 L ~ X = ( I − γ D ~ − 1 L ~ ) X \mathbf{Y}=\mathbf{X}-\gamma \tilde{\mathbf{D}}^{-1} \tilde{\mathbf{L}} \mathbf{X}=\left(\mathbf{I}-\gamma \tilde{\mathbf{D}}^{-1} \tilde{\mathbf{L}}\right) \mathbf{X} Y=X−γD~−1L~X=(I−γD~−1L~)X
- 特殊形式: Y = ( I − D ~ − 1 ( D ~ − A ~ ) ) X = D ~ − 1 A ~ X , γ = 1 \mathbf{Y}=\left(\mathbf{I}-\tilde{\mathbf{D}}^{-1}(\tilde{\mathbf{D}}-\tilde{\mathbf{A}})\right) \mathbf{X}=\tilde{\mathbf{D}}^{-1} \tilde{\mathbf{A}} \mathbf{X}, \quad \gamma=1 Y=(I−D~−1(D~−A~))X=D~−1A~X,γ=1
标准形式中的
a
~
i
j
\tilde{a}_{ij}
a~ij代表矩阵
A
~
=
A
+
I
\tilde{A}=A+I
A~=A+I的第
i
,
j
i,j
i,j个元素,
d
i
d_i
di指
A
~
\tilde{A}
A~的度矩阵的对角线上的第
i
i
i个元素。GCN可以看作为特殊形式的拉普拉斯平滑,GCN表现优异其实就是拉普拉斯平滑的性能特别好。拉普拉斯相当于对节点的特征进行了一个低频的滤波,让中心节点的特征可以传播出去,使得周围节点的特征和中心节点的特征是相似的,这对于进行图半监督学习的非常有利的。
过平滑现象就是多次使用拉普拉斯平滑之后,也就是采用了多层GCN之后,不同节点的特征趋于同质化(同一个连通分量内,所有结点的特征几乎都是一样的)。
理论分析
设定
G
=
{
C
i
}
i
=
1
K
\mathcal{G}=\left\{C_{i}\right\}_{i=1}^{K}
G={Ci}i=1K有
K
K
K个连通分量,第
i
i
i个连通分量的指示向量为
1
(
i
)
∈
R
n
\mathbf{1}^{(i)} \in R^{n}
1(i)∈Rn,这里我们提出一个定理:若一个图,没有二分连通分量,则对于任意向量
w
∈
R
n
,
α
∈
(
0
,
1
]
\mathbf{w} \in R^{n}, \alpha \in(0,1]
w∈Rn,α∈(0,1],有:
lim
m
→
+
∞
(
I
−
α
L
r
w
)
m
w
=
[
1
(
1
)
,
1
(
2
)
,
⋯
,
1
(
K
)
]
θ
1
lim
m
→
+
∞
(
I
−
α
L
s
y
m
)
m
w
=
D
−
1
2
[
1
(
1
)
,
1
(
2
)
,
⋯
,
1
(
K
)
]
θ
2
\begin{aligned} \lim _{m \rightarrow+\infty}\left(\mathbf{I}-\alpha \mathbf{L}_{r w}\right)^{m} \mathbf{w} &=\left[\mathbf{1}^{(1)}, \mathbf{1}^{(2)}, \cdots, \mathbf{1}^{(K)}\right] \theta_{1} \\ \lim _{m \rightarrow+\infty}\left(\mathbf{I}-\alpha \mathbf{L}_{s y m}\right)^{m} \mathbf{w} &=\mathbf{D}^{-\frac{1}{2}}\left[\mathbf{1}^{(1)}, \mathbf{1}^{(2)}, \cdots, \mathbf{1}^{(K)}\right] \theta_{2} \end{aligned}
m→+∞lim(I−αLrw)mwm→+∞lim(I−αLsym)mw=[1(1),1(2),⋯,1(K)]θ1=D−21[1(1),1(2),⋯,1(K)]θ2
其中,
θ
1
,
θ
2
∈
R
K
\theta_{1}, \theta_{2} \in \mathbb{R}^{K}
θ1,θ2∈RK。假设每个节点上有一个标量特征,那么
w
∈
R
n
\mathbf{w} \in R^{n}
w∈Rn便是这张图的特征。如果一直对
w
\mathbf{w}
w左乘一个矩阵,会得到一个定值,便是各连通分量乘以图中的
θ
1
\theta{1}
θ1(指示向量维度是
N
×
1
N\times1
N×1,拼接之后维度便是
N
×
K
N\times K
N×K,
θ
1
\theta_1
θ1是大小为
K
×
1
K\times 1
K×1的列向量,最后相乘得到
N
×
1
N\times1
N×1的向量,便是每个节点的定值)。不管输入的特征是多少,最后都会是以
θ
1
\theta_1
θ1来表示的定值。
P.S. 工事中的
r
w
rw
rw指基于随机游走的归一化的图拉普拉斯矩阵,
s
y
m
sym
sym是一个对称形式的图拉普拉斯矩阵。
如果要证明上述定理,需要证得两点:1. 左边的矩阵乘法是拉普拉斯平滑,或者是GCN;2. 等式成立。
对于第一点,之前写到矩阵形式的拉普拉斯平滑为
Y
=
X
−
γ
D
~
−
1
L
~
X
=
(
I
−
γ
D
~
−
1
L
~
)
X
\mathbf{Y}=\mathbf{X}-\gamma \tilde{\mathbf{D}}^{-1} \tilde{\mathbf{L}} \mathbf{X}=\left(\mathbf{I}-\gamma \tilde{\mathbf{D}}^{-1} \tilde{\mathbf{L}}\right) \mathbf{X}
Y=X−γD~−1L~X=(I−γD~−1L~)X,而定理中等式左边的矩阵乘法为:
(
I
−
α
L
s
y
m
)
m
w
\left(\mathbf{I}-\alpha \mathbf{L}_{s y m}\right)^{m} \mathbf{w}
(I−αLsym)mw,由于
D
D
D是对角矩阵,所以
γ
D
~
−
1
L
~
X
\gamma \tilde{\mathbf{D}}^{-1} \tilde{\mathbf{L}} \mathbf{X}
γD~−1L~X和
α
L
s
y
m
\alpha \mathbf{L}_{s y m}
αLsym是类似的,所以第一点证毕。
对于第二点,首先,我们列出两个图拉普拉斯矩阵的特征值和特征向量:
矩阵 | L r w L_{rw} Lrw | L s y m L_{sym} Lsym |
---|---|---|
特征值 | [0, 2) | [0, 2) |
特征向量 | { 1 ( i ) } i = 1 K \left\{\mathbf{1}^{(i)}\right\}_{i=1}^{K} {1(i)}i=1K | { D − 1 2 1 ( i ) } i = 1 K \left\{\mathbf{D}^{-\frac{1}{2}} \mathbf{1}^{(i)}\right\}_{i=1}^{K} {D−211(i)}i=1K |
将矩阵进行变换( α ∈ ( 0 , 1 ] \alpha \in(0,1] α∈(0,1]),得到以下内容:
矩阵 | I − α L r w I-\alpha L_{rw} I−αLrw | I − α L s y m I-\alpha L_{sym} I−αLsym |
---|---|---|
特征值 | (-1, 1] | (-1, 1] |
特征空间 | { 1 ( i ) } i = 1 K \left\{\mathbf{1}^{(i)}\right\}_{i=1}^{K} {1(i)}i=1K | { D − 1 2 1 ( i ) } i = 1 K \left\{\mathbf{D}^{-\frac{1}{2}} \mathbf{1}^{(i)}\right\}_{i=1}^{K} {D−211(i)}i=1K |
矩阵进行变化时,特征值按照矩阵的变化而变化,变化后的特征值对应的特征向量也会变化,但特征空间不会变,即以新的特征向量为基的特征空间和以原来特征向量为基的提升空间是同一个。
由于矩阵特征值的绝对值小于1,所以定理左边不管进行多少次的矩阵乘法,依旧处于一开始的特征空间,所以最后的结果是可以用一开始的特征向量作为基来表示的。所以第2点证毕。
基于上述定理,过平滑(over-smoothing)会使特征难以区分,影响模型性能。