首页> 中国专利> 分子理解模型的训练方法、装置、设备和介质

分子理解模型的训练方法、装置、设备和介质

摘要

本公开公开了一种分子理解模型的训练方法、装置、设备和介质,涉及计算机技术领域,具体涉及自然语言处理、深度学习等人工智能技术领域。该训练方法包括:获取预训练数据,所述预训练数据包括:第一分子表示序列样本和第二分子表示序列样本,所述第一分子表示序列样本和所述第二分子表示序列样本为同一个分子的两种不同的分子表示序列样本;采用所述分子理解模型,对所述第一分子表示序列样本进行处理,以得到预训练输出;根据所述预训练输出和所述第二分子表示序列样本计算预训练损失函数,并根据所述预训练损失函数更新所述分子理解模型的参数。本公开可以提高分子理解模型的分子理解效果。

著录项

  • 公开/公告号CN112786108A

    专利类型发明专利

  • 公开/公告日2021-05-11

    原文格式PDF

  • 申请/专利权人 北京百度网讯科技有限公司;

    申请/专利号CN202110082654.3

  • 发明设计人 李宇琨;张涵;肖东凌;孙宇;

    申请日2021-01-21

  • 分类号G16B30/00(20190101);G16B40/00(20190101);G06N3/04(20060101);G06N3/08(20060101);G06K9/62(20060101);

  • 代理机构11412 北京鸿德海业知识产权代理有限公司;

  • 代理人田宏宾

  • 地址 100085 北京市海淀区上地十街10号百度大厦2层

  • 入库时间 2023-06-19 10:55:46

说明书

技术领域

本公开涉及计算机技术领域,具体涉及自然语言处理、深度学习等人工智能技术领域,尤其涉及一种分子理解模型的训练方法、装置、设备和介质。

背景技术

人工智能(Artificial Intelligence,AI)是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术以及机器学习/深度学习、大数据处理技术、知识图谱技术等几大方向。

简化分子线性输入规范(Simplified Molecular Input Line EntrySpecification,SMILES)是一种用美国信息交换标准代码(American Standard Code forInformation Interchange,ASCII)字符串明确描述分子的规范。基于SMILES,一个分子可以表示为一种或多种SMILES序列。随着深度学习技术的发展,可以将深度学习技术应用到物理化学领域。

相关技术中,在分子理解时,是基于分子的单一SMILES序列,采用双向Transformer的Encoder(Bidirectional Encoder Representations from Transformers,BERT)模型,使用掩码语言模型(Masked Language Model,MLM)任务进行训练。

发明内容

本公开提供了一种分子理解模型的训练方法、装置、设备和介质。

根据本公开的一方面,提供了一种分子理解模型的训练方法,包括:获取预训练数据,所述预训练数据包括:第一分子表示序列样本和第二分子表示序列样本,所述第一分子表示序列样本和所述第二分子表示序列样本为同一个分子的两种不同的分子表示序列样本;采用所述分子理解模型,对所述第一分子表示序列样本进行处理,以得到预训练输出;根据所述预训练输出和所述第二分子表示序列样本计算预训练损失函数,并根据所述预训练损失函数更新所述分子理解模型的参数。

根据本公开的另一方面,提供了一种基于分子模型的分子处理方法,所述分子模型包括分子理解模型和输出网络,所述分子理解模型采用同一个分子的两种不同的分子表示序列样本得到,所述分子处理方法包括:采用所述分子理解模型对分子应用输入进行处理,以得到隐层输出,在所述输出网络为分子生成网络时,所述分子应用输入包括固定标识符;采用所述输出网络对所述隐层输出进行处理,以得到分子应用输出。

根据本公开的另一方面,提供了一种分子理解模型的训练装置,包括:获取模块,用于获取预训练数据,所述预训练数据包括:第一分子表示序列样本和第二分子表示序列样本,所述第一分子表示序列样本和所述第二分子表示序列样本为同一个分子的两种不同的分子表示序列样本;处理模块,用于采用所述分子理解模型,对所述第一分子表示序列样本进行处理,以得到预训练输出;更新模块,用于根据所述预训练输出和所述第二分子表示序列样本计算预训练损失函数,并根据所述预训练损失函数更新所述分子理解模型的参数。

