消息传递神经网络(MPNN) 来自Google Brain在2017年发布的Neural Message Passing for Quantum Chemistry,是一种专门用来处理图结构数据(graph data)的通用计算框架。它将各种 GNN 模型纳入同一框架,便于理解和比较。
阶段一:Message Passing(消息传递)
让每个节点通过与邻居"交流",逐步获得关于其局部子图结构的信息。

|----------|------------------------------|
| Xi(k) | 节点 i 在第 k 层的特征(状态) |
| Xi(k−1) | 节点 i 在上一层(第 k−1 层)的特征 |
| N(i) | 节点 i 的邻居集合(和它相连的节点) |
| Xj(k−1) | 邻居节点 j 在上一层的特征 |
| ej,i | 从节点 j 到节点 i 的边上的特征(比如化学键类型) |
| ϕ(k) | 消息生成函数(message function) |
| ⨁ | 聚合操作(如求和、平均等) |
| γ(k) | 更新函数(update function) |
1. 消息生成(Message Function):ϕ
-
每个节点将生成自己的消息,然后向自己的邻居节点"传播"自己的消息:

2. 消息聚合(Aggregate):⨁
- 每个节点会聚合来自邻居的消息:

3. 消息更新(Update):γ
- 你用这些信息更新自己的状态:

阶段二:Readout(读出)
把所有节点的表示"压缩"成一个固定长度的向量 ,用来代表整张图。