使用自纠正Transformer神经网络预测逆合成反应
Kotori Y 27 Posts

本研究训练了一个纠正无效SMILES字符串的Transformer网络,有效地解决了合成预测任务中,产物高比率的无效SMILES的问题。

来源

引言

重要性/意义

有机合成是当代有机化学的重要地基,它将一系列的反应物变为可用的材料或者药物。而逆合成是用过不断地迭代,将一个复杂的化合物推导为若干简单的反应物。他的提出者Corey因此获得了1990年的诺贝尔化学奖。

由于一个化合物往往有许多的合成路线,这就需要化学家需要精确地预测出每一步的反应路线,无疑,这是非常困难的。

研究进展

和许多其他问题一样,诞生了许多计算机的预测方法,其中许多都是基于手写反应模板(hand-coded reaction templates)。Chematica是最著名的计算机辅助预测反应的软件,它包含了70,000个手动提取的反应规则,改工作消耗了Grzybowski Scientific Invention团队15多年的时间。基于这些模板,合成路线可以通过通用模板来规划。当数据库中拥有适合的模板时,该类方法能提供一个合理的预测路线。然而,手动编码全部的通过实验新增的反应是不现实的。此外,仅依靠一个简单的合成模板来预测反应路线是不能充分地让人信服的,因为它仅关注中心及其相邻的原子,而没有考虑全局的分子环境。

近期,一种被称为聚焦基于模板的方法被提出,用于从反应数据库中自动提取反应模板。这类方法的关键是为目标分子选出相关的模板。Segler和Waller通过使用神经网络,提出了一种模板相关性的评估方法。之后,他们指出结合蒙特卡洛数树与深度神经网络结能有效地选择出最有希望的逆合成方法。Albeit认为,这些方法高度依赖一个预定义的原子字典来映射反应物与产物,这仍是一个急需解决的问题。更进一步,常用的一些预测软件以来专家知识与反应模板,这似乎陷入了一个无限循环。无论怎样,基于模板的方法有一个限制,那就是他无法跳出模板所覆盖的化学空间,因此当该类方法用于预测新目标的时候,该类方法的效果将会很差。

为了解决问题,一种免模板的方法被提出,该方法的主要想法是基于SMILES,因此,逆合成预测的问题被转换成语言翻译问题,即从产物的SMILES到产物的SMILES。Nam和Kim首次提出将Seq2Seq模型用于预测正反应。在那之后,Liu等人报导了一个类Seq2Seq模型,并显示出与基于规则的方法不相上下的性能。该Seq2Seq模型可以使用端到端的数据进行充分的训练,而不需要原子映射。不幸的是,该方法没有提供一个显著的精确度的优势,反而提供了一些无效的SMILES字符串

最近,Ttransfomer架构在机器翻译领域表现出了显著的优势。它将传统的翻译模型中的递归神经网络移除,并基于自注意力机制,允许同时提取输入与输出中所包含的信息。Schwaller等人使用架构进行反应物的预测,并达到了SOTA,这给予我们(作者)使用该架构进行逆合成预测。

创新点

在本研究中,一种去模板的自纠正逆合成预测器(self-corrected retrosynthesis predictor, SCROP)被提出。该方法在USPTO-50K数据库上的表现,top1的ACC超过了SOTA,达到了59.0%,并且在jin的一个数据库上进行单产物预测,ACC为41.5%。同时,通过SCROP的较正,不合理的前体化合物的比例由12.1%降低到了0.7%。把与训练集相似的化合物从测试集移除后,该方法的ACC达到了47.6%,这是其他SOTA模型的1.7倍。更重要的是,该模型无需任何手写模板并且能预测出化学键断裂的微妙信息。

材料与方法

数据集

本研究中的所有数据均来自Lows等人之前的研究(Lowe, D. M. Extraction of Chemical Structures and Reactions from the Literature; University of Cambridge, 2012)。为了对比,将第一个数据集,USPTO-50,用作基准数据集,它包含了50,000个化学反应,并被Schneider分为10类反应。图1显示了该数据集中每类反应的分布情况。本研究将该数据集按40K、5K与5K的比例划分成训练集、验证集与测试集。

图.1 USPTO-50K数据库中各种反应类型的分布情况
图.1 USPTO-50K数据库中各种反应类型的分布情况

为了避免随机化分将相似的反应物聚集在训练集或测试集而带来的的过评估(overestimate), 本研究使用了聚类-划分策略。该策略主要基于Murcko股价进行实施。

为了进一步评估模型,本研究又使用了一个更大的数据集,它包含了480K个原子映射的化学反应并不包含预先定义好的化学反应类型。根据Schwaller等人之前的研究,将试剂(reagents)从反应物(reactants)中移除,并将分子标准化。最后将该数据集按照400K、40K与40K的比例分为训练、验证与测试集。

问题定义

对于给定的目标产物与反应类型,本研究的目标是预测出能按照反应类型反应而得到目标产物的反应物。和其他研究一样,本研究使用长度不定的SMILES字符串来表征反应物与产物,将任务转化成文本翻译任务。

