当前位置: 首页 > news >正文

2017-PMLR-Neural Message Passing for Quantum Chemistry

2017-PMLR-Neural Message Passing for Quantum Chemistry


Paper: https://arxiv.org/pdf/1704.01212.pdf
Code: https://github.com/brain-research/mpnn

量子化学的神经信息传递

这篇文献作者主要是总结了先前神经网络模型的共性,提出了一种消息传递神经网络(MPNN)的单一通用框架,并在此框架内探索其他新颖的变化。在重要的分子性质预测基准上使用MPNN展示了最先进的结果。
MPNN框架如下图所示:

主要贡献:

  • 开发了一种MPNN,可在所有13个目标上实现最先进的结果,并预测13个目标中11个目标的DFT在化学精度范围内。

  • 开发了几种不同的MPNN,可以预测DFT在13个目标中的5个的化学精度范围内,同时仅对分子的拓扑结构进行操作(没有空间信息作为输入)。

  • 开发了一种通用方法,用于训练具有更大节点表示的 MPNN,而不会相应增加计算时间或内存,与以前的高维节点表示的 MPNN 相比,节省了大量成本。

消息传递神经网络

MPNN模型:节点特征 xvx_vxv和边缘特征 evwe_{vw}evw 的无向图 GGG 。正向传递有两个阶段,消息传递阶段和Readout阶段。消息传递阶段运行T个时间步长,并根据消息函数MtM_tMt和顶点更新函数UtU_tUt进行定义。在消息传递阶段,图中每个节点的隐藏状态 hvth^t_vhvt根据消息 mvt+1m^{t+1}_vmvt+1根据

其中,在总和中,N(v)N (v)N(v) 表示图 GGGvvv 的邻居。readout阶段使用一些Readout函数 RRR 根据

消息函数 MtM_tMt、顶点更新函数 UtU_tUt和readout函数 RRR 都是学习的可微函数。RRR 在节点状态集上运行,并且必须对节点状态的排列不变,以便 MPNN 对图同构不变。作者通过指定使用的消息函数 MtM_tMt、顶点更新函数 UtU_tUt 和readout函数 RRR来定义文献中的先前模型。

先前模型

  • 用于学习分子指纹的卷积网络
  • 门控图神经网络
  • 交互网络
  • 分子图卷积
  • 深度张量神经网络
  • 基于拉普拉斯方法

MPNN 变体

作者使用 ddd 来表示图中每个节点的内部隐藏表示的维度,并使用 nnn来表示图中节点的数量。对 MPNN 的实现通常运行在有向图上,具有用于传入和传出边缘的单独消息通道,在这种情况下,传入消息 mvm_vmvmvinm^{in}_vmvinmvoutm^{out}_vmvout的串联。将该图视为有向图,其中每个原始边都成为具有相同标签的传入边和传出边。请注意,边的方向没有什么特别之处,它只与参数绑定有关。将无向图视为有向图意味着消息通道的大小为 2d 而不是 d。

消息函数

矩阵乘法: 从 GG-NN 中使用的消息函数开始,该函数由等式定义

边缘网络: 为了允许向量值边特征,提出了消息函数 M(hv,hw,evw)=A(evw)hwM(hv, h_w, e_{vw}) = A(e_{vw})h_wM(hv,hw,evw)=A(evw)hw,其中 A(evw)A(e_{vw})A(evw) 是一个神经网络,它将边向量 evwe_{vw}evw 映射到 d×dd × dd×d 矩阵。

对消息:矩阵乘法规则的一个属性是,从节点 www到节点 vvv 的消息只是隐藏状态 hwh_whw 和边缘 evwe_{vw}evw 的函数。特别是,它不依赖于隐藏状态 hvth^t_vhvt。理论上,如果允许节点消息同时依赖于源节点和目标节点,则网络可能能够更有效地使用消息通道。这里,沿边 eeewwwvvv 的消息是 mwv=f(hwt,hvt,evw)m_{wv} = f(h^t_w, h^t_v, e_{vw})mwv=f(hwt,hvt,evw),其中 fff是一个神经网络。将上述消息函数应用于有向图时,使用了两个单独的函数,MinM_{in}MinMoutM_{out}Mout。哪个函数应用于特定边 evwe_{vw}evw取决于该边的方向。

虚拟图元素

