热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

利用基于注意力的神经网络绘制化学反应空间图谱

《MappingtheSpaceofChemicalReactionsUsingAttention-BasedNeuralNetworks》利用基于注意力的神经网络绘制化学反应空

《Mapping the Space of Chemical Reactions Using Attention-Based Neural Networks》

利用基于注意力的神经网络绘制化学反应空间图谱。有机反应通常被分配到包含具有类似试剂和机理的反应类别中,反应类别有助于复杂概念的交流和化学反应空间的有效导航。但分类过程非常繁琐,需要标记反应中的分子数、反应中心以及反应物和试剂的区分来确定相应的反应类模板。本文工作表明,基于transformer的模型可以从未标记的、基于简单文本的化学反应表示中推断出反应类,达到了98.2%的分类准确率。学习到的表征可以用作反应指纹,比传统的反应指纹更好地捕捉反应类之间的细粒度差异,该指纹对化学反应空间的洞察进一步通过交互式反应图谱来说明,提供了可视化的聚类和相似性搜索。

摘要

有机反应通常被划分为包含具有类似试剂和机理的反应的类别。反应类有助于复杂概念的交流和化学反应空间的高效导航。然而,分类过程是一项乏味的任务。它需要通过注释反应中的分子数、反应中心以及反应物和试剂之间的区别来识别相应的反应类别模板。这项工作表明,基于transformer的模型可以从化学反应的无注释、简单的基于文本的表示中推断出反应类。我们的最佳模型达到了98.2%的分类准确率。我们还表明,学习到的表示可以用作反应指纹,比传统的反应指纹更好地捕捉反应类之间的细粒度差异。通过提供可视化聚类和相似性搜索的交互式反应图谱,展示了我们学习到的指纹对化学反应空间的洞察。

在过去十年中,基于计算机的分析系统已成为化学家的重要分析工具。深度学习方法脱颖而出,不仅适用于反应预测任务,还适用于合成路线规划和合成过程到动作转换。

在为数不多的方法中,应用于简化分子输入行输入系统(SMILES)13、14和其他基于文本的分子和反应表示的自然语言处理(NLP)方法11、12在化学领域尤其有效。最近,Schwaller等人15证明,神经网络能够在没有监督的情况下捕捉化学反应中从前体到产物的原子重排。图1 a)显示了化学反应的示例以及b)中相应的文本表示。

图1 化学反应的两个例子,以及描述转化的相关分类标签和反应模板。任务是根据化学反应预测反应类别或模板标签。反应的编码表示可以用作数据驱动的反应指纹。化学反应的两个例子,以及描述转化的相关分类标签和反应模板。任务是根据化学反应预测反应类别或模板标签。反应的编码表示可以用作数据驱动的反应指纹。

对用于分类化学反应的鲁棒算法的需求很高。对于专家化学家来说,反应类别的知识具有很大的价值,例如评估反应预测的质量。16化学家使用反应类导航大型反应数据库,检索同一类的类似成员,以分析和推断最佳反应条件。他们还使用反应类作为一种有效的方式来交流化学反应的作用以及它在原子重排方面的工作方式。如图1 c)所示,反应类别可以根据反应类型命名,反应类型指的是结构特征的变化,例如“硝基到氨基”。或者,它们可以以发现化学反应或改进已知转化的人的名字命名,如图1c)中的第二个例子。这是一种氯-铃木偶联反应,以铃木明(Akari Suzuki)命名。铃木明(Akari Suzuki)因在钯催化的交叉偶联反应方面的研究而于2010年获得诺贝尔奖。17反应分类的最新技术是商用工具,18,19根据专家书面规则库对反应进行分类。这些工具通常使用SMIRKS,这是一种用SMILES格式描述转换的语言。14,21相反,基于机器学习的分类器有可能提高对反应方程中噪声的鲁棒性,并避免对规则的显式表达的需要。