根据本公开的另一方面,提供了一种基于分子模型的分子处理装置,所述分子模型包括分子理解模型和输出网络,所述分子处理装置包括:第一处理模块,用于采用所述分子理解模型对分子应用输入进行处理,以得到隐层输出,在所述输出网络为分子生成网络时,所述分子应用输入包括固定标识符;第二处理模块,用于采用所述输出网络对所述隐层输出进行处理,以得到分子应用输出。

根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上述任一方面的任一项所述的方法。

根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据上述任一方面的任一项所述的方法。

根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据上述任一方面的任一项所述的方法。

根据本公开的技术方案,可以提高分子理解模型的分子理解效果。

应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

附图说明

附图用于更好地理解本方案,不构成对本公开的限定。其中:

图1是根据本公开第一实施例的示意图;

图2是根据本公开第二实施例的示意图;

图3是根据本公开第三实施例的示意图;

图4是根据本公开第四实施例的示意图;

图5是根据本公开第五实施例的示意图;

图6是根据本公开第六实施例的示意图;

图7是根据本公开第七实施例的示意图;

图8是根据本公开第八实施例的示意图;

图9是根据本公开第九实施例的示意图;

图10是根据本公开第十实施例的示意图;

图11是根据本公开第十一实施例的示意图;

图12是用来实现本公开实施例的分子理解模型的训练方法或者分子处理方法中任一方法的电子设备的示意图。

具体实施方式

以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

将深度学习技术应用到物理化学领域时,可以将大量化合物的分子转换成SMILES序列,像文本一样输入BERT模型中进行预训练,训练一个预训练模型,之后,可以基于下游分子任务对该预训练模型进行微调(fine-tuning)。

相关技术中,将分子的单一的SMILES序列输入到BERT模型中,基于MLM任务进行预训练,以得到分子理解的预训练模型。其采用单一的SMILES序列,没有充分利用SMILES序列特性,导致预训练的分子理解模型的分子理解效果较差。

为了解决相关技术中存在的分子理解模型的分子理解效果较差的问题,本公开提供如下一些实施例。

图1是根据本公开第一实施例的示意图。本实施例提供一种分子理解模型的训练方法,包括:

101、获取预训练数据,所述预训练数据包括:第一分子表示序列样本和第二分子表示序列样本,所述第一分子表示序列样本和所述第二分子表示序列样本为同一个分子的两种不同的分子表示序列样本。

102、采用所述分子理解模型,对所述第一分子表示序列样本进行处理,以得到预训练输出。

103、根据所述预训练输出和所述第二分子表示序列样本计算预训练损失函数,并根据所述预训练损失函数更新所述分子理解模型的参数。

分子是一种物理化学术语,分子是物质中能够独立存在的相对稳定并保持该物质物理化学特性的最小单元。分子由原子构成,原子通过一定的作用力,以一定的次序和排列方式结合成分子,这种次序和排序方式可以称为分子结构。因此,分子可以用原子和分子结构表征,分子的物理化学性质不仅取决于组成分子的原子的种类和数目,更取决于分子结构。

自然语言理解(Natural Language Understanding,NLU)是自然语言处理(Natural Language Processing,NLP)的重要组成部分,NLU的核心任务是将自然语言转化为机器可处理的形式化语言,建立自然语言与机器的连接。

类似自然语言理解,分子理解是指,将分子表示序列转换为分子理解表示,该分子理解表示是机器能够处理的表示,比如,分子理解表示具体包括各个时间步对应的概率分布向量,该概率分布向量的第i(i=1,...n)个元素是词表中第i个词的概率,其中,n是词表的维度,在本公开实施例中,词表是指分子表示序列对应的词表,以分子表示序列为SMILES序列为例,由于SMILES序列是ASCII字符串,则相应的词表可以为ASCII字符表。