这些序列首先将被编码成one-hot的形式,总唯维度为字典的长度(本研究中为50) 。通过该编码方法,每个序列会被转换成一组向量,为使训练过程更加稳定和高效,本研究按照之前的工作,输入的 one-hot 矩阵被压缩为信息丰富的词嵌入向量。作为结果,每个输入的序列都被表征成分子嵌入向量(molcular embeedding)。

其中是一个维的词嵌入向量,用来表征词库中的第个词语。

模型

本研究的模型通过两步来预测目标分子的合成路线:(1) 应用经过充分训练的逆合成反应预测器来推断一组原始候选反应物 (2) 使用分子句法校正器修复候选化合物中语法错误。

逆合成反应预测器

在第一步,首先使用transformer网络将目标产物的序列映射到产物的序列上,与其他研究不同的是,本研究还将反应类型也作为输入序列的一个Token(图2).

图.2 基于transfomer的逆合成反应预测器的架构和训练过程概述。“RX_5”token表示目标应通过保护反应分解。
图.2 基于transfomer的逆合成反应预测器的架构和训练过程概述。“RX_5”token表示目标应通过保护反应分解。

分子句法纠正器

和其他基于SMILES的模型一样,无效的SMILES是这一类模型比较大的一个问题,例如”c1ccoc”。之前的解决方法是使用Beam Search方法搜索若干结果。而在本研究中使用了一个Transformer的句法(syntax)纠正器来将无效的SMILES纠正成为可以被识别的合法的SMILES字符串。该想法的灵感来自于自然语言处理任务中的语法纠正模型。图3展示了该纠正器的工作原理。

图.3 针对基于Transfomer的逆合成预测器生成的两个无效预测的示例 SMILES 语法校正器。
图.3 针对基于Transfomer的逆合成预测器生成的两个无效预测的示例 SMILES 语法校正器。

该纠正器将正确且合理的反应物序列作为模型输出,将逆合成反应预测器中对应的句法无效的序列作为输入。具体步骤为:首先使用预测器预测训练集中的一组化合物,使用Beam Search方法预测出排名前10的反应物的序列;接着,移除上述结果中的正确的反应物序列;最后将句法的序列作为输入,其对应正确的序列作为输出,训练Transformer。将训练好的纠正器拼接到预测器之后,就得到了整个预测模型,值得注意的是,句法纠正器没有使用Beam Search,仅将概率最大的序列作为输出。并在训练前对分子进行标准化。

结果与讨论

从表1中可以看出在推断特定反应类别中的反应时,SCROP方法在Top-1评估方法中优于的所有基线,达到了59.0% 的ACC,其top3、top-5 和 top-10的ACC分别为 74.8、78.1 和 81.1%。 这些结果远高于之前 seq2seq 模型中报告的结果(top1: 37.4%,top10: 61.7%)。

Coley 等人的基于模板(相似性)的模型,预测100 个候选化合物,并选出了前 10 名作为结果。 由于 SCROP 没有对候选化合物进行排名,而是经过训练以准确预测前 1 名的结果,并且只预测得出10个候选组合,因此基于相似性的方法具有更高的top-5和top-10准确率。 即便如此,SCROP 还是将基于相似性的方法在 top-1 准确度上提高了 6.1%。

与原始逆合成预测器 (SCROP-noSC) 的结果进行比较表明,语法校正器使得top-1 到 top-10 的准确率得到了一定程度的提高,范围从 0.2% 到 1.0%。 top-1 和 top-3 准确率的增长并不明显,因为在这两个水平只产生了一小部分无效的预测。

在没有反应类的先验知识(在训练过程中删除反应类型标记)的情况下,SCROP 仍然比基于相似性的方法在 top-1 和 top-3 的准确度上提高了 6.4% 和 5.7%,并在top-5和top-10的水平上也与相似性的方法不相上下。

泛化评估

为了比较这些方法的泛化能力,本研究进一步评估了在USPTO-50K数据集上的模型表现。我们使用与原始论文中相同的参数设置在 USPTO-50K上使用聚类划分数据集重新训练了 seq2seq 和基于相似性的方法,除了在基于相似性的方法中生成的候选化合物设置为 10 而不是 100 以进行公平比较。如表 2 所示,从top-1到top-10的水平进行预测,SCROP 在有或没有反应类的情况下实现了数量级的改进。此外,还发现本模型与基于模板的方法相比表现更稳定。在不了解反应类别的情况下为聚类数据集规划逆合成时,我们模型的 top-1 准确度仅降低了 7.5%,而相似度方法的准确度为 16.6%。 这一结果表明,当训练数据集没有与目标化合物相似的化合物时,我们的无模板方法比基于模板的方法具有更好的泛化能力。

本研究还计算了在 USPTO-50K数据集上每个反应类别的top-10的预测结果。如表3所示,SCPOR 在所有 10 个反应类别中始终优于 seq2seq 模型,并在 6 个反应类别中优于相似性模型。例如,第 4 类反应(杂环形成)通常包括环状结构的形成,导致反应物 SMILES 字符串和目标产物 SMILES 字符串之间存在显着差异。 SCPOR 的最佳性能表明它能够诱导更好的句法关系并从反应数据中捕获全局化学信息。 SCPOR 在第一类(杂原子烷基化和芳基化)中也大大优于 seq2seq 和相似性模型。该反应类别的关键特征是反应可能与目标分子内的许多不同官能团发生。当目标分子的结构与知识库中的结构不相似时,很难确定准确的反应位点。因此,SCPOR 在该反应类型中表现出更好的泛化能力并正确推断反应物。