90年代的早期工作使用自组织神经网络绘制有机反应图,并研究它们之间的相似性。22-24最近,Schneider等人25开发了一种基于传统反应指纹的反应分类器。分子和反应指纹是离散分子结构和化学反应的固定大小矢量编码。Schneider等人25提出的目前性能最好的指纹图谱结合了产物-反应物差异指纹图谱和基于试剂计算的分子特征,并在50个反应类别的有限集合上进行了测试。这种差异指纹是目前最常用的手工制作的指纹之一。它已成功应用于反应条件预测,26其中反应描述中未考虑试剂。Ghiandoni等人27介绍了一种替代的分层分类方案和用于反应分类的随机3森林分类器。他们的算法通过共形预测输出置信度得分。Schneider等人25和Ghiandoni等人27开发的指纹都需要反应物-试剂-角色分离,28这通常是不明确的,因此限制了它们的适用性。

传统上,反应指纹是使用反应中心或反应物、试剂和产物指纹的组合手工制作的。例如,29岁的ChemAxon提供了八种此类反应指纹。基于Duvenaud等人30的可微分子指纹,Wei等人31提出了学习反应指纹的第一个示例,并用于预测化学反应。不幸的是,他们的指纹仅限于由两种反应物和一种试剂组成的固定反应方案,因此,仅对符合该方案的反应进行研究。类似地,Sandfort等人32的多重指纹特征是通过将固定数量的分子的多个指纹串联而成的。

在我们工作的第一部分,我们使用变压器家族中基于注意的神经网络预测化学反应类别。11,12我们的深度学习模型并不依赖于特定规则的制定,这些规则要求每个反应都要正确地绘制原子图。相反,他们学习了原子基序,这些基序可以区分不同类别的反应和原始反应,而无需反应物试剂角色注释(图1d)。基于转换器的序列-2-序列(seq-2-seq)模型11以95.2%的准确率匹配地面真相分类,而来自转换器(BERT)分类器12的双向编码器表示以98.2%的准确率匹配。我们分析了seq-2-seq模型的编解码器注意和BERT模型的自我注意。因此,我们观察到参与反应中心的原子以及特定于反应类别的试剂具有更大的关注权重。

在第二部分中,我们证明了由无监督和有监督的伯特模型学习的表示可以用作反应指纹。我们引入的反应指纹与反应中涉及的分子数量无关。经过化学反应训练的BERT 4模型可以将任何反应转化为向量,而无需原子映射或反应试剂分离。因此,我们的反应指纹普遍适用于任何反应数据库。基于这些反应指纹和TMAP,33一种将高维空间可视化为树状图的方法,我们能够映射化学反应空间,并在我们的反应图谱中根据反应类别显示近乎完美的聚类。此外,我们的指纹使化学家能够高效地搜索化学反应空间并检索类似反应的元数据。例如,元数据可以包含典型条件、合成过程和反应产率。

在一个不平衡的数据集上,我们的指纹和分类器的总体分类准确率达到98%以上,而使用传统反应指纹的准确率为41%。准确分类化学反应并将其表示为指纹的能力,增强了机器和人类对反应的可访问性。因此,我们的工作有可能开启有机合成领域的新见解。在最近的研究中,我们的模型被用来预测实验测得的活化能34和反应产率。35


Results and Discussion

Reaction classification

Classification results

我们使用一组标记的化学反应作为基本事实,将两个基于变压器的深度学习模型训练为体系结构。11,12,第一个是由VasWaWi等人推出的编码译码器,用于神经机器翻译中的序列到序列(SEQ-2-SEQ)任务。第二种是Devlin等人提出的一种称为BERT的编码器专用转换器。12后一种模型顶部有一个分类头,通常用于NLP中的单句分类任务。36,37图5显示了这种伯特分类器的可视化。