一些实施例中,分子表示序列为SMILES序列。通过采用SMILES序列,可以充分利用同一个分子对应多个SMILES序列的特性,相对于单一SMILES序列理解分子的方式,通过同一个分子的不同SMILES序列可以更好地理解该分子,进而提高分子理解模型的分子理解效果。

基于SMILES,可以获取同一个分子的不同的SMILES序列,比如,参见图2,对应同一个分子201,基于SMILES可以获取到多种该分子201对应的SMILES序列202。

进一步地,可以采用随机方式,在这多种SMILES序列中随机获取两种不同的SMILES序列。比如,对应图2所示的分子201,获取的两种SMILES序列可以是第一种和第三种,即:CC(Oc1ccccc1C(=O)O)=O,以及,C(c1c(cccc1)OC(=O)C)(=O)O。

为了与应用阶段区分,训练阶段采用的数据可以称为样本,比如,应用阶段称为分子表示序列,训练阶段称为分子表示序列样本。因此,在训练阶段,可以采用上述的方式,对应同一个分子,获取到两种不同的分子表示序列样本,这两种不同的分子表示序列样本可以称为第一分子表示序列样本和第二分子表示序列样本。

在获取到第一分子表示序列样本和第二分子表示序列样本后,可以将第一分子表示序列样本输入到分子理解模型时,初始时,分子理解模型采用初始参数对第一分子表示序列样本进行处理,分子理解模型的输出称为预训练输出,之后,可以基于预训练输出和第二分子表示序列样本计算预训练损失函数,基于预训练损失函数更新分子理解模型的参数,直至预训练损失函数收敛,将预训练损失函数收敛时的参数作为分子理解模型的最终参数。预训练损失函数不作限定,比如为负对数似然(negative log-likelihood,NLL)函数。

一些实施例中,如图3所示,分子理解模型可以包括输入层和隐层,输入层可以为嵌入(embedding)层,用于将输入序列转换为输入向量,隐层可以具体包括编码器(encoder)301和解码器(decoder)302。以分子表示序列为SMILES序列为例,训练分子理解模型时,将第一SMILES序列样本经过embedding层转换为输入向量后输入到编码器中,经过编码器和解码器的处理,得到预训练输出。预训练输出是各个时间步的概率分布向量,之后,基于预训练输出和对应时间步的期望输出序列样本,即第二SMILES序列样本,可以计算得到预训练损失函数,进而基于预训练损失函数更新分子理解模型的参数。

一些实施例中,所述编码器包括第一自注意力(self-attention)层,所述第一自注意力层采用双向自注意力机制;和/或,所述解码器包括第二自注意力层,所述第二自注意力层采用单向自注意力机制。

通过编码器采用双向自注意力机制,解码器采用单向自注意力机制,可以依据不同输入采用不同的自注意力机制,实现更灵活,进而可以提高分子理解模型的分子理解效果。

一些实施例中,所述编码器还包括第一共享网络,所述解码器还包括第二共享网络,所述第一共享网络和所述第二共享网络具有相同的网络结构和网络参数。

通过编码器和解码器采用共享网络,可以更好地在编码和解码过程中利用相同特征,提高分子理解模型的分子理解效果。

比如,参见图4,编码器和解码器可以基于Transformer网络实现,在图4中,用包括多个Transformer层(Transformer layer)表示,编码器对应的各个Transformer层的结构比如为Transformer网络的各个编码器的结构。各个Transformer层的结构相同,在各个Transformer层中,解码器与编码器的结构类似,即都可以包括自注意力层和共享网络,为了区分,编码器中的网络可以称为第一注意力层和第一共享网络,解码器中的网络可以称为第二注意力层和第二共享网络,区别在于,如图4所示,编码器中的第一自注意力层401为双向的自注意力层,解码器中的第二自注意力层402为单向的自注意力层,两者的共享网络,即第一共享网络和第二共享网络可以均为Transformer网络的encoder的前向反馈(forward feedback)层。

序列是指多个序列单元的组合,依据应用场景的不同,序列单元可以是不同的,比如,在中文NLP领域,序列单元可以是指中文的每个字。

