图神经网络
前言
化学分子,自然语言,社交网络等都是具有图结构的数据。结果表明相较于LSTM之类的仅基于序列的网络模型有利于归纳偏差。数据符号
graph | G = ( V , E ) G = (V, E) G=(V,E) |
---|---|
node | v v v |
edge | e = ( v , v ′ ) , ( v , v ′ ) 表 示 由 v 到 v ′ 的 边 e=(v,v'),(v,v')表示由v到v'的边 e=(v,v′),(v,v′)表示由v到v′的边 |
node representation | h v ∈ R D h_v\in R^D hv∈RD |
node label | l v l_v lv |
顶点集合 | h S = { h v ∣ v ∈ S } , w h e n S i s a s e t o f n o d e s h_S=\{ h_v \vert v \in S \},when \ S \ is \ a \ set \ of \ nodes hS={hv∣v∈S},when S is a set of nodes |
边集合 | l S = { l e ∣ v ∈ S } , w h e n S i s a s e t o f e d g e s l_S=\{ l_e \vert v \in S \},when \ S \ is \ a \ set \ of \ edges lS={le∣v∈S},when S is a set of edges |
v的前驱节点 | I N ( v ) = { v ′ ∣ ( v ′ , v ) ∈ E } I_N(v)=\{ v'\vert (v',v)\in E \} IN(v)={v′∣(v′,v)∈E} |
v的后继节点 | O U T ( v ) = { v ′ ∣ ( v , v ′ ) ∈ E } O_{UT}(v)= \{ v'\vert (v,v')\in E \} OUT(v)={v′∣(v,v′)∈E} |
v的邻接节点 | N B R ( v ) = I N ( v ) ∪ O U T ( v ) N_{BR}(v)=I_N(v) ∪ O_{UT}(v) NBR(v)=IN(v)∪OUT(v) |
关联边 | C O ( v ) C_O(v) CO(v)= { ( v ′ , v ′ ′ ) ∈ E ∣ v = v ′ ∨ v = v ′ ′ } \{(v', v'') ∈ E \vert v = v'\vee v = v''\} {(v′,v′′)∈E∣v=v′∨v=v′′} |
The Graph Neural Network Model
《The Graph Neural Network Model 》
先对x进行初始化,然后使用一个函数(全局共享的)迭代隐藏状态。只需将与隐藏状态相关联的一切节点嵌入都输入到此函数之中,然后得到结果即可。需要注意,此函数的输入是不定长的参数,可使用加法相加所有“同类项”等方法进行统一处理。
f
w
局
部
传
输
函
数
(
l
o
c
a
l
t
r
a
n
s
i
t
i
o
n
f
u
n
c
t
i
o
n
)
g
w
局
部
输
出
函
数
(
l
o
c
a
l
o
u
t
p
u
t
f
u
n
c
t
i
o
n
)
f_w局部传输函数(local transition function)\\ g_w局部输出函数(local output function)
fw局部传输函数(localtransitionfunction)gw局部输出函数(localoutputfunction)
基于不动点定理 Banach的不动点理论,通过对f的雅可比矩阵的惩罚项,将f定义为压缩映射,循环至T步状态收敛时,g函数(输出函数)以应用到下游任务中。网络过平滑问题,网络节点趋同。
特例部分
“局部传输函数”对于有向图模型的处理方法
网络的训练
可使用Almeida-Pineda algorithm (Almeida, 1990; Pineda, 1987)方法,此方法可避免存储中间值用于梯度的计算,缺点是参数必须受到约束以使得传递过程是收缩映射,这可以确保模型收敛,但可能会限制模型的表达能力。当f()是一个神经网路模型时,可以使用网络雅可比的1范数作为惩罚项。请参阅附录A中的例子,该例给出了收缩映射难以在途中长范围传播的直觉描述。
链接
参考链接
从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一)
深入浅出GCN、GAT、GraphSage,MPNN等图神经网络模型【贪心学院】