地面真实数据由以文本格式表示为SMILES的化学转换组成。它们的标记(分类)取自强烈不平衡的开心果数据集,38使用NameRXN进行反应分类。18在另一个实验中,我们使用来自开源数据的反应模板标签,我们将其称为USPTO 1k TPL。我们分析了我们的模型在测试集上的分类性能,测试集包含了来自开心果中792个不同类别的132k个反应,以及来自USPTO 1k TPL中1000个模板类别的45k个反应。表1对结果进行了总结。在Pistachio测试集上,变压器编码器-解码器模型(enc2-dec1)与ground truth分类匹配,准确率为95.2%。反应BERT分类器预测正确名称反应的准确率为98.2%,显著优于seq-2-seq方法。与之前的工作相比,25我们计算了Pistachio数据上的转换指纹AP3 (fold) + featureFP,并使用5-NearestNeighbour (5-NN)分类器39对测试集反应进行分类。即使我们使用RDKit分离反应物和试剂,40分类器的总体准确率仅为41.0%。传统的指纹图谱不能很好地反映反应类别之间的细粒度差异。“未识别”、“羧酸+胺缩合”、“酰胺Schotten-Baumann”和“N-Boc脱保护”类含有最多的假阳性。

相比之下,当查看混淆矩阵(CEN)41的混淆熵和总体马修斯相关系数(MCC)时,我们的没有反应物试剂分离的伯特分类器是性能最好的模型.

为了证明传统反应指纹的劣质性能并非源于5-NN分类器的选择,我们将预训练(rxnfp(pretrained))和微调BERT(rxnfp)的嵌入作为5-NN分类器的输入。然后我们对测试集的反应进行分类并计算分数。正如预期的那样,rxnfp的结果与伯特分类器中分类器层的输入完全匹配.

开心果测试中的不匹配主要与“未识别”反应有关。当分析个别错误时,我们发现我们的模型能够预测在前体和产物之间有轻微变化的反应的正确反应类别(例如不同的异构体)。这些例子与生成基本真理类的脆弱规则不匹配。因此,它们被标记为“未被识别”的反应。我们的模型对SMILES表示中的错误显示出非常高的鲁棒性。在补充信息中,我们报告了一些案例,尽管分子表示存在错误,但我们的模型能够正确地对专利程序文本中最初由化学家描述的反应进行分类。

在USPTO 1k TPL测试集上,传统和预训练的指纹表现比开心果数据集差。然而,伯特分类器以及伯特分类器与5-NN分类器的嵌入与他们在开心果数据集上的性能相匹配,准确率为98.9%。

下面关于数据驱动反应指纹的章节详细介绍了这两种反应指纹。我们的数据驱动方法与7个传统指纹在一个平衡的50k反应数据集上的比较可以在补充信息中找到。即使使用来自50个不同类别的10公里训练反应,微调嵌入也能够通过将精确度、召回率和F1分数从0.97提高到0.99,从而优于传统指纹。

图2 BERT分类器的分层[CLS]标记关注和enc2-dec1变压器模型的编解码器关注。横轴包含输入反应的符号。标记越暗,特定标记在特定层或输出步骤中受到的关注就越多。用CDK descript44创建的反应图上的颜色显示了从前体到地面真相中的产物的映射。

图2显示了两种不同化学转化的BERT分类器(反应上方)和seq-2-seq模型(反应下方)的编码器-解码器注意的分层[CLS]标记。我们观察到,较大的重量与作为反应中心一部分的原子或特定于反应类别的前体有关。就像人类期望看到基于分类的某一组原子一样,对于seq-2-seq模型,解码器学会了关注参与重排的原子来对反应进行分类。对于伯特分类器,初始层对所有反应标记的关注度较弱。中间层倾向于参与产品或前体。最后一层集中在反应中心和对8分类很重要的前体上。

Mapping Chemical Reaction Space

Data-driven Reaction Fingerprints

分子指纹被广泛用于筛选具有相似性质的分子或绘制化学空间图。45我们的反应伯特模型不仅在分类任务上表现最好,而且还允许化学家生成化学反应的矢量表示。这里我们介绍了基于BERT12模型计算的嵌入的反应指纹。它们可以应用于任何反应数据集,因为它们不需要反应物试剂拆分或固定数量的前体。在伯特模型的预训练过程中,反应微笑中的单个标记被屏蔽,然后由模型进行预测。由于预先设置的[CLS]令牌从不被屏蔽,因此模型始终能够参与该令牌的表示以恢复被屏蔽的令牌。直觉是,模型使用[CLS]标记嵌入反应的全局描述。在微调之前,[CLS]令牌嵌入完全是通过自我监督学习的。我们将此指纹称为rxnfp(预训练)。对于监督微调,然后将[CLS]标记的嵌入作为单层分类头的输入,并进一步细化。我们将阿月浑子训练集上微调的指纹称为rxnfp。在我们的例子中,[CLS]令牌嵌入是一个大小为256的向量,对应于伯特模型的隐藏大小。在监督分类任务中,模型必须关注反应中心和特定于个体名称反应的某些前体。例如,Eschweiler-Clarke甲基化(1.2.4)是一种甲基化反应,它可以与其他甲基化反应区别开来,因为其前体含有甲醛和甲酸(见图2)。另一个例子是Suzuki型偶联反应,其中“-type”后缀意味着金属催化剂缺失,但所描述的反应将与Suzuki偶联反应相对应。