在本公开实施例所涉及的物理化学领域,序列单元可以是指表征分子的字符,比如,对应SMILES序列,序列单元是ASCII字符,具体如图2所示的C、O等。

在输出序列时,可以逐个序列单元输出,比如,对应A、B、C三个字符,可以第一时间步输出A,第二时间步输出B,第三时间步输出C。本公开实施例中,在输出当前字符时,可以采用之前已经输出的字符进行输出,比如,输出字符B时,可以基于已经输出的A输出,输出字符C时,基于字符A和字符B输出。

相应地,一些实施例中,采用所述分子理解模型,对第一分子表示序列样本进行处理,以得到预训练输出,包括:采用所述编码器的所述第一自注意力层,对所述第一分子表示序列样本进行双向自注意力处理,以得到双向自注意力处理结果;采用所述编码器的所述第一共享网络部分,对所述双向自注意力处理结果进行处理,以得到编码输出;采用所述解码器的所述第二自注意力层,对所述编码输出和已生成输出进行单向自注意力处理,以得到单向自注意力处理结果;采用所述解码器的所述第二共享网络部分,对所述单向自注意力处理结果进行处理,以得到所述预训练输出。

比如,参见图5,采用嵌入层501将第一SMILES序列样本转换为第一输入向量,第一输入向量依次经过编码器502的第一自注意力层和第一共享网络的处理后,输出编码向量给解码器,解码器的另一输入为已输出序列经过嵌入层501转换后得到的第二输入向量,编码向量和第二输入向量依次经过解码器503的第二自注意力层和第二共享网络的处理后,输出预训练输出,该预训练输出具体可以为概率分布向量。之后,可以基于该概率分布向量确定当前生成的序列单元,作为后续时间步的已生成输出,经过嵌入层后输入到解码器中,依此类推,逐个生成序列单元直至生成终止符时结束。

通过上述的预训练输出的生成流程,可以提高预训练输出的准确性,进而提高分子理解模型的分子理解效果。

本实施例中,通过采用同一个分子的两种不同的分子表示序列样本训练分子理解模型,相对于采用单一的分子表示序列样本训练模型的方式,可以充分利用分子表示序列的特性,提高分子理解模型的分子理解效果。

上述任一实施例或者实施例的结合,对分子理解模型的预训练过程进行了描述,因此,分子理解模型可以作为一种预训练模型,之后,可以对该预训练模型进行微调,得到微调后的模型,微调后的模型可以用于下游分子处理任务。微调后的模型可以称为分子模型,下面对分子模型的训练过程进行说明。

图6是根据本公开第六实施例的示意图。本实施例提供一种分子模型的训练方法,如图6所示,该训练方法包括:

601、获取微调训练数据。

602、采用所述微调训练数据,对分子理解模型进行微调,以得到分子模型。

其中,分子理解模型可以采用上述任一实施例训练后得到。

基于分子处理任务的不同,微调训练数据可以相应选择。

一些实施例中,分子处理任务可以包括:分子预测任务,和/或,分子生成任务。进一步地,分子预测任务可以包括:分子分类任务,和/或,分子回归任务。进一步地,分子生成任务可以包括:生成新分子、生成具有特定属性的新分子、生成优化后的分子。

针对分子预测任务:

相应的微调训练数据可以称为第一微调训练数据,所述第一微调训练数据包括:第一输入样本和第一输出样本;所述第一输入样本为分子表示序列样本,所述第一输出样本为所述分子表示序列样本对应的标签数据,若所述预测为分类,所述标签数据为分类标签;和/或,若所述预测为回归,所述标签数据为回归标签。

其中,分类标签可以根据实际需求进行人工标注,比如,标记DNA序列或蛋白质,标记蛋白质包括标记标记种子贮藏蛋白、标记同工酶、标记等位酶等,同工酶是在多个基因位点编码的酶的不同分子形式,等位酶是同一基因位点的不同等位基因编码的酶的不同分子形式。回归标签也可以根据实际需求进行人工标注。

