CN112037868B - 用于确定分子逆合成路线的神经网络的训练方法和装置 - Google Patents
用于确定分子逆合成路线的神经网络的训练方法和装置 Download PDFInfo
- Publication number
- CN112037868B CN112037868B CN202011218991.2A CN202011218991A CN112037868B CN 112037868 B CN112037868 B CN 112037868B CN 202011218991 A CN202011218991 A CN 202011218991A CN 112037868 B CN112037868 B CN 112037868B
- Authority
- CN
- China
- Prior art keywords
- molecule
- cost value
- disassembly
- molecules
- molecular
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/50—Molecular design, e.g. of drugs
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/10—Analysis or design of chemical reactions, syntheses or processes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/092—Reinforcement learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/098—Distributed learning, e.g. federated learning
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/70—Machine learning, data mining or chemometrics
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Chemical & Material Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Crystallography & Structural Chemistry (AREA)
- Bioinformatics & Computational Biology (AREA)
- Analytical Chemistry (AREA)
- Chemical Kinetics & Catalysis (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Pharmacology & Pharmacy (AREA)
- Medicinal Chemistry (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供了一种用于确定分子逆合成路线的神经网络的训练方法和装置。方法包括:对于多个分子,在确定各个分子的逆合成路线时,采用分层学习的理念,将需要探索较大深度的分子逆合成路线的训练过程拆解为多层进行训练,以多层分子逆合成路线代替完整的逆合成反应过程,在完成一层分子逆合成路线的训练后,借助分子筛选方式选择具有代表性的分子作为下一层分子逆合成路线的起始分子,能够有效的提高分子逆合成路线的探索效率,进而更为高效的提取出准确的分子的代价值信息。通过分层的方式,极大地减少了确定分子逆合成路线带来的大量计算开销,在保证分子逆合成路线准确性的基础上,减少了确定分子逆合成路线的时间。
Description
技术领域
本申请涉及人工智能技术领域,特别涉及一种用于确定分子逆合成路线的神经网络的训练方法、装置、设备及可读存储介质。
背景技术
近年来,人工智能技术飞速发展,已经逐渐被引入到各个科学领域,并且发挥着重要的作用。在化学领域,由于在不同条件下化学反应是无穷变化的,因此,以往在制备化合物分子时,研究人员需要大量的时间和精力才能设计出一条合理的有机合成路线,而如果基于人工智能技术辅助研究人员进行有机合成路线设计,就可以大大提高研究人员研发化学药物分子和其他化合物的效率。
目前基于人工智能进行分子逆合成路线设计的方法包括以下几种:一种是基于蒙特卡罗树搜索(Monte Carlo Tree Search,MCTS)算法进行随机搜索的步骤直到找到解决方案或达到最大深度为止,同时引入符号人工智能来完成分子逆合成路线的设计;另一种是基于深度强化学习技术,确定分子逆合成反应每一步的模板选择策略,最终得到分子逆合成路线;还有一种是基于分布式训练架构,结合深度强化学习技术加速最优分子逆合成路线的构建以及代价函数的网络拟合,通过该网络完成对训练集分子逆合成路线的设计。
然而,采用上述方法进行分子逆合成路线设计都耗时较长,并且上述方法在构建分子逆合成树的初期就需要决定其最大探索高度,这样的做法导致如果最大探索高度过小的话,一些较为复杂的分子很难在有限的高度内完成分子逆合成树的构建;反之,如果最大探索高度过大的话,则所需的时间会成指数增长,导致分子逆合成路线设计的效率和准确率较低。
发明内容
本申请实施例提供了一种用于确定分子逆合成路线的神经网络的训练方法、装置、设备及可读存储介质,通过分层的方式,极大地减少了确定分子逆合成路线带来的大量计算开销,在保证分子逆合成路线准确性的基础上,减少了确定分子逆合成路线的时间,进一步提高了训练速度。所述技术方案如下。
一方面,提供了一种用于确定分子逆合成路线的神经网络的训练方法,所述方法包括:
基于多个第一分子的分子表达信息,确定各个所述第一分子的第一拆解路径,所述第一拆解路径的路径深度小于或等于目标深度;
基于各个所述第一分子的第一拆解路径,得到第一代价字典,所述第一代价字典包括各个所述第一分子的分子表达信息和对应的代价值信息,所述第一分子的代价值信息用于表示将所述第一分子按照对应的第一拆解路径进行拆分所需代价;
基于各个所述第一分子的第一拆解路径,确定至少一个第二分子的分子表达信息,各个所述第二分子为能够被拆解为可获得分子的分子;
从各个所述第二分子中,确定多个第三分子,各个所述第三分子用于表示一类所述第二分子;
基于各个所述第三分子的第二拆解路径,得到第二代价字典,所述第二代价字典包括各个所述第三分子的分子表达信息和对应的代价值信息,所述第三分子的代价值信息用于表示将所述第三分子按照对应的第二拆解路径进行拆分所需代价;
基于所述第一代价字典和所述第二代价字典进行训练,得到目标神经网络,所述目标神经网络用于根据输入的目标分子的分子表达信息,输出所述目标分子对应的代价值信息。
另一方面,提供了一种分子逆合成路线确定方法,所述方法包括:
接收目标分子的分子表达信息,所述分子表达信息用于表示所述目标分子的三维化学结构;
将所述目标分子的分子表达信息输入用于确定分子逆合成路线的神经网络;
基于所述用于确定分子逆合成路线的神经网络,确定所述目标分子的目标拆解路径,所述目标拆解路径为至少一个拆解路径中代价值最低的拆解路径;
基于所述目标拆解路径,得到所述目标分子的分子逆合成路线信息。
另一方面,提供了一种用于确定分子逆合成路线的神经网络的训练装置,其特征在于,所述装置包括:
第一确定模块,用于基于多个第一分子的分子表达信息,确定各个所述第一分子的第一拆解路径,所述第一拆解路径的路径深度小于或等于目标深度;
第一代价字典生成模块,用于基于各个所述第一分子的第一拆解路径,得到第一代价字典,所述第一代价字典包括各个所述第一分子的分子表达信息和对应的代价值信息,所述第一分子的代价值信息用于表示将所述第一分子按照对应的第一拆解路径进行拆分所需代价;
第二确定模块,用于基于各个所述第一分子的第一拆解路径,确定至少一个第二分子的分子表达信息,各个所述第二分子为能够被拆解为可获得分子的分子;
第三确定模块,用于从各个所述第二分子中,确定多个第三分子,各个所述第三分子用于表示一类所述第二分子;
第二代价字典生成模块,用于基于各个所述第三分子的第二拆解路径,得到第二代价字典,所述第二代价字典包括各个所述第三分子的分子表达信息和对应的代价值信息,所述第三分子的代价值信息用于表示将所述第三分子按照对应的第二拆解路径进行拆分所需代价;
训练模块,用于基于所述第一代价字典和所述第二代价字典进行训练,得到目标神经网络,所述目标神经网络用于根据输入的目标分子的分子表达信息,输出所述目标分子对应的代价值信息。
在一种可选的实现方式中,所述第一确定模块包括:
获取单元,用于基于各个所述第一分子的分子表达信息和代价值参考信息,获取各个所述第一分子的第一初始代价值函数;
更新单元,用于当各个所述第一分子的任一拆解层次完成拆解时,基于各个所述第一分子的任一层拆解路径所对应的拆解代价值,对各个所述第一分子的第一初始代价值函数进行更新,得到各个所述第一分子的第一目标代价值函数,所述第一目标代价值函数用于确定所述第一分子具有最小拆解代价值的拆解路径;
确定单元,用于当任一所述第一分子的拆解任务满足目标拆解条件时,基于各个所述第一分子的第一目标代价值函数,确定各个所述第一分子的第一拆解路径。
在一种可选的实现方式中,所述获取单元用于:
基于各个所述第一分子的分子表达信息,将各个所述第一分子的拆解任务划分成多个第一子任务,所述拆解任务是指将各个所述第一分子按照拆解路径进行拆分;
将各个所述第一子任务分配给多个计算节点,由各个计算节点计算各个第一分子的第一初始代价值函数,并返回所述第一初始代价值函数,所述第一初始代价值函数由对应计算节点基于分子代价值参考信息计算得到,所述分子代价值参考信息用于表示分子的可拆解性;
接收各个所述计算节点反馈的第一初始代价值函数。
在一种可选的实现方式中,所述第一代价字典生成模块用于:
基于各个所述第一分子的第一拆解路径,确定各个所述第一分子对应的代价值信息;
根据各个所述第一分子的分子表达信息和对应的代价值信息,得到第一代价字典。
在一种可选的实现方式中,所述第三确定模块用于:
将各个所述第二分子进行聚类,得到多个集合,各个所述集合中包括具有相似分子结构的至少一个第二分子;
将各个所述集合的聚类中心确定为多个第三分子,所述第三分子为所属集合中的代表性分子。
在一种可选的实现方式中,所述训练模块包括:
第一训练单元,用于基于所述第二代价字典中每个分子的分子表达信息和对应的代价值信息,训练第二神经网络;
第二代价字典更新单元,用于基于所述第二代价字典,更新所述第一代价字典,得到更新后的第一代价字典;
第二训练单元,用于基于更新后的第一代价字典中每个分子的分子表达信息和对应的代价值信息,训练第一神经网络;
组合单元,用于将训练后的第二神经网络和第一神经网络进行组合,得到目标神经网络。
在一种可选的实现方式中,所述第一训练单元用于:
将所述第二代价字典中每个分子的分子表达信息,输入到所述第二神经网络中,得到每个分子对应的预测代价值信息;
基于每个分子对应的预测代价值信息和所述第二代价字典中每个分子对应的代价值信息,确定所述第二神经网络的模型损失;
根据所述第二神经网络的模型损失,调整所述第二神经网络中的网络参数。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器用于存储至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行以实现本申请实施例中的用于确定分子逆合成路线的神经网络的训练方法以及分子逆合成路线确定方法中所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行以实现如本申请实施例中用于确定分子逆合成路线的神经网络的训练方法以及分子逆合成路线确定方法中所执行的操作。
另一方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述各种可选实现方式中提供的用于确定分子逆合成路线的神经网络的训练方法以及分子逆合成路线确定方法。
本申请实施例提供的技术方案带来的有益效果是:
本申请实施例中,提供了一种用于确定分子逆合成路线的神经网络的训练方法,对于多个分子,在确定各个分子的逆合成路线时,采用分层学习的理念,将需要探索较大深度的分子逆合成路线的训练过程拆解为多层进行训练,以多层分子逆合成路线代替完整的逆合成反应过程,在完成一层分子逆合成路线的训练后,借助分子筛选方式选择具有代表性的分子作为下一层分子逆合成路线的起始分子,能够有效的提高分子逆合成路线的探索效率,进而更为高效的提取出准确的分子的代价值信息。通过分层的方式,极大地减少了确定分子逆合成路线带来的大量计算开销,在保证分子逆合成路线准确性的基础上,减少了确定分子逆合成路线的时间。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请实施例提供的一种用于确定分子逆合成路线的神经网络的训练方法的实施环境示意图;
图2是根据本申请实施例提供的一种基于分层方式构建分子逆合成树的架构图;
图3是根据本申请实施例提供的一种用于确定分子逆合成路线的神经网络的训练方法流程图;
图4是根据本申请实施例提供的另一种用于确定分子逆合成路线的神经网络的训练方法流程图;
图5是根据本申请实施例提供的一种得到第二代价字典的方法流程图;
图6是根据本申请实施例提供的一种用于确定分子逆合成路线的神经网络的训练方法架构图;
图7是根据本申请实施例提供的一种分子逆合成路线确定方法的流程图;
图8是根据本申请实施例提供的一种用于确定分子逆合成路线的神经网络的训练装置的框图;
图9是根据本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
下面简单介绍一下本申请实施例可能用到的技术以及名词。
人工智能(Artificial Intelligence, AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
马尔可夫决策过程(Markov Decision Process, MDP)是序贯决策(SequentialDecision)的数学模型,用于在***状态具有马尔可夫性质的环境中模拟智能体可实现的随机性策略与回报。MDP基于一组交互对象,即智能体和环境进行构建,所具有的要素包括状态、动作、策略和奖励。在MDP的模拟中,智能体会感知当前的***状态,按策略对环境实施动作,从而改变环境的状态并得到奖励,奖励随时间的积累被称为回报。
分子表达信息是用于表示分子的三维化学结构的信息。例如,该分子表达信息为分子的简化分子线性输入规范(Simplified molecular input line entryspecification,SMILES),即用字符串来表示分子的化学结构。再例如,该分子表达信息是用于表示分子结构的分子图,如表1所示,表1为分子图中常用的节点和边的性质。
表1
杰卡德相似系数(Jaccard similarity coefficient)用于比较有限样本集之间的相似性与差异性。Jaccard相似系数值越大,样本相似度越高。谷本(Tanimoto)系数由Jaccard系数扩展而来,又称为广义Jaccard相似系数。
可分解性评分(Synthetic Accessibility score,SA Score)是一种基于分子的复杂性,快速评估大量化合物分解难易程度的方法。该方法使用了“经常出现的子结构易于合成的假设”,将从有机小分子生物活性数据库(PubChem)中获得的100万种化合物中,对直径为4的扩展连接指纹(Extended-Connectivity Fingerprints,ECFP)的频率进行加权,以出现频率和分子复杂性的作为评价指标来计算分子的可分解性。可分解性评分将值标准化为1(简单)到10(困难)。
下面介绍一下本申请实施例提供的训练方法的实施环境,图1是根据本申请实施例提供的用于确定分子逆合成路线的神经网络的训练方法的实施环境示意图。该实施环境包括:终端101和服务器102。
终端101和服务器102能够通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。可选地,终端101是智能手机、平板电脑、笔记本电脑、台式计算机等,但并不局限于此。终端101能够向服务器102提供用于确定分子逆合成路线的神经网络的训练方法所需的基础信息,如分子表达信息(包括分子的图结构、简化分子线性输入规范等)、分子代价值参考信息(如分子的可分解性评分)以及分子逆合成参考信息(如分子的可拆解方案)等。
服务器102能够是独立的物理服务器,也能够是多个物理服务器构成的服务器集群或者分布式***,还能够是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。服务器102用于执行本申请实施例提供的用于确定分子逆合成路线的神经网络的训练方法,基于终端101提供的基础信息进行神经网络的训练。可选地,服务器102能够搭载Linux操作***和GPU计算资源。
可选地,在训练用于确定分子逆合成路线的神经网络的过程中,服务器102承担主要计算工作,终端101承担次要计算工作;或者,服务器102承担次要计算工作,终端101承担主要计算工作;或者,服务器102或终端101分别能够单独承担计算工作。
可选地,上述训练过程采用分布式训练,例如,分别利用多个计算节点来进行训练。服务器102包括训练服务器,训练服务器为服务器集群,包括多个作为计算节点的服务器,各个计算节点分别执行训练任务中的一部分任务,通过训练得到的神经网络模型能够发送到目标服务器上,为用户提供相应功能。
可选地,终端101泛指多个终端中的一个,本实施例仅以终端101来举例说明。本领域技术人员能够知晓,上述终端101的数量能够更多。比如上述终端101为几十个或几百个,或者更多数量,此时上述用于确定分子逆合成路线的神经网络的训练方法的实施环境还包括其他终端。本申请实施例对终端的数量和设备类型不加以限定。
可选地,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也能够是任何网络,包括但不限于局域网(Local Area Network, LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible MarkupLanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还能够使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet ProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还能够使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
在本申请实施例中,提供了一种用于确定分子逆合成路线的神经网络的训练方法,采用了分层式强化学习的方法。在化学领域,逆合成分析是解决分子合成路线的重要方法,也是分子合成路线设计的最简单、最基本的方法。其实质是对目标分子的分拆,通过分析目标分子的结构,逐步将其拆解为更简单、更容易合成的中间体和原料,从而完成分子合成路线的设计,其中,中间体是指合成目标分子所需的前体化合物,也即是市场上难以购得的需自行合成的有机化合物;原料是指市场上容易购得的合成目标分子的较简单的有机化合物。对分子进行逆合成路线的探索,也即是构建分子的逆合成树的过程。在相关技术中,在对现有分子的逆合成树的构建进行训练时,通常是基于预先设定的最大探索高度进行,这种方法导致如果最大探索高度过小的话,一些较为复杂的分子很难在有限的高度内完成分子逆合成树的构建;反之,如果最大探索高度过大的话,则构建所需时间会成指数增长。而本申请实施例在进行构建分子逆合成树的训练过程中,采用了分层构建的方式,能够极大地减少在构建分子逆合成树的过程中带来的大量计算和时间开销,更为具体的描述请详见下述实施例。
需要说明的是,下述实施例均以分为两层为例进行说明。然而,本发明实施例并不仅限于分为两层的方式,而是可以将构建分子逆合成树的过程分为多层,本申请实施例对此不进行限制。
例如,参见图2所示,图2是根据本申请实施例提供的一种基于分层方式构建分子逆合成树的架构图。如图2所示,以分子逆合成树的最大深度为10进行举例说明,将整个分子逆合成树的构建分为上下两层进行,以两个较小的分子逆合成树代替完整的逆合成反应过程。在完成上层分子逆合成树的构建后,借助分子聚类筛选方式选择具有代表性的分子作为下层分子逆合成树的起始分子,能够有效的提高分子逆合成路线的探索效率,进而更为高效的提取出准确的分子代价值信息。
下面对本申请实施例提供的一种用于确定分子逆合成路线的神经网络的训练方法进行具体说明。
图3是根据本申请实施例提供的一种用于确定分子逆合成路线的神经网络的训练方法流程图,如图3所示,在本申请实施例中以应用于服务器为例进行说明。该方法包括以下步骤。
301、服务器基于多个第一分子的分子表达信息,确定各个第一分子的第一拆解路径,该第一拆解路径的路径深度小于或等于目标深度。
在本申请实施例中,第一分子为现有分子。分子表达信息用于表示分子的三维化学结构。例如,该分子表达信息为分子的简化分子线性输入规范(SMILES),即用字符串来表示分子的化学结构。再例如,该分子表达信息是用于表示分子结构的分子图,本申请实施例对此不进行限制。第一拆解路径是指将第一分子进行拆解,直到拆解后满足目标拆解条件时,所需代价最小的路径。
302、服务器基于各个第一分子的第一拆解路径,得到第一代价字典,该第一代价字典包括各个该第一分子的分子表达信息和对应的代价值信息,该第一分子的代价值信息用于表示将该第一分子按照对应的第一拆解路径进行拆分所需代价。
在本申请实施例中,第一代价字典中的分子表达信息和对应的代价值信息以一对一的方式存在。
303、服务器基于各个该第一分子的第一拆解路径,确定至少一个第二分子的分子表达信息,各个该第二分子为能够被拆解为可获得分子的分子。
在本申请实施例中,各个第一分子基于对应的第一拆解路径进行拆解后,能够得到多个分子,在这些分子中,存在一部分分子并未完成拆解,且存在可拆解路径,将这些分子确定为第二分子。
304、服务器从各个该第二分子中,确定多个第三分子,各个该第三分子用于表示一类该第二分子。
在本申请实施例中,各个第二分子基于分子间的结构相似度分为多个集合,每个集合中的第二分子具有相似的分子结构,从每个集合中确定一个第三分子,该第三分子为所属集合中具有代表性的分子。
305、服务器基于各个该第三分子的第二拆解路径,得到第二代价字典,该第二代价字典包括各个该第三分子的分子表达信息和对应的代价值信息,该第三分子的代价值信息用于表示将该第三分子按照对应的第二拆解路径进行拆分所需代价。
在本申请实施例中,第二拆解路径是指将第三分子进行拆解,直到拆解后满足目标拆解条件时,所需代价最小的路径。第二代价字典中的分子表达信息和对应的代价值信息以一对一的方式存在。
306、服务器基于该第一代价字典和该第二代价字典进行训练,得到目标神经网络,该目标神经网络用于根据输入的目标分子的分子表达信息,输出该目标分子对应的代价值信息。
在本申请实施例中,服务器基于第一代价字典进行训练得到第一神经网络,基于第二代价字典进行训练得到第二神经网络,最终通过组合两个神经网络,得到目标神经网络。
需要说明的是,在本申请实施例中,上述步骤301至306是服务器将多个分子的逆合成路线的探索分为多层后,根据所得到的第L层和第L+1层,分别得到每层对应的代价字典,其中,L大于等于1,对于探索过程中所划分的每个层,均能够得到对应的代价字典,相应地,服务器在进行训练时,会基于第一代价字典、第二代价字典以及前L-1个层所得到的代价字典来进行神经网络的训练,以得到训练好的神经网络,来进行分子的多层分子逆合成路线的获取。
在本申请实施例中,提供了一种用于确定分子逆合成路线的神经网络的训练方法,对于多个分子,在确定各个分子的逆合成路线时,采用分层学习的理念,将需要探索较大深度的分子逆合成路线的训练过程拆解为多层进行训练,提高了训练速度,以多层分子逆合成路线代替完整的逆合成反应过程,在完成一层分子逆合成路线的训练后,借助分子筛选方式选择具有代表性的分子作为下一层分子逆合成路线的起始分子,能够有效的提高分子逆合成路线的探索效率,进而更为高效的提取出准确的分子的代价值信息。通过分层的方式,极大地减少了确定分子逆合成路线带来的大量计算开销,在保证分子逆合成路线准确性的基础上,减少了确定分子逆合成路线的时间。
图4是根据本申请实施例提供的另一种用于确定分子逆合成路线的神经网络的训练方法流程图,如图4所示,在本申请实施例中以应用于服务器为例,并以将分子的逆合成路线分为两层为例进行说明。该方法包括以下步骤。
401、服务器基于各个第一分子的分子表达信息,将各个第一分子的拆解任务划分成多个第一子任务,该拆解任务是指将各个该第一分子按照拆解路径进行拆分。
在本申请实施例中,拆解任务是指基于一个分子的分子表达信息,将一个分子基于对其分子结构的分析,按照拆解路径逐步拆分为更简单、更容易合成的至少一个分子。
在一种可选的实现方式中,服务器关联有分子数据库,该分子数据库用于存储现有分子的分子表达信息。服务器能够从该分子数据库中提取各个第一分子的分子表达信息,基于各个第一分子的分子表达信息,生成各个第一分子的拆解任务,再将各个第一分子的拆解任务划分为多个第一子任务,一个第一子任务包括至少一个第一分子的拆解任务。
在一个第一分子对应于一个拆解任务的前提下,服务器对多个第一分子的拆解任务进行划分时,包括下述任一种方式。
在第一种可选的实现方式中,服务器根据当前第一分子的数量以及当前计算节点的数量进行平均划分。例如,用当前第一分子的数量除以当前计算节点的数量,用得到的数值确定每个计算节点中的第一子任务的数量,每个第一子任务中第一分子的拆解任务的数量相同。
在第二种可选的实现方式中,服务器根据各个第一分子的分子表达信息,以分子的化学三维结构的复杂程度进行划分,例如,将具有单个苯环的第一分子的拆解任务划分至一个第一子任务中,将具有一个以上苯环的第一分子的拆解任务划分至另一个第一子任务,等等,一个第一子任务所对应各个第一分子的化学三维结构的复杂程度类似。
在第三种可选的实现方式中,服务器根据当前计算节点的数量以及计算节点的计算能力进行划分,例如,当前某一计算节点正在运行的子任务的数量大于阈值时,则将10个第一分子的拆解任务划分为一个第一子任务,当前某一计算节点正在运行的子任务的数量小于阈值时,则将100个第一分子的拆解任务划分为另一个第一子任务,等等,每个第一子任务中第一分子的拆解任务的数量不同。
需要说明的是,本申请实施例对多个第一分子的拆解任务进行划分的方式不进行具体限制,可以采用上述提供的可选方式中的任一种,也可以将任意可选方式进行结合,得到更为复杂的划分方式。
402、服务器将各个第一子任务分配给多个计算节点,由各个计算节点计算各个第一分子的第一初始代价值函数,并返回该第一初始代价值函数,该第一初始代价值函数由对应计算节点基于分子代价值参考信息计算得到。
在本申请实施例中,服务器能够同时基于多个计算节点处理数据,服务器将多个第一子任务分配到多个计算节点上,一个计算节点负责至少一个第一分子的拆解任务。通过采用多个计算节点进行并行计算的方式,能够加速训练进程,提高训练速度。第一初始代价值函数是计算节点基于每个第一分子的分子表达信息,利用分子代价值参考信息,计算得到的每个第一分子的初始的代价值函数。其中,分子代价值参考信息用于表示分子的可拆解性。代价值函数用于根据分子的分子表达信息,确定拆解该分子所需代价最小的拆解路径。在各个第一分子的拆解初期,利用分子代价值参考信息对每个第一分子的代价值函数进行初始化,避免了随机初始化得到的代价值函数在训练初期容易产生策略不稳定的情况,提高了基于代价值函数确定分子拆解路径的策略稳定性。
在一种可选的实现方式中,该分子代价值参考信息为可分解性评分,服务器通过采用可分解性评分对分子的代价值函数进行初始化,利用可分解性评分表征分子难易程度的先验优势,能够在一定程度上提升分子代价值函数的收敛速度。
在一种可选的实现方式中,服务器在将各个第一子任务分配给多个计算节点时,包括下述任一种方式。
在第一种可选的实现方式中,第一子任务的数量与当前计算节点的数量相同,服务器按照一对一的方式进行分配。
在第二种可选的实现方式中,第一子任务的数量大于当前计算节点的数量,服务器根据当前各个计算节点的计算能力进行分配。例如,对于计算能力较强的计算节点分配大于1个第一子任务,而对于计算能力较弱的计算节点则只分配一个第一子任务。
在第三种可选的实现方式中,服务器根据第一子任务中第一分子的拆解任务的数量,以及计算节点的计算能力进行分配,例如,对于计算能力较强的计算节点,将包括100个第一分子的拆解任务的第一子任务分配给该计算节点,而对于计算能力较弱的计算节点,则将包括10个第一分子的拆解任务的第一子任务分配给该计算节点。
需要说明的是,本申请实施例对于各个第一子任务分配给多个计算节点的方式不进行具体限制,可以采用上述提供的可选方式中的任一种,也可以将任意可选方式进行结合,得到更为复杂的分配方式。
403、服务器接收各个计算节点反馈的第一初始代价值函数。
在本申请实施例中,基于上述步骤402中各个计算节点计算得到的第一初始代价值函数,接收各个计算节点返回的与各个第一分子相对应的第一初始代价值函数。
需要说明的是,上述步骤401到步骤403是本申请实施例提供的基于分布式训练框架,并行分子逆合成路线探索过程的一种实施方式,采用分布式计算的方式能够在维持原有计算效果的同时,加快计算进程,提高训练速度。在另一种可选的实现方式中,服务器独立执行各个第一分子的拆解任务,不需要基于分布式训练框架进行,例如,服务器基于各个第一分子的分子表达信息以及分子代价值参考信息,得到各个第一分子的第一初始代价值函数,本申请实施例对此不进行具体限制。
404、当各个第一分子的任一拆解层次完成拆解时,服务器基于各个第一分子的任一层拆解路径所对应的拆解代价值,对各个第一分子的第一初始代价值函数进行更新,得到各个第一分子的第一目标代价值函数,该第一目标代价值函数用于确定该第一分子具有最小拆解代价值的拆解路径。
在本申请实施例中,在对各个第一分子执行拆解任务时,一个第一分子完整的拆解路径由至少一个拆解层次组成,一个拆解层次用于将一个第一分子进行一步拆解,也即是,一个第一分子的拆解路径由至少一步拆解组成。
其中,每一步拆解均存在多种拆解方法。每种拆解方法对应于一个拆解代价值,该拆解代价值用于表示基于当前拆解方法,将第一分子拆解为当前层次所需的代价。服务器在各个第一分子的任一拆解层次在完成拆解时,基于该任一拆解层次中存在的至少一种拆解方法,得到至少一个拆解代价值。基于该至少一个拆解代价值,对各个第一分子的第一初始值函数进行更新,得到各个第一分子的第一目标代价值函数,该第一目标代价值函数用于确定该第一分子具有最小拆解代价值的拆解路径。
例如,服务器在对第一分子进行拆解时,对于一个第一分子,在第一拆解层次A中,也即是对该第一分子进行第一步拆解时,存在三种拆解方法,A1, A2, A3,分别对应拆解代价值a1, a2, a3,基于这三种拆解代价值,更新该第一分子的第一初始代价值函数,更新后的代价值函数确定采用拆解方法A1进行拆解,所对应的拆解代价值a1最小,因此,服务器在第一拆解层次A中的拆解方法A1的基础上进行第二拆解层次B,也即是进行第二步拆解,同样,在该拆解层次B中,存在三种拆解方法,B1, B2, B3,分别对应拆解代价值b1, b2, b3,基于这三种拆解代价值,继续更新基于拆解层次A进行更新后的代价值函数,以确定拆解层次B中拆解代价值最小的拆解方法。服务器按照上述方法依次进行下一拆解层次,通过在任一拆解层次完成拆解时,对第一初始代价值函数进行迭代更新,最终得到第一目标代价值函数。
在一种可选的实现方式中,把确定具有最小拆解代价值的拆解路径的约束条件称为一种策略,在对各个第一分子执行拆解任务时,通过公式(1)计算得到第一分子基于该策略完成至少一个拆解层次后,得到的拆解路径所需的拆解代价值,此时,基于不同的拆解方法能够得到不同的拆解路径,也即得到不同的拆解代价值。当该第一分子的任一拆解层次完成拆解时,能够得到基于至少一条拆解路径的拆解代价值,基于计算得到的至少一个拆解代价值,更新第一分子的第一初始代价值函数,得到如公式(2)所示的第一目标代价值函数V*(m)。可选地,在得到第一目标代价值函数后,根据公式(3)对策略进行迭代更新,以π(r|m)作为对分子进行拆解的策略,也即是,第一分子的拆解路径可以基于该策略生成,对该策略进行迭代更新,得到更新后的策略π′(r|m),第一分子按照该更新后的策略π′(r|m)进行拆解时所需的代价最小。公式(1)至公式(3)如下所示:
公式(1)中,r为可供选择的反应,也即是在第一分子的拆解路径中存在的拆解方法,ctot为拆解第一分子所需的总拆解代价值,crxn为第一分子在一个拆解层次中按r反应拆解时的代价值;
公式(2)中,m为生成物,也即是第一分子,M(r)为分子集合;
公式(3)中,Vπ(m′)为第一分子按照π展开得到生成物m的代价值函数。
在一种可选的实现方式中,服务器在对各个第一分子执行拆解任务时,存在K个拆解层次,其中,K大于等于1,每完成一个拆解层次,对应的拆解代价值为1,当按照任一拆解层次中存在的至少一种拆解方法进行拆解后,得到的分子为分子数据库中存在的分子,则当前拆解方法的拆解代价值为0,当得到的分子为不可能存在的分子,例如,在分子数据库中不存在该分子,则当前拆解方法的拆解代价值为100。服务器通过上述公式(1)计算得到各个第一分子基于任一拆解层次得到的拆解代价值。最终,服务器能够基于经过任一拆解层次得到的拆解代价值,更新第一分子的第一初始代价值函数,以得到第一目标代价值函数。
在一种可选的实现方式中,服务器基于分子逆合成参考信息对各个第一分子执行拆解任务。该分子逆合成参考信息用于对各个第一分子的任一拆解层次,提供至少一种基于该拆解层次的拆解方法。例如,该分子逆合成参考信息是基于分子相似性的计算机辅助逆合成方法,该方法能够为分子提供可选拆解方案。又例如,该分子逆合成参考信息是一种模板神经网络,用于为分子的拆解提供至少一种反应模板,也即是拆解方法,其中,反应模板用于描述一类化学反应的过程,包括就化学键的断裂和新化学键的生成。
在一种可选的实现方式中,在上述对各个第一分子的拆解过程中,将各个第一分子的拆解过程建模为展开游戏,以π(r|m)作为对分子进行拆解的策略,其中,m为生成物,r为可供选择的反应,则可得到当前分子的代价函数,在展开过程中,不断更新第一目标代价值函数V*(m),用以确定拆解代价最小的拆解路径,并在每轮展开时对策略进行迭代更新。
405、当任一第一分子的拆解任务满足目标拆解条件时,服务器基于各个第一分子的第一目标代价值函数,确定各个第一分子的第一拆解路径。
在本申请实施例中,目标拆解条件是指当各个第一分子基于至少一个拆解层次,得到的拆解路径的路径深度小于目标深度,且得到的分子均不存在拆解方法,或者,当各个第一分子基于至少一个拆解层次,得到的拆解路径的路径深度等于目标深度。其中,目标深度为服务器预先设置的深度阈值。例如,将该深度阈值设置为5。
下面以目标深度为5进行举例说明:
若某一第一分子在经过P个拆解层次后,其中,P大于等于1,且小于5,得到的拆解路径的路径深度小于5,且得到的分子均不存在进一步拆解方法,也即是得到的分子均为能够从分子数据库中获得的分子,则该第一分子的拆解任务满足目标拆解条件,服务器基于当前拆解层次,得到该第一分子的第一目标代价值函数,基于该函数,确定一条具有最小拆解代价值的拆解路径,该拆解路径即为该第一分子的第一拆解路径。
若某一第一分子在经过Q个拆解层次后,此时Q等于5,得到的拆解路径的路径深度为5,则该第一分子的拆解任务满足目标拆解条件,服务器基于当前拆解层次,得到该第一分子的第一目标代价值函数,基于该函数,确定一条具有最小拆解代价值的拆解路径,该拆解路径即为该第一分子的第一拆解路径。
406、服务器基于各个第一分子的第一拆解路径,确定各个第一分子对应的代价值信息。
在本申请实施例中,各个第一分子的对应的代价值信息用于表示将该第一分子按照对应的第一拆解路径进行拆分所需代价。在一种可选的实现方式中,服务器基于各个第一分子的第一目标代价值函数,也即是V*(m),确定各个第一分子对应的代价值信息。在另一种可选的实现方式中,在对各个第一分子进行拆解时,每完成任一拆解层次,都能得到基于当前拆解层次,具有最小拆解代价值的拆解路径,也即能够得到基于当前拆解层次,各个第一分子对应的代价值信息。
407、服务器根据各个第一分子的分子表达信息和对应的代价值信息,得到第一代价字典,该第一代价字典包括各个第一分子的分子表达信息和对应的代价值信息。
在本申请实施例中,第一代价字典中的分子表达信息和对应的代价值信息以一对一的方式存在。例如,在第一代价字典中可以采用键值对的方式,表示每个分子的分子表达信息以及与其对应的代价值信息,也即是,在第一代价字典中存在N个键值对,其中,N大于等于1:{Smile 1 :cost 1 };{Smile 2 :cost 2 }……{Smile N :cost N },分别用于表示分子1至分子N以及与其对应的代价值信息。
服务器经过上述步骤401至步骤407,完成了对多个第一分子的上层逆合成路线的探索,得到了与上层逆合成路线对应的第一代价字典。
408、服务器基于各个第一分子的第一拆解路径,确定至少一个第二分子的分子表达信息,各个第二分子为能够被拆解为可获得分子的分子。
在本申请实施例中,各个第一分子基于对应的第一拆解路径进行拆解后,能够得到多个分子,在这些分子中,存在一部分分子并未完成拆解,且存在可拆解路径,将这些分子确定为第二分子。
在一种可选的实现方式中,服务器基于某一个第一分子,在执行与其对应的拆解任务时,该第一分子基于与其对应的第一拆解路径进行拆解后,得到至少一个分子,然后确定得到的至少一个分子的分子表达信息,基于此,服务器确定所得到的分子是否能够进一步拆解,如果存在某一分子能够进一步拆解,则确定该分子是否存在拆解方法,若存在拆解方法,则将该分子确定为一个第二分子。
需要说明的是,在本申请实施例中,服务器按照上述步骤406至步骤408以从前往后的顺序先基于各个第一分子的第一拆解路径,确定各个第一分子的代价值信息,得到第一代价字典,再确定至少一个第二分子。在另一种可选的实现方式中,服务器可以先按照步骤408基于各个第一分子的第一拆解路径,确定至少一个第二分子,再执行步骤406和407以得到第一代价字典。本申请实施例对此不进行具体限制。
409、服务器将各个第二分子进行聚类,得到多个集合,各个集合中包括具有相似分子结构的至少一个第二分子。
在本申请实施例中,聚类是指将各个第二分子,基于各个分子间的结构化相似度,划分为多个集合的过程。其中,每个集合中的第二分子具有相似的分子结构。可选地,服务器能够基于其他分类方法将至少一个第二分子进行分类,例如,贝叶斯分类算法等。通过本申请实施例对此不进行具体限制。
在一种可选的实现方式中,服务器基于泰勒布蒂纳(Taylor Butina,TB)算法对各个第二分子进行聚类。通过Tanimoto 系数来决定两个第二分子之间的结构化相似度,如公式(4)所示:
公式(4)中,mi是分子i的ECPF4分子指纹,mj是分子j的ECPF4分子指纹,例如,ECPF4分子指纹的指纹长度为1024,半径为3。
当两个分子之间的Tanimoto系数小于预设阈值时,则认为两个分子属于同一类分子,将这两个分子放入同一个集合内。例如,该预设阈值为0.4,本申请实施例对该预设阈值的设置不进行具体限制,可根据实际情况进行调整。
需要说明的是,在本申请实施例中,采用TB算法对至少一个第二分子进行聚类,在另一种可选的实现方式中,服务器能够采用其他聚类算法对第二分子进行聚类,例如,k均值聚类算法(k-means clustering algorithm)、均值漂移聚类算法等等。本申请实施例对此不进行具体限制。
410、服务器将各个集合的聚类中心确定为多个第三分子,该第三分子为所属集合中的代表性分子。
在本申请实施例中,聚类中心是指通过对各个第二分子进行聚类后,所生成的多个集合中的中心,该中心即为所属集合中具有代表性的第二分子,将该具有代表性的第二分子确定为第三分子。
服务器经过上述步骤408至步骤410,对各个第一分子经过上层逆合成路线的探索后,对得到的多个未完成分解且还存在拆解方法的分子进行筛选,得到具有代表性的多个第三分子,将这些第三分子作为下层逆合成路线的起始分子,避免了在每一个分子的逆合成路线进行探索时,需要不断拆解直到达到最大深度,或者,直到完成整个路线的探索,耗时较长。在分层的过程中,选用了有代表性的分子作为第三分子,大大降低了后续训练过程的计算量,减少了确定分子逆合成路线的时间,进一步提高了训练速度。
411、服务器基于各个第三分子的第二拆解路径,得到第二代价字典,该第二代价字典包括各个第三分子的分子表达信息和对应的代价值信息,该第三分子的代价值信息用于表示将该第三分子按照对应的第二拆解路径进行拆分所需代价。
在本申请实施例中,基于各个第三分子的第二拆解路径,得到第二代价字典的过程参考图5,图5是根据本申请实施例提供的一种得到第二代价字典的方法流程图,具体分为以下步骤501至步骤507,需要说明的是,步骤501至步骤507与执行上述步骤401至步骤407的过程类似,故以下仅对步骤501至步骤507进行简要说明,对具体可选的实现方式不进行赘述。
501、服务器基于各个第三分子的分子表达信息,将各个第三分子的拆解任务划分成多个第二子任务,该拆解任务是指将各个该第三分子按照拆解路径进行拆分。
在本申请实施例中,第三分子为经过执行上述步骤410后所得到的分子。服务器基于各个第三分子的分子表达信息,将多个第三分子的拆解任务划分为多个子任务。
502、服务器将各个第二子任务分配给多个计算节点,由各个计算节点计算各个第三分子的第二初始代价值函数,并返回该第二初始代价值函数,该第二初始代价值函数由对应计算节点基于分子代价值参考信息计算得到。
在本申请实施例中,服务器能够同时基于多个计算节点处理数据,服务器将多个第二子任务分配到多个计算节点上,一个第二计算节点负责至少一个第三分子的拆解任务。第二初始代价值函数是计算节点基于每个第三分子的分子表达信息,利用分子代价值参考信息计算得到的每个第三分子的初始的代价值函数。代价值函数用于根据分子的分子表达信息,确定拆解该分子所需代价最小的拆解路径。在各个第三分子的拆解初期,利用分子代价值参考信息对每个第三分子的代价值函数进行初始化,避免了随机初始化得到的代价值函数在训练初期容易产生策略不稳定的情况,提高了基于代价值函数确定分子拆解路径的策略稳定性。
503、服务器接收各个计算节点反馈的第二初始代价值函数。
在本申请实施例中,基于上述步骤502中各个计算节点计算得到的第二初始代价值函数,服务器能够接收各个计算节点返回的与各个第三分子相对应的第二初始代价值函数。
504、当各个第三分子的任一拆解层次完成拆解时,服务器基于各个第三分子的任一层拆解路径所对应的拆解代价值,对各个第三分子的第二初始代价值函数进行更新,得到各个第三分子的第二目标代价值函数,该第二目标代价值函数用于确定该第三分子具有最小拆解代价值的拆解路径。
在本申请实施例中,在对各个第三分子执行拆解任务时,一个第三分子完整的拆解路径由至少一个拆解层次组成,一个拆解层次用于将一个第三分子进行一步拆解,也即是,一个第三分子的拆解路径由至少一步拆解组成。
其中,每一步拆解均存在多种拆解方法。每种拆解方法对应于一个拆解代价值,该拆解代价值用于表示基于当前拆解方法,将第三分子拆解为当前层次所需的代价。服务器在各个第三分子的任一拆解层次在完成拆解时,基于该任一拆解层次中存在的至少一种拆解方法,得到至少一个拆解代价值。基于该至少一个拆解代价值,对各个第三分子的第二初始值函数进行更新,得到各个第三分子的第二目标代价值函数,该第二目标代价值函数用于确定该第三分子具有最小拆解代价值的拆解路径。
505、当任一第三分子的拆解任务满足目标拆解条件时,服务器基于各个第三分子的第二目标代价值函数,确定各个第三分子的第二拆解路径。
在本申请实施例中,目标拆解条件是指当各个第三分子基于至少一个拆解层次,得到的拆解路径的路径深度小于目标深度,且得到的分子均不存在拆解方法,或者,当各个第三分子基于至少一个拆解层次,得到的拆解路径的路径深度等于目标深度。其中,目标深度为服务器预先设置的深度阈值。例如,将该深度阈值设置为5。第二拆解路径是指将第三分子进行拆解,直到拆解后满足目标拆解条件时,所需代价最小的路径。
506、服务器基于各个第三分子的第二拆解路径,确定各个第三分子对应的代价值信息。
在本申请实施例中,各个第三分子的对应的代价值信息用于表示将该第三分子按照对应的第二拆解路径进行拆分所需代价。
507、服务器根据各个第三分子的分子表达信息和对应的代价值信息,得到第二代价字典,该第二代价字典包括各个第三分子的分子表达信息和对应的代价值信息。
在本申请实施例中,第二代价字典中的分子表达信息和对应的代价值信息以一对一的方式存在。例如,在第二代价字典中可以以键值对的方式,表示每个分子的分子表达信息以及与其对应的代价值信息,也即是,在第二代价字典中存在M个键值对,其中,M大于等于1:{Smile 1 :cost 1 };{Smile 2 :cost 2 }……{Smile M :cost M },分别用于表示分子1至分子M以及与其对应的代价值信息。
服务器经过上述步骤501至步骤507,完成了对下层逆合成路线的探索,得到了与下层逆合成路线对应的第二代价字典。基于这样分层的方式,将多个第一分子整个逆合成路线的探索进行分层,先完成上层逆合成路线的探索,筛选出具有代表性的分子后,再完成下层逆合成路线的探索,极大的减少了分子逆合成路线探索的时间。
412、服务器基于第二代价字典中每个分子的分子表达信息和对应的代价值信息,训练第二神经网络。
在本申请实施例中,神经网络包括第一神经网络和第二神经网络,其中,第一神经网络是基于第一代价字典中的信息,进行训练得到的神经网络,第二神经网络是指基于第二代价字典中的信息,进行训练得到的神经网络。上述步骤412包括以下步骤:服务器将第二代价字典中某一个分子的分子表达信息,输入到第二神经网络中,基于第二神经网络的网络参数进行计算,得到该分子对应的预测代价值信息;服务器基于该分子对应的预测代价值信息和第二代价字典中该分子对应的代价值信息,确定第二神经网络的模型损失;服务器根据第二神经网络的模型损失,调整第二神经网络中的网络参数,基于调整后的第二神经网络,再次输入新分子的分子表达信息,根据每次输入得到的预测代价值信息以及所输入分子对应的代价值信息,不断迭代调整第二神经网络中的网络参数,直到该第二神经网络的模型损失符合目标条件,然后服务器将当前第二神经网络确定为训练后的第二神经网络。
需要说明的是,本申请实施例对于第二神经网络的训练过程还可以包括其他步骤,在这里不进行赘述。
413、服务器基于第二代价字典,更新第一代价字典,得到更新后的第一代价字典。
在本申请实施例中,第二代价字典中的各个第三分子,是基于将第一代价字典中的第一分子进行拆解,然后将得到的多个分子进行聚类所确定的。在第二代价字典中包括有各个第三分子的分子表达信息,以及对应的代价值信息,服务器利用各个第三分子的分子表达信息以及对应的代价值信息,去更新各个第一分子的代价值信息,得到更新后的第一代价字典。服务器对各个第一分子的代价值信息,通过自下而上的更新过程,提高了确定分子逆合成代价的准确性。
在一种可选的实现方式中,服务器基于第二代价字典,更新第一代价字典的具体过程为:根据各个第三分子的分子表达信息,确定各个第三分子所对应的各个第一分子的分子表达信息,然后基于第二代价字典中各个第三分子的代价值信息,以及第一代价字典中所对应的各个第一分子的代价值信息,将两者对应相加,得到更新后的各个第一分子的代价值信息,也即得到了更新后的第一代价字典。例如,服务器根据某一个第三分子的代价值信息,得到拆解该第三分子的最小拆解代价值为10,与其对应的第一分子的最小拆解代价值为20,则更新后的第一分子的最小拆解代价值为30,本申请实施例对于更新第一代价字典的方式不进行具体限制。
414、服务器基于更新后的第一代价字典中每个分子的分子表达信息和对应的代价值信息,训练第一神经网络。
在本申请实施例中,本步骤414包括以下步骤:服务器将第一代价字典中某一个分子的分子表达信息,输入到第一神经网络中,基于第一神经网络的网络参数进行计算,得到该分子对应的预测代价值信息;服务器基于该分子对应的预测代价值信息和第一代价字典中该分子对应的代价值信息,确定第一神经网络的模型损失;服务器根据第一神经网络的模型损失,调整第一神经网络中的网络参数,基于调整后的第一神经网络,再次输入新分子的分子表达信息,根据每次输入得到的预测代价值信息以及所输入分子对应的代价值信息,不断迭代调整第一神经网络中的网络参数,直到该第一神经网络的模型损失符合目标条件,然后服务器将当前第一神经网络确定为训练后的第一神经网络。
需要说明的是,本申请实施例对于第一神经网络的训练过程还可以包括其他步骤,在这里不进行赘述。
415、服务器将训练后的第二神经网络和第一神经网络进行组合,得到目标神经网络。
在本申请实施例中,目标神经网络用于根据输入的目标分子的分子表达信息,输出该目标分子对应的代价值信息。服务器将训练后的第二神经网络和第一神经网络进行组合,得到目标神经网络。例如,服务器基于串行的方式得到目标神经网络,对于目标分子,将该目标分子的分子表达信息输入到第一神经网络中,输出该目标分子基于上层逆合成路线的代价值信息,然后,服务器确定该目标分子经过上层逆合成路线后得到的存在进一步拆解方法的分子,并将存在进一步拆解方法的分子输入到第二神经网络中,输出目标分子基于下层逆合成路线的代价值信息,最终得出目标分子完整的逆合成路线,本申请实施例对于得到目标神经网络的方式不进行具体限制。
经过上述步骤412至步骤415,服务器基于第二代价字典和更新后的第一代价字典,训练得到目标神经网络,能够最大化本发明的目标神经网络对于未参与训练过程的分子的泛化能力,使得基于该目标神经网络,实现对任意分子都能得到拆解路径。
需要说明的是,在本申请实施例中,服务器按照上述步骤412至415以从前往后的顺序先训练第二神经网络,再更新第一代价字典,再训练第一神经网络。在另一种可选的实现方式中,服务器可以先执行步骤413更新第一代价字典,再执行步骤412、步骤414以及步骤415,以得到目标神经网络。本申请实施例对此不进行具体限制。
还需要说明的是,在本申请实施例中,上述步骤412至步骤415是本申请实施例提供的通过训练得到目标神经的过程的一种实施方式,可选地,服务器还能够通过其他训练方式得到目标神经网络,本申请实施例对此不进行具体限制。
另外,参见表2,表2是相关方法和本申请实施例的实验效果对比,该实验是基于标准数据集进行,得到的成功分解同样数量分子所需的时间,实验结果表明,与相关方法相比,采用本申请实施例所提供的方法,在分解同样数量的分子时,所需的时间明显少于其他几种方法。
表2
算法\成功分解分子数 | 1000 | 2000 | 3000 |
蒙特卡洛树(MCTS) | 55h | 98h | -- |
强化学习 | 52h | 107h | 146h |
基于分布式的强化学习 | 23h | 45h | 63h |
本申请实施例 | 12h | 25h | 35h |
参见表3,表3是相关方法和本申请实施例的实验效果对比,该实验是基于标准数据集进行,得到的分解同样数量分子的分解结果。实验结果表明,与相关方法相比,采用本申请实施例所提供的方法,在分解同样数量的分子时,成功分解数最大,因无法分解失败数最小,且因分解层数过大失败数也最小。
表3
算法\分解结果 | 成功分解数 | 因无法分解失败数 | 因分解层数过大失败数 |
蒙特卡洛树(MCTS) | 2567 | 574 | 698 |
强化学习 | 3122 | 194 | 523 |
基于分布式的强化学习 | 3085 | 289 | 465 |
本申请实施例 | 3578 | 65 | 196 |
当然,上述不同的实施方式可以互相结合,以构成不同的实施方案,本发明实施例对此不作限定。
在本申请实施例中,提供了一种用于确定分子逆合成路线的神经网络的训练方法,对于多个分子,在确定各个分子的逆合成路线时,采用分层学习的理念,将需要探索较大深度的分子逆合成路线的训练过程拆解为多层进行训练,提高了训练速度,以多层分子逆合成路线代替完整的逆合成反应过程,在完成一层分子逆合成路线的训练后,借助分子筛选方式选择具有代表性的分子作为下一层分子逆合成路线的起始分子,能够有效的提高分子逆合成路线的探索效率,进而更为高效的提取出准确的分子的代价值信息。通过分层的方式,极大地减少了确定分子逆合成路线带来的大量计算开销,在保证分子逆合成路线准确性的基础上,减少了确定分子逆合成路线的时间。
下面结合实际情况,对本申请实施例提供的一种用于确定分子逆合成路线的神经网络的训练方法进行举例说明,如图6所示,图6是根据本申请实施例提供的一种用于确定分子逆合成路线的神经网络的训练架构图,以分为两层为例进行说明。
首先,对于分子训练集中的分子,采用分布式训练框架进行并行上层逆合成路线探索,将所有的分子拆解任务分配给N个计算节点,其中N大于等于1。各个计算节点分别执行分子的拆解任务,每个分子在拆解初期采用分子可分解评价分数对其代价值函数进行初始化,利用其表征分子分解难易程度的先验优势,提升分子代价值函数的收敛速度。然后根据策略π(r|m),对每个分子进行展开,最终得到各个分子在各自对应的策略下的代价。当各个计算节点计算完毕,将所有分子的分子表达信息及其代价值信息进行汇总,得到上层代价字典。
其次,在完成上层逆合成路线的探索后,收集拆解得到的分子中,未完成拆解且存在拆解方法的分子,使用TB算法对分子进行聚类,筛选具有代表性的分子作为下层分子逆合成路线探索的初始训练集,也即是下层训练数据。采用类似于上层的分子展开过程对下层分子训练集中的分子进行展开,得到下层代价字典。
再次,基于下层代价字典更新上层代价字典,分别基于两个代价字典训练对应的神经网络,利用深度学习技术对两个神经网络进行监督训练,得到能够对新目标分子进行逆合成路线探索的目标神经网络。其中,对神经网络进行监督训练的过程为:输入分子的分子表达信息,经过一个第一全连接层(Dense),对数据进行批量规范化(BatchNormalization)处理,再经过一个第二全连接层,对数据进行批量化规范处理,对经过一个第二全连接层,对数据进行批量化规范处理的过程重复5次,最终经过第三全连接层输出500-500e-|x|,其中,x为变量。
图7是根据本申请实施例提供的一种分子逆合成路线确定方法的流程图,如图7所示,在本申请实施例中以应用于服务器为例进行说明。该方法包括以下步骤。
701、服务器接收目标分子的分子表达信息,该分子表达信息用于表示该目标分子的三维化学结构。
在本申请实施例中,目标分子为不能从分子数据库中获取到的分子,服务器接收该目标分子的分子表达信息,例如,服务器接收该目标分子的简化分子线性输入规范,也即是一串字符,用于表示该分子的三维化学结构。
702、服务器将该目标分子的分子表达信息输入用于确定分子逆合成路线的神经网络。
在本申请实施例中,服务器在接收到目标分子的分子表达信息之后,将其输入到本发明实施例提供的用于确定分子逆合成路线的神经网络中。
703、服务器基于该用于确定分子逆合成路线的神经网络,确定该目标分子的目标拆解路径,该目标拆解路径为至少一个拆解路径中拆解代价值最低的拆解路径。
在本申请实施例中,基于本申请实施例提供的用于确定分子逆合成路线的神经网络,输出目标分子对应的代价值信息,该代价值信息所对应的拆解路径是目标分子所有可能的拆解路径中拆解代价值最低的拆解路径。
在一种可选的实现方式中,上述步骤703包括以下步骤:
该用于确定分子逆合成路线的神经网络包括第一神经网络和第二神经网络;基于第一神经网络,输出目标分子基于上层逆合成路线的代价值信息;确定目标分子的第一拆解路径,该第一拆解路径的路径深度小于或等于目标深度;从目标分子基于第一拆解路径进行拆解后得到的分子中,确定存在进一步拆解方法的分子;将存在进一步拆解方法的分子的分子表达信息输入到第二神经网络中;基于第二神经网络,输出目标分子基于下层逆合成路线的代价值信息;确定目标分子的第二拆解路径;基于第一拆解路径和第二拆解路径,确定目标分子的目标拆解路径。
704、服务器基于该目标拆解路径,得到该目标分子的分子逆合成路线信息。
在本申请实施例中,根据由步骤703得到的目标拆解路径,得到目标分子基于该拆解路径每一步的拆解反应,最终确定该目标分子完整的逆合成路线。
在本申请实施例中,提供了一种分子逆合成路线确定方法,通过用于确定分子逆合成路线的神经网络,得到目标分子的逆合成路线,耗时短,且准确率高。
图8是根据本申请实施例提供的一种用于确定分子逆合成路线的神经网络的训练装置的框图。该装置用于执行上述用于确定分子逆合成路线的神经网络的训练方法执行时的步骤,参见图8,装置包括:第一确定模块801、第一代价字典生成模块802、第二确定模块803、第三确定模块804、第二代价字典生成模块805以及训练模块806。
第一确定模块801,用于基于多个第一分子的分子表达信息,确定各个第一分子的第一拆解路径,该第一拆解路径的路径深度小于或等于目标深度。
第一代价字典生成模块802,用于基于各个第一分子的第一拆解路径,得到第一代价字典,该第一代价字典包括各个第一分子的分子表达信息和对应的代价值信息,该第一分子的代价值信息用于表示将该第一分子按照对应的第一拆解路径进行拆分所需代价。
第二确定模块803,用于基于各个第一分子的第一拆解路径,确定至少一个第二分子的分子表达信息,各个第二分子为能够被拆解为可获得分子的分子。
第三确定模块804,用于从各个第二分子中,确定多个第三分子,各个第三分子用于表示一类第二分子。
第二代价字典生成模块805,用于基于各个第三分子的第二拆解路径,得到第二代价字典,该第二代价字典包括各个第三分子的分子表达信息和对应的代价值信息,该第三分子的代价值信息用于表示将第三分子按照对应的第二拆解路径进行拆分所需代价。
训练模块806,用于基于该第一代价字典和该第二代价字典进行训练,得到目标神经网络,该目标神经网络用于根据输入的目标分子的分子表达信息,输出目标分子对应的代价值信息。
在一种可选的实现方式中,该第一确定模块801包括:
获取单元,用于基于各个第一分子的分子表达信息和代价值参考信息,获取各个第一分子的第一初始代价值函数;
更新单元,用于当各个第一分子的任一拆解层次完成拆解时,基于各个第一分子的任一层拆解路径所对应的拆解代价值,对各个第一分子的第一初始代价值函数进行更新,得到各个第一分子的第一目标代价值函数,该第一目标代价值函数用于确定该第一分子具有最小拆解代价值的拆解路径;
确定单元,用于当任一第一分子的拆解任务满足目标拆解条件时,基于各个第一分子的第一目标代价值函数,确定各个第一分子的第一拆解路径。
在一种可选的实现方式中,该获取单元用于:
基于各个第一分子的分子表达信息,将各个第一分子的拆解任务划分成多个第一子任务,该拆解任务是指将各个第一分子按照拆解路径进行拆分;
将各个第一子任务分配给多个计算节点,由各个计算节点计算各个第一分子的第一初始代价值函数,并返回该第一初始代价值函数,该第一初始代价值函数由对应计算节点基于分子代价值参考信息计算得到,该分子代价值参考信息用于表示分子的可拆解性;
接收各个计算节点反馈的第一初始代价值函数。
在一种可选的实现方式中,该第一代价字典生成模块802用于:
基于各个第一分子的第一拆解路径,确定各个第一分子对应的代价值信息;
根据各个第一分子的分子表达信息和对应的代价值信息,得到第一代价字典。
在一种可选的实现方式中,该第三确定模块804用于:
将各个第二分子进行聚类,得到多个集合,各个集合中包括具有相似分子结构的至少一个第二分子;
将各个集合的聚类中心确定为多个第三分子,该第三分子为所属集合中的代表性分子。
在一种可选的实现方式中,该训练模块806包括:
第一训练单元,用于基于第二代价字典中每个分子的分子表达信息和对应的代价值信息,训练第二神经网络;
第二代价字典更新单元,用于基于该第二代价字典,更新第一代价字典,得到更新后的第一代价字典;
第二训练单元,用于基于更新后的第一代价字典中每个分子的分子表达信息和对应的代价值信息,训练第一神经网络;
组合单元,用于将训练后的第二神经网络和第一神经网络进行组合,得到目标神经网络。
在一种可选的实现方式中,该第一训练单元用于:
将第二代价字典中每个分子的分子表达信息,输入到第二神经网络中,得到每个分子对应的预测代价值信息;
基于每个分子对应的预测代价值信息和第二代价字典中每个分子对应的代价值信息,确定该第二神经网络的模型损失;
根据该第二神经网络的模型损失,调整该第二神经网络中的网络参数。
在本申请实施例中,提供了一种用于确定分子逆合成路线的神经网络的训练装置,对于多个分子,在确定各个分子的逆合成路线时,采用分层学习的理念,将需要探索较大深度的分子逆合成路线的训练过程拆解为多层进行训练,提高了训练速度,以多层分子逆合成路线代替完整的逆合成反应过程,在完成一层分子逆合成路线的训练后,借助分子筛选方式选择具有代表性的分子作为下一层分子逆合成路线的起始分子,能够有效的提高分子逆合成路线的探索效率,进而更为高效的提取出准确的分子的代价值信息。通过分层的方式,极大地减少了确定分子逆合成路线带来的大量计算开销,在保证分子逆合成路线准确性的基础上,减少了确定分子逆合成路线的时间。
需要说明的是:上述实施例提供的装置在训练用于确定分子逆合成路线的神经网络时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与用于确定分子逆合成路线的神经网络的训练方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
计算机设备被配置为服务器时,图9是根据本申请实施例提供的一种服务器的结构示意图,该服务器900可因配置或性能不同而产生比较大的差异,能够包括一个或一个以上处理器(Central Processing Units,CPU)901和一个或一个以上的存储器902,其中,该存储器902中存储有至少一条计算机程序,该至少一条计算机程序由处理器901加载并执行以实现上述各个方法实施例提供的用于确定分子逆合成路线的神经网络的训练方法。当然,该服务器900还能够具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器900还能够包括其他用于实现设备功能的部件,在此不做赘述。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质应用于计算机设备,该计算机可读存储介质中存储有至少一条计算机程序,该至少一条计算机程序由处理器加载并执行以实现上述实施例的用于确定分子逆合成路线的神经网络的训练方法中计算机设备所执行的操作。
本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述各种可选实现方式中提供的用于确定分子逆合成路线的神经网络的训练方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种用于确定分子逆合成路线的神经网络的训练方法,其特征在于,所述方法包括:
基于多个第一分子的分子表达信息,确定各个所述第一分子的第一拆解路径,所述第一拆解路径的路径深度小于或等于目标深度;
基于各个所述第一分子的第一拆解路径,得到第一代价字典,所述第一代价字典包括各个所述第一分子的分子表达信息和各个所述第一分子对应的代价值信息,所述第一分子的代价值信息用于表示将所述第一分子按照对应的第一拆解路径进行拆分所需代价;
基于各个所述第一分子的第一拆解路径,确定至少一个第二分子的分子表达信息,各个所述第二分子为能够被拆解为可获得分子的分子;
从各个所述第二分子中,确定多个第三分子,各个所述第三分子用于表示一类所述第二分子;
基于各个所述第三分子的第二拆解路径,得到第二代价字典,所述第二代价字典包括各个所述第三分子的分子表达信息和各个所述第三分子对应的代价值信息,所述第三分子的代价值信息用于表示将所述第三分子按照对应的第二拆解路径进行拆分所需代价;
基于所述第一代价字典和所述第二代价字典进行训练,得到目标神经网络,所述目标神经网络用于根据输入的目标分子的分子表达信息,输出所述目标分子对应的代价值信息。
2.根据权利要求1所述的方法,其特征在于,所述基于多个第一分子的分子表达信息,确定各个所述第一分子的第一拆解路径包括:
基于各个所述第一分子的分子表达信息和代价值参考信息,获取各个所述第一分子的第一初始代价值函数;
当各个所述第一分子的任一拆解层次完成拆解时,基于各个所述第一分子的任一层拆解路径所对应的拆解代价值,对各个所述第一分子的第一初始代价值函数进行更新,得到各个所述第一分子的第一目标代价值函数,所述第一目标代价值函数用于确定所述第一分子具有最小拆解代价值的拆解路径;
当任一所述第一分子的拆解任务满足目标拆解条件时,基于各个所述第一分子的第一目标代价值函数,确定各个所述第一分子的第一拆解路径。
3.根据权利要求2所述的方法,其特征在于,所述基于各个所述第一分子的分子表达信息和代价值参考信息,获取各个所述第一分子的第一初始代价值函数包括:
基于各个所述第一分子的分子表达信息,将各个所述第一分子的拆解任务划分成多个第一子任务,所述拆解任务是指将各个所述第一分子按照拆解路径进行拆分;
将各个所述第一子任务分配给多个计算节点,由各个计算节点计算各个第一分子的第一初始代价值函数,并返回所述第一初始代价值函数,所述第一初始代价值函数由对应计算节点基于分子代价值参考信息计算得到,所述分子代价值参考信息用于表示分子的可拆解性;
接收各个所述计算节点反馈的第一初始代价值函数。
4.根据权利要求1所述的方法,其特征在于,所述基于各个所述第一分子的第一拆解路径,得到第一代价字典包括:
基于各个所述第一分子的第一拆解路径,确定各个所述第一分子对应的代价值信息;
根据各个所述第一分子的分子表达信息和各个所述第一分子对应的代价值信息,得到第一代价字典。
5.根据权利要求1所述的方法,其特征在于,所述从各个所述第二分子中,确定多个第三分子,各个所述第三分子用于表示一类所述第二分子包括:
将各个所述第二分子进行聚类,得到多个集合,各个所述集合中包括具有相似分子结构的至少一个第二分子;
将各个所述集合的聚类中心所对应的所述第二分子确定为多个第三分子,所述第三分子为所属集合中的代表性分子。
6.根据权利要求1所述的方法,其特征在于,所述基于所述第一代价字典和所述第二代价字典进行训练,得到目标神经网络包括:
基于所述第二代价字典中每个分子的分子表达信息和每个分子对应的代价值信息,训练第二神经网络;
基于所述第二代价字典,更新所述第一代价字典,得到更新后的第一代价字典;
基于更新后的第一代价字典中每个分子的分子表达信息和每个分子对应的代价值信息,训练第一神经网络;
将训练后的第二神经网络和第一神经网络进行组合,得到目标神经网络。
7.根据权利要求6所述的方法,其特征在于,所述基于所述第二代价字典中每个分子的分子表达信息和每个分子对应的代价值信息,训练第二神经网络包括:
将所述第二代价字典中每个分子的分子表达信息,输入到所述第二神经网络中,得到每个分子对应的预测代价值信息;
基于每个分子对应的预测代价值信息和所述第二代价字典中每个分子对应的代价值信息,确定所述第二神经网络的模型损失;
根据所述第二神经网络的模型损失,调整所述第二神经网络中的网络参数。
8.一种分子逆合成路线确定方法,其特征在于,所述方法包括:
接收目标分子的分子表达信息,所述分子表达信息用于表示所述目标分子的三维化学结构;
将所述目标分子的分子表达信息输入用于确定分子逆合成路线的神经网络;
基于所述用于确定分子逆合成路线的神经网络,确定所述目标分子的目标拆解路径,所述目标拆解路径为至少一个拆解路径中拆解代价值最低的拆解路径;
基于所述目标拆解路径,得到所述目标分子的分子逆合成路线信息。
9.根据权利要求8所述的方法,其特征在于,所述基于所述用于确定分子逆合成路线的神经网络,确定所述目标分子的目标拆解路径包括:
所述用于确定分子逆合成路线的神经网络包括第一神经网络和第二神经网络;
基于所述第一神经网络,输出所述目标分子基于上层逆合成路线的代价值信息;
确定所述目标分子的第一拆解路径,所述第一拆解路径的路径深度小于或等于目标深度;
从所述目标分子基于所述第一拆解路径进行拆解后得到的分子中,确定存在进一步拆解方法的分子的分子表达信息;
将所述存在进一步拆解方法的分子的分子表达信息输入到所述第二神经网络中;
基于所述第二神经网络,输出所述目标分子基于下层逆合成路线的代价值信息;
确定所述目标分子的第二拆解路径;
基于所述第一拆解路径和所述第二拆解路径,确定所述目标分子的目标拆解路径。
10.一种用于确定分子逆合成路线的神经网络的训练装置,其特征在于,所述装置包括:
第一确定模块,用于基于多个第一分子的分子表达信息,确定各个所述第一分子的第一拆解路径,所述第一拆解路径的路径深度小于或等于目标深度;
第一代价字典生成模块,用于基于各个所述第一分子的第一拆解路径,得到第一代价字典,所述第一代价字典包括各个所述第一分子的分子表达信息和各个所述第一分子对应的代价值信息,所述第一分子的代价值信息用于表示将所述第一分子按照对应的第一拆解路径进行拆分所需代价;
第二确定模块,用于基于各个所述第一分子的第一拆解路径,确定至少一个第二分子的分子表达信息,各个所述第二分子为能够被拆解为可获得分子的分子;
第三确定模块,用于从各个所述第二分子中,确定多个第三分子,各个所述第三分子用于表示一类所述第二分子;
第二代价字典生成模块,用于基于各个所述第三分子的第二拆解路径,得到第二代价字典,所述第二代价字典包括各个所述第三分子的分子表达信息和各个所述第三分子对应的代价值信息,所述第三分子的代价值信息用于表示将所述第三分子按照对应的第二拆解路径进行拆分所需代价;
训练模块,用于基于所述第一代价字典和所述第二代价字典进行训练,得到目标神经网络,所述目标神经网络用于根据输入的目标分子的分子表达信息,输出所述目标分子对应的代价值信息。
11.根据权利要求10所述的装置,其特征在于,所述第一确定模块包括:
获取单元,用于基于各个所述第一分子的分子表达信息和代价值参考信息,获取各个所述第一分子的第一初始代价值函数;
更新单元,用于当各个所述第一分子的任一拆解层次完成拆解时,基于各个所述第一分子的任一层拆解路径所对应的拆解代价值,对各个所述第一分子的第一初始代价值函数进行更新,得到各个所述第一分子的第一目标代价值函数,所述第一目标代价值函数用于确定所述第一分子具有最小拆解代价值的拆解路径;
确定单元,用于当任一所述第一分子的拆解任务满足目标拆解条件时,基于各个所述第一分子的第一目标代价值函数,确定各个所述第一分子的第一拆解路径。
12.根据权利要求11所述的装置,其特征在于,所述获取单元用于:
基于各个所述第一分子的分子表达信息,将各个所述第一分子的拆解任务划分成多个第一子任务,所述拆解任务是指将各个所述第一分子按照拆解路径进行拆分;
将各个所述第一子任务分配给多个计算节点,由各个计算节点计算各个第一分子的第一初始代价值函数,并返回所述第一初始代价值函数,所述第一初始代价值函数由对应计算节点基于分子代价值参考信息计算得到,所述分子代价值参考信息用于表示分子的可拆解性;
接收各个所述计算节点反馈的第一初始代价值函数。
13.根据权利要求10所述的装置,其特征在于,所述第一代价字典生成模块用于:
基于各个所述第一分子的第一拆解路径,确定各个所述第一分子对应的代价值信息;
根据各个所述第一分子的分子表达信息和各个所述第一分子对应的代价值信息,得到第一代价字典。
14.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器用于存储至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行如权利要求1至9任一权利要求所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储至少一条计算机程序,所述至少一条计算机程序用于执行如权利要求1至9任一权利要求所述的方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011218991.2A CN112037868B (zh) | 2020-11-04 | 2020-11-04 | 用于确定分子逆合成路线的神经网络的训练方法和装置 |
EP21888356.9A EP4213153A4 (en) | 2020-11-04 | 2021-10-09 | METHOD AND APPARATUS FOR TRAINING NEURAL NETWORK FOR DETERMINING A PATHWAY FOR REVERSE SYNTHESIS OF MOLECULES |
JP2023518017A JP2023542013A (ja) | 2020-11-04 | 2021-10-09 | 分子逆合成経路を決定するニューラルネットワークのトレーニング方法及び装置、並びにコンピュータ機器、コンピュータプログラム |
PCT/CN2021/122724 WO2022095659A1 (zh) | 2020-11-04 | 2021-10-09 | 用于确定分子逆合成路线的神经网络的训练方法和装置 |
US17/986,559 US20230081412A1 (en) | 2020-11-04 | 2022-11-14 | Applying a layered approach to determining molecular retrosynthetic route using a neural network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011218991.2A CN112037868B (zh) | 2020-11-04 | 2020-11-04 | 用于确定分子逆合成路线的神经网络的训练方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112037868A CN112037868A (zh) | 2020-12-04 |
CN112037868B true CN112037868B (zh) | 2021-02-12 |
Family
ID=73573572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011218991.2A Active CN112037868B (zh) | 2020-11-04 | 2020-11-04 | 用于确定分子逆合成路线的神经网络的训练方法和装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230081412A1 (zh) |
EP (1) | EP4213153A4 (zh) |
JP (1) | JP2023542013A (zh) |
CN (1) | CN112037868B (zh) |
WO (1) | WO2022095659A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112037868B (zh) * | 2020-11-04 | 2021-02-12 | 腾讯科技(深圳)有限公司 | 用于确定分子逆合成路线的神经网络的训练方法和装置 |
CN114627981A (zh) * | 2020-12-14 | 2022-06-14 | 阿里巴巴集团控股有限公司 | 化合物分子结构的生成方法及装置、非易失性存储介质 |
CN114822703A (zh) * | 2021-01-27 | 2022-07-29 | 腾讯科技(深圳)有限公司 | 一种化合物分子的逆合成预测方法以及相关装置 |
CN114049922B (zh) * | 2021-11-09 | 2022-06-03 | 四川大学 | 基于小规模数据集和生成模型的分子设计方法 |
WO2023193259A1 (zh) * | 2022-04-08 | 2023-10-12 | 上海药明康德新药开发有限公司 | 一种多模型集成学习提升逆合成可信度的方法 |
CN114974450B (zh) * | 2022-06-28 | 2023-05-30 | 苏州沃时数字科技有限公司 | 基于机器学习与自动化试验装置的操作步骤的生成方法 |
CN115579093B (zh) * | 2022-12-08 | 2023-06-02 | 科丰兴泰(杭州)生物科技有限公司 | 基于深度学习的设计硝化抑制剂缓释材料的方法及*** |
CN116578934B (zh) * | 2023-07-13 | 2023-09-19 | 烟台国工智能科技有限公司 | 一种基于蒙特卡洛树搜索的逆合成分析方法及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109872780A (zh) * | 2019-03-14 | 2019-06-11 | 北京深度制耀科技有限公司 | 一种化学合成路线的确定方法及装置 |
CN110728047A (zh) * | 2019-10-08 | 2020-01-24 | 中国工程物理研究院化工材料研究所 | 一种基于机器学习性能预测含能分子计算机辅助设计*** |
CN110969086A (zh) * | 2019-10-31 | 2020-04-07 | 福州大学 | 一种基于多尺度cnn特征及量子菌群优化kelm的手写图像识别方法 |
WO2020138590A1 (ko) * | 2018-12-24 | 2020-07-02 | 주식회사 메디리타 | 신약 후보 물질의 효과 및 안전성 예측을 위한 데이터 처리 장치 및 방법 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108804869B (zh) * | 2018-05-04 | 2022-03-08 | 深圳晶泰科技有限公司 | 基于神经网络的分子结构和化学反应能量函数构建方法 |
WO2020023650A1 (en) * | 2018-07-25 | 2020-01-30 | Wuxi Nextcode Genomics Usa, Inc. | Retrosynthesis prediction using deep highway networks and multiscale reaction classification |
US20220139504A1 (en) * | 2019-02-08 | 2022-05-05 | Google Llc | Systems and Methods for Predicting the Olfactory Properties of Molecules Using Machine Learning |
CN111508568B (zh) * | 2020-04-20 | 2023-08-29 | 腾讯科技(深圳)有限公司 | 分子生成方法、装置及计算机可读存储介质和终端设备 |
CN111524557B (zh) * | 2020-04-24 | 2024-04-05 | 腾讯科技(深圳)有限公司 | 基于人工智能的逆合成预测方法、装置、设备及存储介质 |
EP4150627A1 (en) * | 2020-05-14 | 2023-03-22 | Insilico Medicine IP Limited | Retrosynthesis-related synthetic accessibility |
CN111755078B (zh) * | 2020-07-30 | 2022-09-23 | 腾讯科技(深圳)有限公司 | 药物分子属性确定方法、装置及存储介质 |
CN112037868B (zh) * | 2020-11-04 | 2021-02-12 | 腾讯科技(深圳)有限公司 | 用于确定分子逆合成路线的神经网络的训练方法和装置 |
US20220172802A1 (en) * | 2020-11-30 | 2022-06-02 | Insilico Medicine Ip Limited | Retrosynthesis systems and methods |
-
2020
- 2020-11-04 CN CN202011218991.2A patent/CN112037868B/zh active Active
-
2021
- 2021-10-09 JP JP2023518017A patent/JP2023542013A/ja active Pending
- 2021-10-09 WO PCT/CN2021/122724 patent/WO2022095659A1/zh unknown
- 2021-10-09 EP EP21888356.9A patent/EP4213153A4/en active Pending
-
2022
- 2022-11-14 US US17/986,559 patent/US20230081412A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020138590A1 (ko) * | 2018-12-24 | 2020-07-02 | 주식회사 메디리타 | 신약 후보 물질의 효과 및 안전성 예측을 위한 데이터 처리 장치 및 방법 |
CN109872780A (zh) * | 2019-03-14 | 2019-06-11 | 北京深度制耀科技有限公司 | 一种化学合成路线的确定方法及装置 |
CN110728047A (zh) * | 2019-10-08 | 2020-01-24 | 中国工程物理研究院化工材料研究所 | 一种基于机器学习性能预测含能分子计算机辅助设计*** |
CN110969086A (zh) * | 2019-10-31 | 2020-04-07 | 福州大学 | 一种基于多尺度cnn特征及量子菌群优化kelm的手写图像识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112037868A (zh) | 2020-12-04 |
WO2022095659A1 (zh) | 2022-05-12 |
JP2023542013A (ja) | 2023-10-04 |
EP4213153A4 (en) | 2024-03-20 |
US20230081412A1 (en) | 2023-03-16 |
EP4213153A1 (en) | 2023-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112037868B (zh) | 用于确定分子逆合成路线的神经网络的训练方法和装置 | |
Atay et al. | Community detection from biological and social networks: A comparative analysis of metaheuristic algorithms | |
Zhou et al. | Balanced connected task allocations for multi-robot systems: An exact flow-based integer program and an approximate tree-based genetic algorithm | |
Fu et al. | Reinforced genetic algorithm for structure-based drug design | |
Nepomuceno et al. | Biclustering of gene expression data by correlation-based scatter search | |
McConnell et al. | Building predictors from vertically distributed data | |
Paaßen et al. | Time series prediction for graphs in kernel and dissimilarity spaces | |
Schutski et al. | Simple heuristics for efficient parallel tensor contraction and quantum circuit simulation | |
Lü et al. | Modeling and analysis of bio-molecular networks | |
WO2022188653A1 (zh) | 分子骨架跃迁的处理方法、装置、介质、电子设备及计算机程序产品 | |
Czajkowski et al. | Steering the interpretability of decision trees using lasso regression-an evolutionary perspective | |
Wu et al. | Sega: Structural entropy guided anchor view for graph contrastive learning | |
Rahman et al. | BatchLayout: A batch-parallel force-directed graph layout algorithm in shared memory | |
Sadeghi et al. | RCDR: a recommender based method for computational drug repurposing | |
Durasevic et al. | Fitness landscape analysis of dimensionally-aware genetic programming featuring feynman equations | |
Indira et al. | Mining association rules using hybrid genetic algorithm and particle swarm optimisation algorithm | |
Pishgoo et al. | A dynamic feature selection and intelligent model serving for hybrid batch-stream processing | |
Nutheti et al. | Ferrer diagram based partitioning technique to decision tree using genetic algorithm | |
Fox et al. | Learning Everywhere: Pervasive machine learning for effective High-Performance computation: Application background | |
Mendoza et al. | Reverse engineering of grns: An evolutionary approach based on the tsallis entropy | |
Luo et al. | Bayesian clustering for continuous‐time hidden Markov models | |
Liu et al. | Model gene network by semi-fixed Bayesian network | |
Attar et al. | Automatic generation of adaptive network models based on similarity to the desired complex network | |
van der Zanden et al. | Efficiently computing the Shapley value of connectivity games in low-treewidth graphs | |
Yoo et al. | The Five‐Gene‐Network Data Analysis with Local Causal Discovery Algorithm Using Causal Bayesian Networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40036243 Country of ref document: HK |