消息传递神经网络 MPNN 是什么?统一各种图神经网络的框架
消息传递神经网络(Message Passing Neural Networks,MPNN)是处理图结构数据的一个通用框架,由 Gilmer 等人在 2017 年提出,论文标题是《用于量子化学的神经消息传递》。这篇论文来自谷歌的研究团队,它把此前提出的多种图神经网络统一到了“消息传递”这一共同的框架之下。
消息传递的思路
MPNN 的核心思想很直观:图中的每个节点就像一个人,每一轮,每个人都从自己的邻居那里收到“消息”,然后根据收到的消息和自己原来的状态,更新自己的状态。重复几轮之后,每个节点就积累了来自周围越来越远的节点的信息,它的表示也就反映了它在整个图中的局部结构和上下文。
具体来说,MPNN 把这个过程分成两个阶段。消息传递阶段,重复若干轮,每一轮包括:消息函数,根据一个节点、它的某个邻居以及它们之间的边的特征,计算出这个邻居传过来的消息;聚合,把来自所有邻居的消息汇总起来,通常是求和;更新函数,根据汇总的消息和节点当前的状态,计算出节点的新状态。读出阶段:如果要对整个图做预测,比如预测一个分子的性质,就用一个读出函数把所有节点的最终状态汇总成整个图的表示。
消息函数、更新函数和读出函数都可以是神经网络,选择不同的具体形式,就得到不同的图神经网络。论文展示了,图卷积网络、门控图神经网络等多种已有的模型,都可以看作 MPNN 框架的特例。
用于量子化学
论文最初的应用场景是量子化学:分子天然就是图,原子是节点,化学键是边。用传统的量子化学方法(如密度泛函理论)计算分子的性质,比如能量、偶极矩,非常耗时。研究团队用 MPNN 在 QM9 数据集上预测分子的 13 种量子化学性质,取得了当时最好的结果,在很多性质上达到了化学精度,而计算速度比传统方法快得多。
影响
消息传递已经成为理解和设计图神经网络的标准语言,大多数图神经网络都可以用这一框架来描述。它在药物发现、材料设计、分子模拟等科学领域影响尤其深远。