针对分子生成任务:

相应的微调训练数据可以称为第二微调训练数据,对应上述三种分子生成任务,相应的第二微调训练数据也是不同的。

对应生成新分子的分子生成任务:

第二微调训练数据包括:多组样本对,每组样本对包括:第二输入样本和第二输出样本,所述第二输入样本包括固定标识符,所述第二输出样本为分子表示序列样本,且各组样本对中的分子表示序列样本是满足预设相似条件的相似分子的分子表示序列样本。其中,相似条件可以根据实际需求设置,比如,将原子组成相同且分子结构相似的分子,作为相似分子,或者,将原子组成相似且分子结构相同的分子,作为相似分子,或者,将原子组成相似且分子结构相似的分子,作为相似分子等。其中,原子组成相似和/或分子结构相似的判定条件也可以根据实际需求设置。

对应生成具有特定属性的新分子的分子生成任务:

第二微调训练数据包括:多组样本对,每组样本对包括:第二输入样本和第二输出样本,所述第二输入样本包括固定标识符和属性样本,所述第二输出样本为分子表示序列样本,且各组样本对中的分子表示序列样本是具有所述属性且满足预设相似条件的相似分子的分子表示序列样本。其中,相似条件可以参见上述的新分子生成任务。与上述的新分子生成任务不同的是,此处的任务还需要新分子具有特定属性,因此,在输入样本中还包括了属性样本,选择的输出样本对应分子还需要具有该属性样本对应的属性。属性是指分子具有的生物、物理、化学等性质,比如,毒性、活性等。实际应用中,可以预先配置各个属性的属性值,之后可以选择一个属性作为属性样本,另外将具有该选择的属性的相似分子的分子表示序列作为第二输出样本,将包含属性样本信息的固定标识符对应的向量作为分子理解模型的输入向量,采用所述输入向量和第二输出样本训练得到对应任务的分子模型。其中,包含属性样本信息的固定标识符对应的向量,可以依照后续应用阶段的原理获得。

对应生成优化后的分子的分子生成任务:

第二微调训练数据包括:多组样本对,每组样本对包括:第二输入样本和第二输出样本,所述第二输入样本包括固定标识符和输入分子表示序列样本,所述第二输出样本为输出分子表示序列样本,输出分子表示序列样本对应的分子,是对输入分子表示序列样本对应的分子的优化分子。其中,优化分子可以根据需求选择,比如,将具有某一属性的分子作为待优化分子的优化分子。

本实施例中,通过对分子理解模型进行微调,以得到分子模型,可以适用于多种下游分子任务,降低训练工作量,提高训练效率。

上述实施例对分子模型的训练过程进行了说明,基于该分子模型可以在应用阶段,对分子进行处理,以完成各种分子处理任务。

图7是根据本公开第七实施例的示意图,本实施例提供一种基于分子模型的分子处理方法,所述分子模型包括分子理解模型和输出网络,所述分子理解模型采用同一个分子的两种不同的分子表示序列样本得到,该处理方法包括:

701、采用所述分子理解模型对分子应用输入进行处理,以得到隐层输出,在所述输出网络为分子生成网络时,所述分子应用输入包括固定标识符。

702、采用所述输出网络对所述隐层输出进行处理,以得到分子应用输出。

基于分子处理任务的不同,输出网络是不同的。

比如,对应分子预测任务,输出网络为分子预测网络,对应分子生成任务,输出网络为分子生成网络。

进一步地,根据具体的分子预测任务和/或具体的分子生成任务,分子预测网络和/或分子生成网络也是不同的。

另外,基于分子处理任务的不同,分子应用输入和分子应用输出也是不同的。

针对分子预测任务:

参见图8,分子应用输入为:待预测的分子表示序列,图8中以SMILES序列为例。分子应用输出为:预测值。其中,待预测的分子表示序列可以为单一的分子表示序列,或者,拼接的多个分子表示序列。

SMILES序列输入到分子理解模型801中后,经过作为输出网络的分子预测网络802输出该SMILES序列对应的预测值,该预测值可以为分类值和/或回归值。