Reaction Atlases

在图3中,我们展示了一个反应图集的注释版本,该图集是通过使用针对三个时代进行微调的伯特分类器的嵌入创建的。这些颜色对应于数据集中发现的12个超类。各个类几乎完全聚集在一起。值得注意的是,TMAP中的子树与反应类密切相关。例如,在左上角,一个子树包含所有“甲酰化”相关反应,Weinreb反应聚集在左下角的一个分支中,Suzuki型反应与相应的Suzuki反应共享同一个分支。未注释的反应图谱是使用从预训练的反应伯特模型计算的指纹创建的,无需进行分类微调。即使在应用了完全无监督的蒙面语言建模训练之后,该模型已经能够提取与反应分类相关的特征,并且可以在图中观察到一些聚类。

通过使用rxnfp(10k)嵌入并突出显示不同的前体和产品属性,可以在上找到交互式反应TMAP 33,该TMAP可视化了施耐德50k 25公共数据集https://rxn4chemistry.github.io/rxnfp/tmaps/tmap_ft_10k.html.

Reaction search

反应指纹的主要用例之一是在数据库中搜索类似的反应。与原子映射无关的反应指纹非常强大,因为它不需要知道反应中心,就可以打开反应恢复的可能性。例如,当一个黑盒模型(如正向反应预测模型6或反向合成模型9)预测一个反应时,可以从这些模型的训练集中检索最相似的反应。这种对类似反应的检索不仅可以提高深度学习模型的可解释性。它还允许化学家访问最近反应的元数据(包括产率和反应条件),如果这些信息可用的话。

在图4中,BERT分类器指纹的三个近似近邻可以从四个不同的反应类别中找到四个测试集反应。使用MacBook Pro(处理器:2.7 GHz Intel Core i7,内存:16 GB 2133 MHz LPDD)上未经优化的python代码,在包含240万个反应的训练集中,在毫秒内执行最近邻搜索。它们基于Probst和Reymond33开发的TMAP模块中的LSH森林,在所有搜索中,最近邻对应于与查询反应相同的类。即使对非专家来说,查询反应和检索到的最近邻之间的相似性也清晰可见。这些反应的前体即使不相同,也有相似之处,而且产物显示出相似的特征。这种反应搜索方法的最大优点之一是,它只需要一个反应作为输入。

为了研究我们的BERT分类器嵌入的稳健性,我们从微调训练集中删除了三个类(删除的反应类的数量:“1.6.4-氯纳烷基化”:24109,“3.9.17-Weinreb碘偶合”:225,“9.7.73-羟基-叠氮”:1526),并微调了另一个BERT分类器。在5个时代之后,我们从三个移除的类中生成了测试集反应的嵌入。对于“氯N-烷基化”和“羟基-叠氮”类,最常见的预测是“未识别”。在没有移除“Weinreb-碘偶合”类别的情况下,对BERT模型进行训练的所有预测都是“Weinreb-溴偶合”,其仅因反应卤素原子的类型而不同。另一个有趣的实验是从原始训练集中检索最近邻,用于在不删除类的情况下训练伯特模型生成的嵌入。对于测试集中1370个“氯N-烷基化”反应中的1078个,初始训练集中(包括所有反应类别)的最近邻反应是“氯N-烷基化”反应。对于10个“Weinreb-碘偶合”反应,原始训练集中的最近邻反应是四个“Weinreb-溴偶合”和其他四个“溴格氏+腈酮合成”反应,它们都是密切相关的反应类型。在最近的邻居中,没有明显占主导地位的反应类别,76个反应中有44个“未被识别”。