探索了两种不同的方法来更改消息在整个模型中的传递方式。最简单的修改涉及为未连接的节点对添加单独的“虚拟”边缘类型。这可以作为数据预处理步骤实现,并允许信息在传播阶段长距离传播。

Readout功能

尝试了两个Readout功能。首先是GG-NN中使用的Readout函数,由公式4定义。该模型首先将线性投影应用于每个元组(hvT,xv)(h_v^T,x_v)(hvTxv),然后将投影元组的集合T={(hvT,xv)}T = \{(h_v^T,x_v)\}T={(hvTxv)}作为输入。然后,经过 M 个计算步骤后,set2set 模型生成一个图级嵌入 q∗q^∗q,该嵌入与元组 T 的顺序不变。

Multiple Towers

为了解决O(n2d2)O(n^2d^2)O(n2d2)时间复杂度,我们将 ddd 维节点嵌入 hvth^t_vhvt 分解为 kkk 个不同的 d/kd/kd/k 维嵌入 hvt,kh^{t,k}_vhvt,k,并分别对 kkk 个副本中的每个副本运行传播步骤,以获得临时嵌入 h~vt+1,k,v∈G{ \tilde{h}^{t+1,k}_v , v \in G}h~vt+1,k,vG,为每个副本使用单独的消息和更新函数。根据方程将每个节点的 kkk 个临时嵌入混合在一起

输入表征

有关所有特征列表,请参见表 1。

其中:
**化学图:**在没有距离信息的情况下,邻接矩阵条目是离散键类型:单键、双键、三键或芳烃键类型。
距离箱:矩阵乘法消息函数假定离散的边类型,因此为了包含距离信息,将绑定距离分成 10 个箱。
原始距离特征: 当使用在向量值边上操作的消息函数时,邻接矩阵的条目是5维的,其中第一维表示原子对之间的欧氏距离,其余四个是键类型的一个热编码。

QM9 Dataset

数据集中的分子由氢 (H)、碳( C)、氧(O)、氮(N)和氟(F)原子组成,最多包含 9 个重(非氢)原子。大约134k个药物样的有机分子,它们跨越了广泛的化学领域。

结果


在表2中,MPNN 在 13 目标中的 11 个目标上实现了化学精度,在所有 13 个目标上都达到了最先进的水平。


表 3 中,这三种GG-NN模型修改有助于所有 13 个目标,并且 Set2Set 输出在 13 个目标中的 5 个目标上实现了化学精度。

http://www.lryc.cn/news/1027.html

相关文章:

  • Python:每日一题之全球变暖(DFS连通性判断)
  • 企业级安全软件装机量可能大增
  • 为什么要用频谱分析仪测量频谱?
  • Python环境搭建、Idea整合
  • HTTP请求返回304状态码以及研究nginx中的304
  • 【GD32F427开发板试用】使用Arm-2D显示电池电量
  • TS第二天 Typesrcipt编译
  • 基于C#制作一个飞机大战小游戏
  • git修改历史提交(commit)信息
  • 代码解析工具cpg
  • Linux虚拟机部署Java环境-Jdk-Mysql
  • 每日学术速递2.9
  • 【Linux】进程优先级 | 进程的切换 | 环境变量详解
  • leaflet 实现左卷帘效果 (代码示例045)
  • 程序的翻译环境和执行环境
  • 2023最新量化优选股票参考(2.9)
  • 深眸科技以科技赋能智慧物流搭建,实现周转箱拆垛作业智能化
  • R数据分析:孟德尔随机化中介的原理和实操二
  • 【SQL开发实战技巧】系列(十二):三问(如何对字符串字母去重后按字母顺序排列字符串?如何识别哪些字符串中包含数字?如何将分隔数据转换为多值IN列表?)
  • 数据库模式(schema)是什么?
  • 出现failed to load steamui.dll如何解决?好的修复方法推荐
  • js 原生事件触发
  • Nacos安装配置(二)
  • 【Linux基础知识】
  • 【王道数据结构】第七章| 查找 | 树
  • VBA提高篇_19 可选参数Optional_ IsMissing _MSgbox
  • 【子网划分】求子网网络前缀、子网地址、每个子网可以分配给主机使用的最小地址和最大地址
  • 网络协议安全
  • ImportError: /lib64/libm.so.6: version `GLIBC_2.23‘ not found问题解决方法
  • 盂县基本情况