针对分子生成任务:

所述输出网络为分子生成网络;所述分子应用输入包括:固定标识符;所述分子应用输出包括:分子表示序列。

对应生成新分子的分子生成任务:

参见图9的左侧图,分子应用输入为:固定标识符;分子应用输出为:新分子的分子表示序列,图9中以分子表示序列为SMILES序列为例。固定标识符比如为[CLS],或者固定标识符还可以为起始符等,另外,固定标识符可以是一个或多个,比如可以包括起始符和终止符。

固定标识符输入到分子理解模型901中后,经过作为输出网络的分子生成网络902,输出新分子的SMILES序列。

对应生成具有特定属性的新分子的分子生成任务:

参见图9的中间图,分子应用输入为:固定标识符和特定属性信息;分子应用输出为:具有所述特定属性的新分子的分子表示序列。

固定标识符和特定属性信息输入到分子理解模型901中后,嵌入层可以将固定标识符和特定信息信息,转换为包含特定属性信息的固定标识符对应的向量,之后经过作为输出网络的分子生成网络902,输出具有所述特定属性信息的SMILES序列。

其中,固定标识符和包含特定属性信息的固定标识符对应的向量在图9中用不同的填充方式表示,包含特定属性信息的固定标识符对应的向量,可以是用特定属性信息对应的属性值乘以固定标识符对应的值后,将乘积采用嵌入层转换为向量后得到;或者,也可以是嵌入层包括:字符嵌入层和属性嵌入层,字符嵌入层将固定标识符转换为固定标识符向量,属性嵌入层将特定属性信息的属性值转换为属性向量,之后,将固定标识符向量和属性向量相加后得到。

对应生成优化后的分子的分子生成任务:

参见图9的右侧图,分子应用输入为:固定标识符和待优化分子表示序列;分子应用输出为:优化后分子表示序列。

固定标识符和待优化SMILES序列输入到分子理解模型901中后,经过作为输出网络的分子生成网络902,输出优化后SMILES序列。

一些实施例中,所述采用所述输出网络对所述隐层输出进行处理,以得到分子应用输出包括:采用所述输出网络,搜索与所述隐层输出对应的分子应用输出,所述搜索包括:随机采样搜索,或者,集束搜索。

进一步地,如图9的左侧图和中间图所示,在生成新分子或生成具有特定属性的新分子时,可以具体采用随机采样搜索(random sampling search),从而可以获取到范围更广的新分子;如图9的右侧图所示,在生成优化分子时,可以采用集束搜索(beam search),从而可以获取到更有针对性和准确的优化后的分子。

本实施例中,通过采用分子模型,分子模型由分子理解模型微调得到,可以适用于多种下游分子任务,并且,通过基于固定标识符进行分子生成任务,可以降低分子生成的复杂度。另外,通过输出网络和分子应用输入的不同,可以完成不同的分子任务,比如,分子预测任务和/或分子生成任务。

图10是根据本公开第十实施例的示意图。本实施例提供一种分子理解模型的训练装置,如图10所示,该装置1000包括:获取模块1001、处理模块1002和更新模块1003。

获取模块1001用于获取预训练数据,所述预训练数据包括:第一分子表示序列样本和第二分子表示序列样本,所述第一分子表示序列样本和所述第二分子表示序列样本为同一个分子的两种不同的分子表示序列样本;处理模块1002用于采用所述分子理解模型,对所述第一分子表示序列样本进行处理,以得到预训练输出;更新模块1003用于根据所述预训练输出和所述第二分子表示序列样本计算预训练损失函数,并根据所述预训练损失函数更新所述分子理解模型的参数。

一些实施例中,所述分子理解模型包括编码器和解码器;所述编码器包括第一自注意力层,所述第一自注意力层采用双向自注意力机制;和/或,所述解码器包括第二自注意力层,所述第二自注意力层采用单向自注意力机制。

一些实施例中,所述编码器还包括第一共享网络部分,所述解码器还包括第二共享网络部分,所述第一共享网络部分和所述第二共享网络部分具有相同的网络结构和网络参数。

