1. Introduction
- 提出可以直接在图上操作的卷积神经网络,使用谱图卷积的局部一阶近似来确定卷积结构。
- 用于半监督学习,进行节点分类
2. 图上的快速近似卷积
先给出多层GCN基于下面的逐层传递规则:
A
~
=
A
+
I
N
\tilde{A}=A+I_N
A~=A+IN,
I
N
I_N
IN为单位矩阵,A为邻接矩阵,即
A
~
\tilde{A}
A~为图的邻接矩阵加上自环。
D
~
i
i
=
∑
j
A
~
i
j
\tilde{D}_{ii}=\begin{matrix} \sum_{j} \end{matrix}\tilde{A}_{ij}
D~ii=∑jA~ij(度矩阵)。
W
(
l
)
W^{(l)}
W(l)为可训练参数。下面证明这种传递规则可使用谱图卷积的局部一阶近似来确定。
2.1 谱图卷积
2.1.1 第一代图卷积
对于输入信号
x
∈
R
N
x\in R^N
x∈RN,在傅里叶域取滤波器
g
θ
=
d
i
a
g
(
θ
)
g_\theta=diag(\theta)
gθ=diag(θ),
θ
∈
R
N
\theta\in R^N
θ∈RN。
∗
*
∗为卷积操作。
U
U
U是归一化后的图的拉普拉斯矩阵L的特征向量构成的矩阵,
L
=
I
N
−
D
−
1
2
A
D
−
1
2
=
U
∧
U
T
L=I_N-D^{-\frac{1}{2}}AD^{-\frac{1}{2}}=U\wedge U^T
L=IN−D−21AD−21=U∧UT,
∧
\wedge
∧是拉普拉斯矩阵L的特征值组成的对角矩阵。
U T x U^Tx UTx就是 x x x的图傅里叶变换。
g θ g_\theta gθ可视为是拉普拉斯矩阵 L L L的特征值组成的对角矩阵 g θ ( ∧ ) g_\theta(\wedge) gθ(∧)
第一代卷积借助傅里叶变换,将原始信号
x
x
x变换到频域,在频域乘上一个信号,再做傅里叶逆变换还原到空域。由傅里叶变换的特性有,在频域相乘相当于空域卷积,这样就回避了空域上对不确定结构的图进行卷积的问题。
2.1.2 第二代图卷积
第一代图卷积计算开销大,对于大规模的图,计算特征向量计算开销很大。而且没有空间的局部性,每次卷积都要考虑所有的结点。
为了避免这一问题,减少计算量,有人提出一个特殊的卷积核设计方法,将
g
θ
(
∧
)
g_\theta(\wedge)
gθ(∧)用切比雪夫多项式
T
k
(
x
)
T_k(x)
Tk(x)进行k阶逼近。新的卷积核设计为
切比雪夫多项式
T
k
(
x
)
T_k(x)
Tk(x):
T k ( x ) = 2 x T k − 1 ( x ) − T k − 2 ( x ) T_k(x)=2xT_{k-1}(x)-T_{k-2}(x) Tk(x)=2xTk−1(x)−Tk−2(x)
T 0 ( x ) = 1 T_0(x)=1 T0(x)=1
T 1 ( x ) = x T_1(x)=x T1(x)=x
∧ ~ = 2 λ m a x ∧ − I N \tilde\wedge=\frac{2}{\lambda_{max}}\wedge-I_N ∧~=λmax2∧−IN, λ m a x \lambda_{max} λmax是L的最大特征值
θ ′ ∈ R K \theta^\prime\in R^K θ′∈RK为切比雪夫多项式的系数
将该卷积核代入图卷积公式得到
L
~
=
2
λ
m
a
x
L
−
I
N
\tilde L=\frac{2}{\lambda_{max}}L-I_N
L~=λmax2L−IN
这个公式为拉普拉斯算子的K阶切比雪夫多项式形式,即它受到距离中央节点K步以内的节点影响。
这里的加速版本的GCN,将参数减少到了K个,并且不再需要对拉普拉斯矩阵做特征分解,直接使用即可。
2.1.3 分层线性模型
第三代GCN令K=1,即每层卷积只考虑直接邻域,类似于CNN中 3 × 3 3\times3 3×3的卷积核
网络深度加深,宽度减少(深度学习的经验,深度>宽度)
对第二代卷积公式
令
λ
m
a
x
=
2
,
k
=
1
\lambda_{max}=2,k=1
λmax=2,k=1可得
这里运用的是上面提过的归一化后的拉普拉斯矩阵
L
L
L是归一化后的拉普拉斯矩阵,进一步简化,令
θ
0
′
=
−
θ
1
′
\theta^\prime_0=-\theta^\prime_1
θ0′=−θ1′,由于
L
=
I
N
+
D
−
1
2
A
D
−
1
2
L=I_N+D^{-\frac{1}{2}}AD^{-\frac{1}{2}}
L=IN+D−21AD−21特征值在[0,2],可进一步约束为
最终通过应用多通道卷积,并表达为矩阵形式,可以得到如下的最终形式
其中,
X
∈
R
N
×
C
,
Θ
∈
R
C
×
F
,
Z
∈
R
N
×
F
X\in R^{N\times C},\Theta\in R^{C\times F},Z\in R^{N\times F}
X∈RN×C,Θ∈RC×F,Z∈RN×F,
N
,
C
,
F
N,C,F
N,C,F分别代表节点个数,通道个数(每个节点的属性是C维的),卷积核个数。
3. 半监督节点分类
运用两层GCN
参考
https://blog.csdn.net/weixin_39373480/article/details/90741121