图4反应微笑查询的四个示例,以及从包含240万个反应的训练集中的LSHForest33检索到的三个最近邻。所有检索到的反应都属于与查询反应相同的反应类,并显示类似的前体。


结论

在这项工作中,我们着重于使用自然语言处理方法对化学反应进行数据驱动的分类,并利用其嵌入信息设计反应指纹。我们基于变压器的模型能够学习分类方案,使用广泛的化学反应作为基本事实,并通过商用反应分类工具进行标记。使用伯特分类器,我们匹配基于规则的分类13,准确率为98.2%,而传统指纹加5近邻分类器的准确率为41%。我们的模型能够了解每一类的原子环境特征,并提供一个易于化学家解释的基本原理。通过使用注意力权重来理解每种分类背后的原因,可能有助于最终用户化学家采用这些技术。我们证明,通过我们的伯特模型学习到的表示可以用作反应指纹。这些数据驱动的反应指纹开启了在不知道反应中心或反应物试剂拆分的情况下绘制反应空间的可能性。它们还可以对包含数百万个反应的反应数据集进行有效的最近邻搜索。此外,我们的指纹最近被用于估算实验测得的活化能34,并被微调以预测化学反应产率。


推荐阅读
  • 人工智能推理能力与假设检验
    最近Google的Deepmind开始研究如何让AI做数学题。这个问题的提出非常有启发,逻辑推理,发现新知识的能力应该是强人工智能出现自我意识之前最需要发展的能力。深度学习目前可以 ... [详细]
  • 「爆干7天7夜」入门AI人工智能学习路线一条龙,真的不能再透彻了
    前言应广大粉丝要求,今天迪迦来和大家讲解一下如何去入门人工智能,也算是迪迦对自己学习人工智能这么多年的一个总结吧,本条学习路线并不会那么 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 本博文基于《Amalgamationofproteinsequence,structureandtextualinformationforimprovingprote ... [详细]
  • 【论文】ICLR 2020 九篇满分论文!!!
    点击上方,选择星标或置顶,每天给你送干货!阅读大概需要11分钟跟随小博主,每天进步一丢丢来自:深度学习技术前沿 ... [详细]
  • 3年半巨亏242亿!商汤高估了深度学习,下错了棋?
    转自:新智元三年半研发开支近70亿,累计亏损242亿。AI这门生意好像越来越不好做了。近日,商汤科技已向港交所递交IPO申请。招股书显示& ... [详细]
  • JavaScript和Python是用于构建各种应用程序的两种有影响力的编程语言。尽管JavaScript多年来一直是占主导地位的编程语言,但Python的迅猛发展有 ... [详细]
  • 干货 | 携程AI推理性能的自动化优化实践
    作者简介携程度假AI研发团队致力于为携程旅游事业部提供丰富的AI技术产品,其中性能优化组为AI模型提供全方位的优化方案,提升推理性能降低成本࿰ ... [详细]
  • Word2vec,Fasttext,Glove,Elmo,Bert,Flairpre-trainWordEmbedding源码数据Github网址:词向量预训练实现Githubf ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • 本文介绍了Python语言程序设计中文件和数据格式化的操作,包括使用np.savetext保存文本文件,对文本文件和二进制文件进行统一的操作步骤,以及使用Numpy模块进行数据可视化编程的指南。同时还提供了一些关于Python的测试题。 ... [详细]
  • 腾讯T3大牛亲自教你!2021大厂Android面试经验,经典好文
    本篇将由环境搭建、实现原理、编程开发、插件开发、编译运行、性能稳定、发展未来等七个方面,对当前的ReactNative和Flutter进行全面的分析对比, ... [详细]
  • 前言作为一个移动端初学者、爱好者,能使用前端技术开发原生游戏一直是一件渴望而不可及的事情,暂且不说游戏逻辑的复杂度,算法的健壮性ÿ ... [详细]
author-avatar
喵屎柔_
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有