一些实施例中,所述处理模块1002具体用于:采用所述编码器的所述第一自注意力层,对所述第一分子表示序列样本进行双向自注意力处理,以得到双向自注意力处理结果;采用所述编码器的所述第一共享网络部分,对所述双向自注意力处理结果进行处理,以得到编码输出;采用所述解码器的所述第二自注意力层,对所述编码输出和已生成输出进行单向自注意力处理,以得到单向自注意力处理结果;采用所述解码器的所述第二共享网络部分,对所述单向自注意力处理结果进行处理,以得到所述预训练输出。

一些实施例中,所述第一分子表示序列样本为SMILES序列样本;和/或,所述第二分子表示序列样本为SMILES序列样本。

本实施例中,通过采用同一个分子的两种不同的分子表示序列样本训练分子理解模型,可以充分利用分子表示序列的特性,提高分子理解模型的分子理解效果。

图11是根据本公开第十一实施例的示意图。本实施例提供一种基于分子模块的分子处理装置,所述分子模型包括分子理解模型和输出网络,所述分子理解模型采用同一个分子的两种不同的分子表示序列样本得到,所述分子处理装置1100包括:第一处理模块1101和第二处理模块1102。

第一处理模块1101用于采用所述分子理解模型对分子应用输入进行处理,以得到隐层输出,在所述输出网络为分子生成网络时,所述分子应用输入包括固定标识符;第二处理模块1102用于采用所述输出网络对所述隐层输出进行处理,以得到分子应用输出。

一些实施例中,在所述输出网络为分子生成网络时,所述分子应用输出包括分子表示序列,其中,若所述分子生成网络用于生成新分子,则所述分子表示序列为所述新分子的分子表示序列;或者,若所述分子生成网络用于生成具有特定属性的新分子,则所述分子应用输入还包括:所述特定属性的信息;所述分子表示序列为具有所述特定属性的新分子的分子表示序列;或者,若所述分子生成网络用于生成优化后的分子,则所述分子应用输入还包括:待优化分子表示序列;所述分子表示序列为优化后分子表示序列。

一些实施例中,所述输出网络为分子预测网络;所述分子应用输入包括:待预测的分子表示序列;所述分子应用输出包括:所述待预测的分子表示序列对应的预测值。

本实施例中,通过采用分子模型,分子模型由分子理解模型微调得到,可以适用于多种下游分子任务,并且,通过基于固定标识符进行分子生成任务,可以降低分子生成的复杂度。

可以理解的是,本公开的不同实施例中相同或相应的内容可以相互参考,实施例中未做详细说明的内容,可以参见其他实施例的相关内容。

根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。

图12示出了可以用来实施本公开的实施例的示例电子设备1200的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字助理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。

如图12所示,电子设备1200包括计算单元1201,其可以根据存储在只读存储器(ROM)1202中的计算机程序或者从存储单元1208加载到随机访问存储器(RAM)1203中的计算机程序,来执行各种适当的动作和处理。在RAM 1203中,还可存储电子设备1200操作所需的各种程序和数据。计算单元1201、ROM 1202以及RAM 1203通过总线1204彼此相连。输入/输出(I/O)接口1205也连接至总线1204。

电子设备1200中的多个部件连接至I/O接口1205,包括:输入单元1206,例如键盘、鼠标等;输出单元1207,例如各种类型的显示器、扬声器等;存储单元1208,例如磁盘、光盘等;以及通信单元1209,例如网卡、调制解调器、无线通信收发机等。通信单元1209允许电子设备1200通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

计算单元1201可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1201的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1201执行上文所描述的各个方法和处理,例如分子理解模型的训练方法或者分子处理方法。例如,在一些实施例中,图像识别模型的训练方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1208。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1202和/或通信单元1209而被载入和/或安装到电子设备1200上。当计算机程序加载到RAM 1203并由计算单元1201执行时,可以执行上文描述的分子理解模型的训练方法或者分子处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元1201可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行分子理解模型的训练方法或者分子处理方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号