Neural Message Passing for Quantum Chemistry
概
很多图框架所遵循的框架, MPNN.
符号说明
- \(G\), 图;
- \(v\), node;
- \(e\), edge;
- \(x_v\), node features;
- \(e_{vw}\), edge features;
- \(N(v)\), 结点 \(v\) 的邻居;
框架
作者认为大部分的 GNN 都可以用分为两个部分:
-
message passing phase:
\[m_v^{t+1} = \Phi (\{M_t(h_v^t, h_w^t, e_{vw}): w \in N(v)\}) \\ h_v^{t+1} = U_t(h_v^t, m_{v}^{t+1}), \]其中 \(M_t\) 表示 message function, 它起到将源结点 \(h_v^t\) 和目标结点 \(h_w^t, w \in N(v)\), 以及它们的边的特征 \(e_{vw}\) 融合的作用. \(\Phi\) 是一个 permutation-invariant 函数 (比如: sum, mean, max), 将这一批特征融合为中间变量 \(m_v^{t+1}\), 然后 update functions \(U_t\) 基于 \(h_v^t, m_v^{t+1}\) 更新 \(v\) 的状态为 \(h_v^{t+1}\).
-
readout phase:
\[\hat{y} = R(\{h_v^T| v \in G\}) \]将所有的结点的特征进行一个聚合 (感觉这个只是用在 graph-level 的分类任务上吧).
注: \(M_t, U_t, R\) 都是可训练的模块.