Graph Neural Network
1. Roadmap
2. Spatial-based
在GNN中常用的术语,aggregate类似于CNN中的convolution,就是用周边节点的feature更新下一层的hidden feature。readout是把所有nodes的feature集合起来代表整个graph的feature。
2.1 NN4G
隐藏层feature的更新方法:(以
v
3
v_3
v3后续的隐藏节点为例)
第0层的feature:
h
3
0
=
w
‾
0
⋅
x
3
h_3^0 = \overline{w}_0 \centerdot x_3
h30=w0⋅x3
第1层的feature:
h
3
1
=
w
‾
1
⋅
x
3
+
w
^
1
,
0
(
h
0
0
+
h
2
0
+
h
4
0
)
h_3^1 = \overline{w}_1 \centerdot x_3 + \widehat{w}_{1,0}(h_0^0+h_2^0+h_4^0)
h31=w1⋅x3+w
1,0(h00+h20+h40)
。。。
Readout的计算方法:对每一个隐藏层计算均值,然后,加权求和。
2.2 DCNN
隐藏层feature的更新方法:(以
v
3
v_3
v3后续的隐藏节点为例)
h
3
0
=
w
3
0
m
e
a
n
(
d
(
3
,
.
)
=
1
)
h_3^0=w_3^0mean(d(3,.)=1)
h30=w30mean(d(3,.)=1),其中,
m
e
a
n
(
d
(
3
,
.
)
=
1
)
mean(d(3,.)=1)
mean(d(3,.)=1)是距离
v
3
v_3
v3为1的节点特征的均值
h
3
1
=
w
3
1
m
e
a
n
(
d
(
3
,
.
)
=
2
)
h_3^1=w_3^1mean(d(3,.)=2)
h31=w31mean(d(3,.)=2),其中,
m
e
a
n
(
d
(
3
,
.
)
=
2
)
mean(d(3,.)=2)
mean(d(3,.)=2)是距离
v
3
v_3
v3为2的节点特征的均值
H
0
H^0
H0的行分别是
h
0
0
,
h
1
0
,
h
2
0
,
h
3
0
,
h
4
0
h_0^0,h_1^0,h_2^0,h_3^0,h_4^0
h00,h10,h20,h30,h40
H
1
,
.
.
.
,
H
k
H^1,...,H^k
H1,...,Hk也是类似的。
2.3 DGC
2.4 MoNET
定义权重代表距离
2.5 GraphSAGE
2.6 GAT
思路是将目标节点的feature与其相邻节点的feature做attention,用attention weight对原feature做weighed sum。
2.7 GIN
给出哪些方法是可以有效的,哪些是无效的。
要有sum,而不是pooling。