MPNN:消息传递神经网络

简介: MPNN:消息传递神经网络

论文标题:Neural Message Passing for Quantum Chemistry


论文链接:https://arxiv.org/abs/1704.01212


论文来源:ICML 2017


一、概述


近年来,随着量子化学计算和分子动力学模拟等实验的展开产生了巨大的数据量,大多数经典的机器学习技术都无法有效利用目前的数据。而原子系统的对称性表明,能够应用于网络图中的神经网络也能够应用于分子模型。所以,找到一个更加强大的模型来解决目前的化学任务可以等价于找到一个适用于网络图的模型。


本文的目标是证明:能够应用于化学预测任务的模型可以直接从分子图中学习到分子的特征,并且不受到图同构的影响。本文提出的MPNN是一种用于图上监督学习的框架,能够概括之前一些文献提出的一些方法,并且能够按照这个框架提出一些新的架构。本文提出的新的MPNN变种基于实际的应用场景:预测有机小分子的量子力学性质。并且,作者希望以后提出的新的MPNN变种能够从实际的应用出发,从实际应用中获得启发。


本文以QM9作为benchmark数据集,这个数据集由130k个分子组成,每个分子有13个性质,这些性质是通过一种计算昂贵的量子力学模拟方法(DFT)近似生成的,相当于13个回归任务。这些任务似乎代表了许多重要的化学预测问题,并且目前对许多现有方法来说是困难的。


本文提出的模型的性能度量采用两种形式:


①DFT近似的平均估计误差;


②化学界已经确立的目标误差,称为“化学精度”。


二、消息传递神经网络


WHL`PTJ_NXM9@L6MR_83R$R.png


  1. Convolutional Networks for Learning Molecular Fingerprints, Duvenaud et al. (2015)


本文提出的模型采用的消息函数是:


E~~Z1[3}E2@RH)73C6CFGE7.png


  1. Gated Graph Neural Networks (GG-NN), Li et al.(2016)


消息函数为:


20220608075801.png


  1. Interaction Networks, Battaglia et al. (2016)


L589J1@)HM24B[ZOO4SY0`4.png


  1. Molecular Graph Convolutions, Kearnes et al. (2016)


这个模型与之前的MPNNs稍微有一些不同,是因为它引入了边的表示FB[D9B16B[VPNY$68MMO`)W.png,并且会在消息传递阶段进行更新。消息函数为:


)DRSIN}G4S)44QZUL@29YIH.png


  1. Deep Tensor Neural Networks, Sch¨utt et al. (2017)


消息函数为:


TEV5AJN1EXOKVEL~@E56JO9.png


  1. Laplacian Based Methods, Bruna et al. (2013); Deffer�rard et al. (2016); Kipf & Welling (2016)


8篇文献中有3篇属于这一类。其中两篇采用消息函数:


XY}_XB59U$R0S9S_[H`H`JY.png


三、MPNN变种


20220608080033.png


  1. 消息函数

IG75WFXG05ZXDOT)6V{6O6H.png


  1. 虚拟图形元素


本文探索了两种方式来改变模型中信息的传递。第一种是为未连接的节点对添加一个单独的“虚拟”边类型。这一处理可以在预处理时实现,效果是可以使得在传播过程中让信息传播更远的距离。

另一种方式是添加一个“master”节点,让它通过一种特殊类型的边与所有节点连接。“master”节点充当全局暂存空间,每个节点在消息传递的每个步骤中都对其进行读写操作。另外“master”节点拥有单独的节点维度`[ZZE_{NJENZ~1Q(O4L_1_F.png,以及内部更新函数(实验中是GRU)的单独权重。这同样可以使得在传播过程中让信息传播更远的距离。这样可以允许模型有更大的容量,同时也不会过多的损失效率,其复杂度为[{Y$O~~BOSMEPK[VIP}U0P6.png


  1. 读出函数


XKQY{]1O~{S5_70}D6PJC08.png


  1. Multiple Towers


RX7~O}7ZDXI7ZYDI81O(2XB.png


四、输入表示


一个分子有很多特征,如下图所示:


$}G}7$G)%LV6]$GQE5~8YY6.png

                                                分子特征


边的特征包括化学键与距离,因此有以下三种表示方式:


①化学图(Chemical Graph):在不考虑距离的情况下,邻接矩阵的值是离散的键类型:单键,双键,三键或芳香键;


@IFMCFLEF4V~{KV78(TLP$T.png


③原始距离特征(Raw distance feature):也可以同时考虑距离和化学键的特征,这时每条边都有自己的特征向量,此时邻接矩阵的每个实例都是一个 5 维向量,第一维是距离,其余4维是一个独热向量,代表4种不同的化学键。


五、实验


实验中对比了本文提出的方法与现有的方法:


1PCSF81{EFUF_U0I@EV_%28.png

                                                    对比


以下为不考虑空间信息的结果:


 CLQ%VQOWLI{BPZ}M{8)C}1C.png

                                             不考虑空间信息


以下为一些消融实验:


9U}G3`C)${WTY3%@7_I6)QF.png

                                                 消融实验


具体实验设置参照原文。

相关文章
|
机器学习/深度学习 设计模式 编译器
图神经网络通用框架 —— MPNN消息传递神经网络
图神经网络通用框架 —— MPNN消息传递神经网络
2035 0
图神经网络通用框架 —— MPNN消息传递神经网络
|
5月前
|
机器学习/深度学习 算法 调度
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
454 0
|
6月前
|
机器学习/深度学习 数据采集 传感器
【故障诊断】基于matlab BP神经网络电机数据特征提取与故障诊断研究(Matlab代码实现)
【故障诊断】基于matlab BP神经网络电机数据特征提取与故障诊断研究(Matlab代码实现)
216 0
|
5月前
|
机器学习/深度学习 传感器 算法
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
358 2
|
4月前
|
机器学习/深度学习 数据采集 存储
概率神经网络的分类预测--基于PNN的变压器故障诊断(Matlab代码实现)
概率神经网络的分类预测--基于PNN的变压器故障诊断(Matlab代码实现)
431 0
|
5月前
|
机器学习/深度学习 并行计算 算法
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
130 8
|
5月前
|
机器学习/深度学习 缓存 算法
2025年华为杯A题|通用神经网络处理器下的核内调度问题研究生数学建模|思路、代码、论文|持续更新中....
2025年华为杯A题|通用神经网络处理器下的核内调度问题研究生数学建模|思路、代码、论文|持续更新中....
521 1
|
5月前
|
机器学习/深度学习 传感器 算法
【表面粗糙度】基于粒子群PSO算法优化-BP神经网络的表面粗糙度研究(Matlab代码实现)
【表面粗糙度】基于粒子群PSO算法优化-BP神经网络的表面粗糙度研究(Matlab代码实现)
271 7
|
5月前
|
机器学习/深度学习 算法 数据可视化
PINN物理信息神经网络用于求解二阶常微分方程(ODE)的边值问题研究(Matlab代码实现)
PINN物理信息神经网络用于求解二阶常微分方程(ODE)的边值问题研究(Matlab代码实现)
384 6
|
5月前
|
机器学习/深度学习 传感器 分布式计算
基于模糊RBF神经网络轨迹跟踪研究(Matlab代码实现)
基于模糊RBF神经网络轨迹跟踪研究(Matlab代码实现)
252 1

热门文章

最新文章