表 4 显示了与 Liu 等人的 seq2seq 模型在 Jin 的 USPTO 数据集上的比较。 分别达到了 41.5% 和 59.2% 的top-1和top-10准确率,SCROP 在更大的化学空间中优于最先进的无模板模型,证明了其可扩展性。

句法纠正器的评估

在Liu的工作中,不正确的预测被概括为三种类型:句法无效的输出、句法有效但化学上不合理、化学上合理但与真实情况不匹配。 在这项研究中,只使用纠正器来修复句法上无效的输出,因为识别其他两种类型的错误需要了解真实反应物。 如图 4 所示,对于 SCROP方法,只有 0.7% 的top-1和 2.3% 的top-10的无效率,这明显优于逆合成预测器(SCROP-noSC)和 seq2seq 模型。 例如,图 5 显示了苯诺沙洛芬(一种抗炎药)与句法校正剂耦合的预测合成路线。 该模型通过纠正原始的无效分子串,成功地提出了合理的预测路线。 此外,语法校正器使排名第 3 的预测更合理,尽管它不是正确答案。 这些结果表明语法校正器可用于优化无效预测。 当预测的反应被证明是错误的时,它提供了一种优化合成路线的新策略。

 图.4 seq2seq、逆合成预测器 (SCROP-noSC) 和自校正逆合成预测器 (SCROP) 之间针对不同Beam Search大小的无效率的比较。
图.4 seq2seq、逆合成预测器 (SCROP-noSC) 和自校正逆合成预测器 (SCROP) 之间针对不同Beam Search大小的无效率的比较。
图.5 与语法校正器耦合的逆合成预测示例。
图.5 与语法校正器耦合的逆合成预测示例。

注意力分析

为了研究模型学到了什么,本研究进一步分析了模型中的注意力权重。注意权重提供输入字符串中标记的线索,当生成输出字符串中的特定符号时,这些标记被认为更重要。例如,图 6 显示了从 SCROP(准确预测)和 seq2seq(错误预测)模型中提取的酰化反应的top-1的注意力图。我们观察到 SCROP 的注意力图中的强权重呈对角线趋势,它不断与输入和输出之间共享的 SMILES 子串对齐。此外,在推断看不见的反应位点“OH”和“.”时,模型可以同时考虑几个不连续的标记。这表明 SCROP 试图提取源序列的局部和全局信息。相比之下,seq2seq 模型的注意力图无法对齐输入-输出对的子串并导致错误的预测。

图.6 从SCROP和seq2seq模型中提取的酰化反应的 Top-1注意力图。
图.6 从SCROP和seq2seq模型中提取的酰化反应的 Top-1注意力图。

局限

本研究一个明显的缺点是该模型仅通过预测字符串的整体概率来对候选进行评分。实际上,在合成路线设计中还有许多额外的考虑因素,例如工艺复杂性、费用、生产率、安全性等。 这是因为除了反应字符串本身之外,公共数据集不包含其他技术信息。 我们将通过结合其他考虑因素(如相似性、反应复杂性、成本和反应产率)来探索评分系统,以优化当前的评估指标。

该模型的另一个限制是多步反应,一个可能的选择是使用Transformer递归地分解目标化合物,直到获得商业可用的构建模块,其中可以使用蒙特卡罗树搜索可对每个反应步骤中的输出进行评分。

最后就是硬件的限制。

总结

这项工作提出了一种用于化学逆合成预测的新型去模板深度学习方法。没有通过反应模板生成候选前体,而是使用Transformer神经网络通过学习反应物-产物对的顺序表征来生成潜在的候选者。 该方法通过在 Liu 的 USPTO-50K 数据集和 Jin 的数据集上达到 59.0% 的top-1水平准确率。同时,通过与基于神经网络的新型句法检查器相结合,无效候选前体的比率从 12.1% 降低到 0.7%。

个人启发

  • 我们可以将产物/反应物的类型(醇、羧酸、醛),或许能在一定程度上提升模型性能
  • 可以训练一个用SMILES预测其靶点氨基酸序列的模型,不过有几个待解决的问题: (1) 氨基酸序列很长,需要用到一定的分词或者压缩的方法; (2) 蛋白可能有多条氨基酸链,得加入sep断句,这么看的话可能Bert预训练模型更加适合。后者可以用英文预料预训练一个分词模型,将该分词模型迁移至氨基酸序列上。
  • Post title:使用自纠正Transformer神经网络预测逆合成反应
  • Post author:Kotori Y
  • Create time:2021-09-14 09:11
  • Post link:https://blog.iamkotori.com/2021/09/14/Predicting Retrosynthetic Reactions Using Self-Corrected Transformer Neural Networks/
  • Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.
 Comments