背景
对图神经网络的简化,WU F, ZHANG T, JR. A H S, et al Simplifying Graph Convolutional Networks. ICML
模型
SGCN (Simplifying Graph Convolutional Networks)是图神经网络的简化。 SGCN指出图神经网络对特征进行邻近节点聚合后相当于多层线性感知机。多层神经网络目的是通过拟合非线性函数划分不同的数据类别。SGCN假定非线性不是GCN层之间的关键,认为GCN最关键的是对于邻居特征的聚合操作。因此SGCN 删除GCN层之间的非线性激活函数,保留最终特征的归一操作,得到线性模型。表示为模型可学习的参数。
A
~
=
D
^
−
1
2
A
^
D
^
−
1
2
{\bf{\tilde A}} = {{\bf{\hat D}}^{^{ - \frac{1}{2}}}}{\bf{\hat A}}{{\bf{\hat D}}^{^{ - \frac{1}{2}}}}
A~=D^−21A^D^−21,
A
^
=
A
+
I
{\bf{\hat A}} = {\bf{A}} + {\bf{I}}
A^=A+I,
I
{\bf{I}}
I 表示单位矩阵。
Y
^
=
s
o
f
t
m
a
x
(
A
~
⋯
A
~
A
~
X
W
(
1
)
W
(
2
)
⋯
W
(
k
)
)
{\bf{\hat Y}} = {\rm{softmax}}({\bf{\tilde A}} \cdots {\bf{\tilde A\tilde AX}}{\begin{matrix}{{}{}} {\bf{W}} \end{matrix}^{(1)}}{\begin{matrix}{{}{}} {\bf{W}} \end{matrix}^{(2)}} \cdots {\begin{matrix}{{}{}} {\bf{W}} \end{matrix}^{(k)}})
Y^=softmax(A~⋯A~A~XW(1)W(2)⋯W(k))
将 A ~ ⋯ A ~ A ~ {\bf{\tilde A}} \cdots {\bf{\tilde A\tilde A}} A~⋯A~A~进行折叠,改写为 A ~ K {{\bf{\tilde A}}^K} A~K,最终 Y ^ S G C {{\bf{\hat Y}}_{{\rm{SGC}}}} Y^SGC被表示为:
Y
^
S
G
C
=
s
o
f
t
m
a
x
(
A
~
K
X
W
)
{{\bf{\hat Y}}_{{\rm{SGC}}}} = {\rm{softmax}}({{\bf{\tilde A}}^K}{\bf{X}}\begin{matrix}{{}{}} {\bf{W}} \end{matrix})
Y^SGC=softmax(A~KXW)
Y
^
S
G
C
{{\bf{\hat Y}}_{{\rm{SGC}}}}
Y^SGC表示SGC最终的分类输出结果,
s
o
f
t
m
a
x
(
⋅
)
=
e
x
i
∑
i
e
x
i
{\rm{softmax}}( \cdot ) = \frac{{{e^{{x_i}}}}}{{\sum\nolimits_i {{e^{{x_i}}}} }}
softmax(⋅)=∑iexiexi
代码
https://github.com/ChenaniahMe/codes/tree/main/GNN/comsgcn