Graph Neural Network

学习资料:video1, video2, PPT

1. Roadmap

李宏毅《Deep Learning》学习笔记 - GNN

2. Spatial-based

在GNN中常用的术语,aggregate类似于CNN中的convolution,就是用周边节点的feature更新下一层的hidden feature。readout是把所有nodes的feature集合起来代表整个graph的feature。
李宏毅《Deep Learning》学习笔记 - GNN

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=w0x3
第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=w1x3+w 1,0(h00+h20+h40)
。。。
李宏毅《Deep Learning》学习笔记 - GNN
Readout的计算方法:对每一个隐藏层计算均值,然后,加权求和。
李宏毅《Deep Learning》学习笔记 - GNN

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的节点特征的均值
李宏毅《Deep Learning》学习笔记 - GNN
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也是类似的。

李宏毅《Deep Learning》学习笔记 - GNN

2.3 DGC

李宏毅《Deep Learning》学习笔记 - GNN

2.4 MoNET

定义权重代表距离
李宏毅《Deep Learning》学习笔记 - GNN

2.5 GraphSAGE

李宏毅《Deep Learning》学习笔记 - GNN
李宏毅《Deep Learning》学习笔记 - GNN
李宏毅《Deep Learning》学习笔记 - GNN

2.6 GAT

李宏毅《Deep Learning》学习笔记 - GNN
思路是将目标节点的feature与其相邻节点的feature做attention,用attention weight对原feature做weighed sum。
李宏毅《Deep Learning》学习笔记 - GNN
李宏毅《Deep Learning》学习笔记 - GNN

2.7 GIN

李宏毅《Deep Learning》学习笔记 - GNN
给出哪些方法是可以有效的,哪些是无效的。
要有sum,而不是pooling。
李宏毅《Deep Learning》学习笔记 - GNN
李宏毅《Deep Learning》学习笔记 - GNN

3. Spectral-based

李宏毅《Deep Learning》学习笔记 - GNN

相关文章: