【原创】韩国科学技术院Yousung Jung课题组NMI期刊论文:欲擒故纵——基于广义模板的有机反应性预测图神经网络...

本文主要是介绍【原创】韩国科学技术院Yousung Jung课题组NMI期刊论文:欲擒故纵——基于广义模板的有机反应性预测图神经网络...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

b736da840ae4d53caae83438069c7fab.png

预测有机反应的结果是化学领域的一个基本问题。当前对有机反应结果的预测主要依赖于化学家在实验中积累的经验。为了推进化学领域的数字化,进一步加快合成路线的设计,开发精度更高的预测有机反应结果智能体势在必行。目前用于预测有机反应结果的机器学习模型可以分为基于模板的方法和无模板方法两种,但两种方法都有一定的局限性。无模板方法通过机械地翻译化学语言或编辑分子图预测反应结果,相比于知识渊博的化学家通过确定反应中心和应用所学的化学知识来对结果进行预测,智能体预测的结果缺乏可解释性,而基于模板的方法由于模板中包含了太多详细信息,模板的覆盖率和可伸缩性较低,很大程度上限制了该方法在预测有机反应结果中的应用。

韩国科学技术院Yousung Jung小组针对以上问题,设计了广义反应模板(GRTs)和基于图神经网络的智能体LocalTransformGRTs能显著降低详细信息对模板的约束,显著提高模板的覆盖率和可伸缩性;LocalTransform通过确定反应中心和应用GRTs来预测反应结果。近日,该项研究工作发表在Nature Machine Intelligence期刊(Nat Mach Intell 4, 772–780 (2022).)【1】。

智能体设计

有机反应主要是一个电子重排的过程,受这一点启发,该小组设计了广义反应模板的提取流程,如1所示,首先去掉反应中心原子的原子类型信息,再将原子描述为两个部分,第一部分代表了原子的动作,由四种反应基本动作(ATTACKBREAKCHANGEREMOTE)组合表示,另一部分代表了原子氢原子数和形式电荷的变化,将反应中心的所有原子进行描述,推导出最后的GRT。随后,该小组将训练集中410000个反应导入该流程,合并相似的GRT,最后得到了2986GRT

6c00fc0890ec4e51b6604a6af3a57539.png

1 广义反应模板的提取流程

在获得了GRTs之后,该小组开发了名为LocalTransform的基于图神经网络的智能体,如2所示,首先通过带全局注意力的图神经网络提取反应物中原子和化学键的反应性特征,再对各基团间的反应性进行排序,确定反应中心,最后应用GRTs预测反应结果,并给每个可能的结果进行打分。

ca4301130238babfdaa30e340aa6ad83.png

2 LocalTransform的流程

智能体性能测试

该小组首先测试了新设计的GRTs的覆盖率和可伸缩性,选择前一次研究【2】所使用的模板与其在同一测试集下进行对比,前者用30762个模板覆盖了90.3%的反应,而后者用2968个模板覆盖了99.7%的反应。除此之外,新设计的GRTs中覆盖率最高的前100个模板就覆盖了94.6%的数据集。综合以上两点,该小组设计的GRTs在覆盖率和可伸缩性上有了明显的提高。

为了测试LocalTransform的预测性能,该小组首先将训练好的模型用USPTO-480K数据集进行测试,并与对应任务的其他模型比较,结果如1所示,与现有的模型相比,LocalTransform在预测精度上取得了优异的成绩,尤其是相比于同为图网络的MEGAN模型,LocalTransform的预测精度在表中所有的top-k下均超越了前者。随后,该小组将由80个反应组成的标准数据集按照反应模板的稀有度分类,并将其交给人类专家和不同的模型进行预测 ,结果如3所示,在所有稀有度类别中,LocalTransform的预测精度均为最佳。

1 各种机器模型的top-k精确匹配精度对比表

5d35dbf8a8144cfbbd2d7dc08e9fc164.png

9d6c63468a0bd89004880477bff1d061.png

3 不同的预测方法对不同类型反应的预测精度

该小组还将预测结果的打分和预测精度进行关联分析,发现预测精度与预测结果的分数高度相关,高分数段的大部分预测结果有着高精度,因此用户可以将LocalTransform的打分结果理解为预测结果的可信度。

最后,该小组选取了一些预测失败的结果进行分析,发现一部分错误预测的反应如果用当前的化学知识进行推断,其人为推断结果与预测结果一致,而反应的真实结果用已知的化学知识无法解释,从侧面体现出该小组设计的智能体具有在现有的化学知识范围内准确预测反应结果的能力。

小结:本研究发现,在设计模板的过程中,适当忽略反应中的详细信息,可以增加模板的覆盖性和可伸缩性,再结合带全局注意力机制的图神经网络,可以提高模型的预测精度。但是这个模型在未来将面对更多的挑战,如过于依赖正确的原子映射、难以处理立体选择性反应等。未来随着算力的不断提升,算法的不断精进,智能体对反应机理的学习不断深入,相信会有更合理的解决方法。

参考文献

【1】 Chen, S., Jung, Y. A generalized-template-based graph neural network for accurate organic reactivity prediction. Nat Mach Intell 4, 772–780 (2022). 

【2】 Coley, C. W . et al. A graph-convolutional neural network model for the prediction of chemical reactivity. Chem. Sci.10, 370–377 (2019).

这篇关于【原创】韩国科学技术院Yousung Jung课题组NMI期刊论文:欲擒故纵——基于广义模板的有机反应性预测图神经网络...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/580324

相关文章

poj3468(线段树成段更新模板题)

题意:包括两个操作:1、将[a.b]上的数字加上v;2、查询区间[a,b]上的和 下面的介绍是下解题思路: 首先介绍  lazy-tag思想:用一个变量记录每一个线段树节点的变化值,当这部分线段的一致性被破坏我们就将这个变化值传递给子区间,大大增加了线段树的效率。 比如现在需要对[a,b]区间值进行加c操作,那么就从根节点[1,n]开始调用update函数进行操作,如果刚好执行到一个子节点,

C++11第三弹:lambda表达式 | 新的类功能 | 模板的可变参数

🌈个人主页: 南桥几晴秋 🌈C++专栏: 南桥谈C++ 🌈C语言专栏: C语言学习系列 🌈Linux学习专栏: 南桥谈Linux 🌈数据结构学习专栏: 数据结构杂谈 🌈数据库学习专栏: 南桥谈MySQL 🌈Qt学习专栏: 南桥谈Qt 🌈菜鸡代码练习: 练习随想记录 🌈git学习: 南桥谈Git 🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈�

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}

uva 1342 欧拉定理(计算几何模板)

题意: 给几个点,把这几个点用直线连起来,求这些直线把平面分成了几个。 解析: 欧拉定理: 顶点数 + 面数 - 边数= 2。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#inc

uva 11178 计算集合模板题

题意: 求三角形行三个角三等分点射线交出的内三角形坐标。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#include <stack>#include <vector>#include <

poj 2104 and hdu 2665 划分树模板入门题

题意: 给一个数组n(1e5)个数,给一个范围(fr, to, k),求这个范围中第k大的数。 解析: 划分树入门。 bing神的模板。 坑爹的地方是把-l 看成了-1........ 一直re。 代码: poj 2104: #include <iostream>#include <cstdio>#include <cstdlib>#include <al

最大流、 最小费用最大流终极版模板

最大流  const int inf = 1000000000 ;const int maxn = 20000 , maxm = 500000 ;struct Edge{int v , f ,next ;Edge(){}Edge(int _v , int _f , int _next):v(_v) ,f(_f),next(_next){}};int sourse , mee

C++语法知识点合集:11.模板

文章目录 一、非类型模板参数1.非类型模板参数的基本形式2.指针作为非类型模板参数3.引用作为非类型模板参数4.非类型模板参数的限制和陷阱:5.几个问题 二、模板的特化1.概念2.函数模板特化3.类模板特化(1)全特化(2)偏特化(3)类模板特化应用示例 三、模板分离编译1.概念2.模板的分离编译 模版总结 一、非类型模板参数 模板参数分类类型形参与非类型形参 非类型模板

Smarty模板引擎工作机制(一)

深入浅出Smarty模板引擎工作机制,我们将对比使用smarty模板引擎和没使用smarty模板引擎的两种开发方式的区别,并动手开发一个自己的模板引擎,以便加深对smarty模板引擎工作机制的理解。 在没有使用Smarty模板引擎的情况下,我们都是将PHP程序和网页模板合在一起编辑的,好比下面的源代码: <?php$title="深处浅出之Smarty模板引擎工作机制";$content=