一种预测分子标签的方法以及相关装置与流程

文档序号:31671235发布日期:2022-09-28 00:59阅读:117来源:国知局
一种预测分子标签的方法以及相关装置与流程

1.本技术实施例涉及人工智能技术领域,具体涉及一种预测分子标签的方法以及相关装置。


背景技术:

2.分子的结构是研究分子的基础,这是由于分子的微观结构与包括了化学反应在内的各种宏观的化学性能以及各种物理性质的关系密不可分。因此,人们在较早的时候就研究分子的结构,进而从各种已知的化学物质的分子结构和运动特征中归纳出物质结构的规律性,以用于解释物质的形成及其属性。
3.分子性质预测是药物设计中的一个基本环节,准确地预测分子属性可以快速地筛选出候选药物分子,提高药物设计流程的效果。在相关技术方案中,通常是基于人工智能(artificial intelligence,ai)技术中的训练深度学习模型的方式,来预测分子属性。然而,训练深度学习模型通常需要大量的已经标注有分子标签的标注数据,但是对于分子属性的标注数据却是很难获取得到。另一方面,主动学习算法通常是实现对图像数据或者文本数据的属性标注,从而减少训练一个高性能预测模型所需要的标注量,但是现有的主动学习算法并不是针对分子数据而设计的。因此,将上述所提及的现有深度学习模型、现有的主动学习算法等利用到分子数据的属性标注场景中,需要进行费时费力的时延或者复杂的理论计算来实现分子数据的属性预测,从而导致预测性能欠佳。


技术实现要素:

4.本技术实施例提供了一种预测分子标签的方法以及相关装置,无需进行费时费力的时延或者复杂的理论计算来实现分子数据的属性预测,提升了预测性能和预测效果。
5.第一方面,本技术实施例提供了一种预测分子标签的方法。该方法包括:获取第一样本集,第一样本集中包括至少一个未标注分子标签的第一样本;基于目标查询模型对每个第一样本的分子结构图进行处理,以获取每个第一样本的预测分数,其中,目标查询模型是以每个未标注分子标签的训练样本的预测分数为训练目标,以已标注分子标签的训练样本的分子结构图、未标注分子标签的训练样本的分子结构图为训练数据进行迭代训练得到的机器学习模型;基于每个第一样本的预测分数从第一样本集中,获取预测样本集,预测样本集中包括至少一个预测样本;将每个预测样本作为预设分类模型的输入,得到每个预测样本的分子标签。
6.第二方面,本技术实施例提供一种分子标签预测装置。该分子标签预测装置包括但不限于终端设备、服务器等。该分子标签预测装置包括获取单元和处理单元。其中,获取单元用于获取第一样本集,第一样本集中包括至少一个未标注分子标签的第一样本;处理单元,用于基于目标查询模型对每个第一样本的分子结构图进行处理,以获取每个第一样本的预测分数,其中,目标查询模型是以每个未标注分子标签的训练样本的预测分数为训练目标,以已标注分子标签的训练样本的分子结构图、未标注分子标签的训练样本的分子
结构图为训练数据进行迭代训练得到的机器学习模型;处理单元,用于基于每个第一样本的预测分数从第一样本集中,获取预测样本集,预测样本集中包括至少一个预测样本;处理单元,用于将每个预测样本作为预设分类模型的输入,得到每个预测样本的分子标签。
7.在一些可选的示例中,处理单元用于:从第一样本集中获取预测分数小于预设阈值时的第一样本;将预测分数小于预设阈值时的第一样本作为预测样本集。
8.在另一些可选的示例中,获取单元还用于获取第一训练样本的分子结构图和第二训练样本的分子结构图,其中,第一训练样本为已标注分子标签的训练样本,第二训练样本为未标注分子标签的训练样本。处理单元用于:基于自编码模型对第一训练样本的分子结构图和第二训练样本的分子结构图进行处理,得到目标重构损失值;基于对抗网络模型对第一训练样本的分子结构图和第二训练样本的分子结构图进行处理,得到目标对抗损失值;基于目标重构损失值和目标对抗损失值对初始查询模型进行迭代训练处理,得到目标查询模型。
9.在另一些可选的示例中,处理单元用于:基于自编码模型对第一训练样本的分子结构图进行处理,得到第一训练样本的目标smiles序列,以及对第二训练样本的分子结构图进行处理,得到第二训练样本的目标smiles序列;基于第一训练样本的目标smiles序列与第一预设smiles序列之间的差异,获取第一重构损失值,以及基于第二训练样本的目标smiles序列与第二预设smiles序列之间的差异,获取第二重构损失值;基于第一重构损失值和第二重构损失值确定目标重构损失值。
10.在另一些可选的示例中,处理单元用于:基于自编码模型中的编码器对第一训练样本的分子结构图进行编码处理,得到第一训练样本的隐空间分子编码向量;基于自编码模型中的解码器对第一训练样本的隐空间分子编码向量进行解码处理,得到第一训练样本的目标smiles序列。
11.在另一些可选的示例中,处理单元用于:基于自编码模型中的编码器对第一训练样本的分子结构图进行编码处理,得到第一训练样本的隐空间分子编码向量,以及对第二训练样本的分子结构图进行编码处理,得到第二训练样本的隐空间分子编码向量;基于对抗网络模型对第一训练样本的隐空间分子编码向量进行处理,得到第一训练样本的对抗损失值,以及对第二训练样本的隐空间分子编码向量进行处理,得到第二训练样本的对抗损失值;基于第一训练样本的对抗损失值和第二训练样本的对抗损失值确定目标对抗损失值。
12.在另一些可选的示例中,获取单元还用于获取第一分子结构相似度和第二分子结构相似度,其中,第一分子结构相似度为第一训练样本和第二训练样本中任意相邻的训练样本的分子结构图之间的相似度,第二分子结构相似度为第一训练样本和第二训练样本中,分子结构相似度大于预设阈值时相邻的训练样本的分子结构图之间的相似度。处理单元用于基于第一分子结构相似度和第二分子结构相似度确定目标对比学习损失值;基于目标重构损失值、目标对抗损失值以及目标对比学习损失值对初始查询模型进行迭代训练处理,得到目标查询模型。
13.在另一些可选的示例中,获取单元还用于获取自编码模型的模型参数和预设分类模型的模型参数。处理单元用于:基于自编码模型的模型参数和预设分类模型的模型参数确定知识蒸馏损失值;基于目标重构损失值、目标对抗损失值、目标对比学习损失值以及知
识蒸馏损失值对初始查询模型进行迭代训练处理,得到目标查询模型。
14.本技术实施例第三方面提供了一种分子标签预测装置,包括:存储器、输入/输出(i/o)接口和存储器。存储器用于存储程序指令。处理器用于执行存储器中的程序指令,以执行上述第一方面的实施方式对应的预测分子标签的方法。
15.本技术实施例第四方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行以执行上述第一方面的实施方式对应的方法。
16.本技术实施例第五方面提供了一种包含指令的计算机程序产品,当其在计算机或者处理器上运行时,使得计算机或者处理器执行上述以执行上述第一方面的实施方式对应的方法。
17.从以上技术方案可以看出,本技术实施例具有以下优点:
18.本技术实施例中,由于目标查询模型是以每个未标注分子标签的训练样本的预测分数为训练目标,以已标注分子标签的训练样本的分子结构图、未标注分子标签的训练样本的分子结构图为训练数据进行迭代训练得到的机器学习模型,那么在获取到包括至少一个未标注分子标签的第一样本在内的第一样本集后,可以通过该目标查询模型对每个第一样本进行处理,以得到每个第一样本的预测分数,进而基于预测分数从第一样本集中获取得到质量更好的需要进行分子标签标注的样本,即获取得到预测样本集。然后,将该预测样本集中的每个预测样本作为预设分类模型的输入,便可以预测得到每个预测样本的分子标签。通过上述方式,本技术实施例提出了针对分子数据的主动学习方法,能够在以分子结构图为输入以smlies序列为输出的自编码模型的基础上训练得到一种基于对抗主动学习的目标查询模型,进而能够直接将未标注分子标签的第一样本的分子结构图输入至本技术训练得到的目标查询模型中,进而得到质量较好的需要进行分子标签标注的预测样本,从而通过预设分类模型实现对预测样本的分子标签的预测,无需进行费时费力的时延或者复杂的理论计算来实现分子数据的属性预测,提升了预测性能和预测效果。
附图说明
19.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
20.图1示出了本技术实施例提供的预测分子标签的方法的流程示意图;
21.图2示出了本技术实施例提供的目标查询模型的训练流程示意图;
22.图3示出了本技术实施例提供的一种自编码模型的结构示意图;
23.图4示出了本技术实施例提供的一种对抗网络模型的结构示意图;
24.图5示出了本技术实施例中提供的分子标签预测装置的结构示意图;
25.图6示出了本技术实施例中提供的分子标签预测装置的硬件结构示意图。
具体实施方式
26.本技术实施例提供了一种预测分子标签的方法以及相关装置,无需进行费时费力
的时延或者复杂的理论计算来实现分子数据的属性预测,提升了预测性能和预测效果。
27.可以理解的是,在本技术的具体实施方式中,涉及到用户信息等相关的数据,当本技术以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
28.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
29.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
30.随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
31.对于分子性质的预测,是药物设计中重要的一环,准确地预测分子属性可以快速地筛选出候选药物分子,提高药物设计流程的效果。本技术实施例提供了一种预测分子标签的方法。本技术实施例提供的预测分子标签的方法是基于人工智能实现的。人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
32.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音技术、自然语言处理技术以及机器学习/深度学习等几大方向。
33.在本技术实施例中,主要涉及的人工智能技术包括上述所提及的机器学习、ai医疗技术等方向。例如,可以涉及机器学习(machine learning,ml)中的深度学习(deep learning),包括自动编码器(auto encoder)等;也可以涉及机器学习中的示教学习(teaching learning),包括主动学习(active learning)等。
34.本技术提供的预测分子标签的方法可以应用于具有数据处理能力的分子标签预测装置,如终端设备、服务器、问答机器人等。其中,终端设备可以包括但不限于智能手机、台式计算机、笔记本电脑、平板电脑、智能音箱、车载设备、智能手表、可穿戴智能设备、智能语音交互设备、智能家电、飞行器等。服务器可以是独立的物理服务器,也可以是多个物理
服务器构成的服务器集群或者分布式系统,还可以是提供云计算、云数据库、云存储和cdn等基础云计算服务的云服务器等,本技术不做具体限定。另外,所提及的终端设备以及服务器可以通过有线通信或无线通信等方式进行直接连接或间接连接,本技术不做具体限定。
35.上述所提及的分子标签预测装置可以具备机器学习能力。机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括神经网络等技术。
36.在本技术实施例提供的预测分子标签的方法中的采用人工智能模型,主要涉及对神经网络的应用,通过神经网络实现对未进行标签标注的样本进行分子标签的预测。
37.为了便于理解本技术的技术方案,下面结合附图对本技术实施例提供的一种预测分子标签的方法进行介绍。图1示出了本技术实施例提供的预测分子标签的方法的一种流程图。如图1所示,该预测分子标签的方法可以包括如下步骤:
38.101、获取第一样本集,第一样本集包括至少一个未标注分子标签的第一样本。
39.该示例中,第一样本集中的每一个第一样本都可以理解成未进行分子标签标注的分子数据。所描述的分子数据可以包括但不限于譬如药物分子、dna、rna或者蛋白质分子等等,本技术不做具体限定说明。为了能够利用神经网络等模型实现对未标注分子标签的样本进行标注,此时可以先采集获取到该第一样本集。另外,所描述的分子标签可以用来反映出分子的属性或性质。
40.102、基于目标查询模型对每个第一样本的分子结构图进行处理,以获取每个第一样本的预测分数,其中,目标查询模型是以每个未标注分子标签的训练样本的预测分数为训练目标,以已标注分子标签的训练样本的分子结构图、未标注分子标签的训练样本的分子结构图为训练数据进行迭代训练得到的机器学习模型。
41.该示例中,所描述的目标查询模型可以理解成使用自编码模型和对抗网络模型联合训练实现的,该目标查询模型是以每个未标注分子标签的训练样本的预测分数为训练目标,以已标注分子标签的训练样本的分子结构图、未标注分子标签的训练样本的分子结构图为训练数据进行迭代训练得到的机器学习模型,具体的训练过程可以参照后续图2所描述的实施例进行理解,此处先不做赘述。
42.在训练得到该目标查询模型后,可以使用该目标查询模型遍历该第一样本集中的每一个第一样本的分子结构图,进而得到每个第一样本的预测分数。所描述的预测分数可以反映出相应药物分子的性能优劣情况。预测分数越低,说明对应样本的分子性能越好。
43.所描述的分子结构图可以理解成相应样本的图结构,包括3个分子信息,即原子、分子键以及连接矩阵。其中,所描述的原子作为分子结构图的节点,其特征属性可以使用x表示。分子键作为分子结构图的边,其特征属性也可以使用b来表示。连接矩阵则用于描述出原子间的连接信息。需说明,所描述的x、b仅用于指代相应的特征属性,在实际应用中,也可以使用其他的方式来表示,本技术实施例中不做具体限定。
44.在另一些可选的示例中,本技术实施例提供的预测分子标签的方法能够准确地预测出未进行标注的样本的分子标签,在极大程度上取决于上述所提及的目标查询模型的模型性能,下面通过方法实施例对该目标查询模型的训练过程进行详细介绍。
45.图2示出了本技术实施例提供的目标查询模型的训练流程示意图。示例性地,如图2所示,该目标查询模型的训练过程至少包括如下步骤:
46.201、获取第一训练样本的分子结构图和第二训练样本的分子结构图,其中,第一训练样本为已标注分子标签的训练样本,第二训练样本为未标注分子标签的训练样本。
47.该示例中,在获取到训练样本集后,可以通过样本是否已经进行分子标签标注来区分哪些是已标注分子标签的训练样本、以及未标注分子标签的训练样本,即将第一训练样本和第二训练样本进行区分。然后,在获取得到第一训练样本和第二训练样本之后,可以从数据库或者其他设备中获取得到该第一训练样本的分子结构图,以及获取到该第二训练样本的分子结构图。所描述的分子结构图也可以参照前述图1中的步骤101的内容进行理解,此处不做赘述。
48.另外,样本的分子信息除了使用三维的分子结构图来表示以外,示例性地还可以使用二维的简化分子线性输入系统(simplified molecular input line entry system,smiles)序列来描述。因此,在获取该第一训练样本的分子结构图、以及获取到该第二训练样本的分子结构图的过程中,也可以从数据库或者其他设备中获取到该第一训练样本的初始smiles序列、以及第二训练样本的初始smiles序列。
49.这样,在获取得到第一训练样本的分子结构图、以及获取到该第二训练样本的分子结构图之后,可以通过自编码模型对第一训练样本的分子结构图、以及获取到该第二训练样本的分子结构图进行处理,得到相应的目标重构损失值,具体参照下述步骤202所描述的内容进行理解,此处先不做赘述。以及,通过对抗网络模型对第一训练样本的分子结构图、以及获取到该第二训练样本的分子结构图进行处理,得到相应的目标对抗损失值,具体参照下述步骤203所描述的内容进行理解,此处先不做赘述。进而基于目标重构损失值和目标对抗损失值对初始查询模型进行迭代训练,便可以得到该目标查询模型。
50.另外,本技术所描述的训练样本、以及后续提及的预测样本也可以理解成分子数据,譬如药物分子、脱氧核糖核酸(deoxyribonucleic acid,dna)、核糖核酸(ribonucleic acid,rna)或者蛋白质分子等等,本技术不做具体限定说明。
51.202、基于自编码模型对第一训练样本的分子结构图和第二训练样本的分子结构图进行处理,得到目标重构损失值。
52.该示例中,自编码(graph-to-smiles autoencoder,gtos ae)模型可以包括编码器和解码器,具体可以参照图3示出的结构示意图进行理解。如图3所示,该自编码模型中的编码器由若干图神经网络和若干注意力机制层构成。而且,解码器则是由若干注意力机制层和全连接层构成。这样,将样本的分子结构图输入至该编码器中,编码器能够将样本的分子结构图编码到隐空间中,得到样本对应的隐空间分子编码向量。然后,将样本对应的隐空间分子编码向量输入至解码器中,进而经过该解码器中的若干注意力机制层和一个全连接层的处理之后,能够重新构建出该样本的smlies序列,即得到该样本的目标smlies序列。需说明,在实际应用中,编码器中的注意力机制层也可以替换为卷积神经网络或者全图神经网络结构等等,本技术不做具体限定说明。另外,解码器中的注意力机制层也可以替换为卷全图神经网络结构等,本技术不做具体限定说明。
53.基于此,在另一些可能的示例中,针对步骤202中计算目标重构损失值可以通过如下方式来实现,即:首先,基于自编码模型对第一训练样本的分子结构图进行处理,得到第
一训练样本的目标smiles序列,以及对第二训练样本的分子结构图进行处理,得到第二训练样本的目标smiles序列。然后,计算第一训练样本的目标smiles序列与第一预设smiles序列之间的第一重构损失值,以及计算第二训练样本的目标smiles序列与第二预设smiles序列之间的第二重构损失值,并基于第一重构损失值和第二重构损失值确定目标重构损失值。
54.该示例中,参照图3的内容进行理解,可以基于该自编码模型中的编码器对第一训练样本的分子结构图进行编码处理,得到该第一训练样本的隐空间分子编码向量。然后,再经过该自编码模型中的解码器对该第一训练样本的隐空间分子编码向量进行解码处理,进而得到该第一训练样本的目标smiles序列。类似地,针对第二训练样本,也可以基于该自编码模型中的编码器对第二训练样本的分子结构图进行编码处理,得到该第二训练样本的隐空间分子编码向量。然后,再经过该自编码模型中的解码器对该第二训练样本的隐空间分子编码向量进行解码处理,进而得到该第二训练样本的目标smiles序列。
55.然后,在得到第一训练样本的目标smiles序列之后,可以基于自编码模型的目标函数确定出第一训练样本的目标smiles序列与第一预设smiles序列之间的序列差异,以获取第一重构损失值。需理解,所描述的第一预设smiles序列可以理解成上述步骤201中所描述的第一训练样本的初始smiles序列。同样地,在得到第二训练样本的目标smiles序列之后,也可以基于自编码模型的目标函数确定出第二训练样本的目标smiles序列与第二预设smiles序列之间的序列差异,以获取第二重构损失值。需理解,所描述的第二预设smiles序列可以理解成上述步骤201中所描述的第二训练样本的初始smiles序列。
56.这样,在得到第一重构损失值和第二重构损失值后,便可以求取第一重构损失值与第二重构损失值之和,进而得到目标重构损失值。
57.应理解,上述所提及的自编码模型的目标函数可以参照下述公式进行理解成,即:其中,ie
g∈l
[l(q
φ
(p
θ
(g)),s(g))]表示成第一重构损失值l(q
φ
(p
θ
(g)),s(g))的期望,ie
g∈u
[l(q
φ
(p
θ
(g)),s(g))]表示成第二重构损失值l(q
φ
(p
θ
(g)),s(g))的期望,l
ae
表示为目标重构损失值。另外,在重构损失函数l(q
φ
(p
θ
(g)),s(g))中,q
φ
(p
θ
(g))可以表示成训练样本的目标smiles序列,s(g)表示成预设smiles序列,p
θ
(g)表示成训练样本的隐空间分子编码向量,g表示成训练样本的分子结构图。譬如,在g∈l的情况下,q
φ
(p
θ
(g))可以表示出第一训练样本的目标smiles序列,s(g)表示成第一预设smiles序列,p
θ
(g)表示成第一训练样本的隐空间分子编码向量,g表示成第一训练样本的分子结构图。同样地,在g∈u的情形下,q
φ
(p
θ
(g))表示成第二训练样本的目标smiles序列,s(g)表示成第二预设smiles序列,p
θ
(g)表示成第二训练样本的隐空间分子编码向量,g表示成第二训练样本的分子结构图。l为第一训练样本所在集合,u为第二训练样本所在的集合。
[0058]
203、基于对抗网络模型对第一训练样本的分子结构图和第二训练样本的分子结构图进行处理,得到目标对抗损失值。
[0059]
该示例中,所描述的对抗网络(adversarial network,advnet)模型可以参照图4示出结构示意图进行理解。如图4所示,该对抗网络模型包括注意力机制层和多层感知机。
在获取得到样本的隐空间分子编码向量之后,可以通过该对抗网络模型中的注意力机制层和多层感知机的变换和处理后,能够输出样本的二分类结果,即判断该样本是否已经被标注,进而得到相应样本的对抗损失值。需说明,图4示出的对抗网络模型的架构也可以用纯多层感知机,或者全卷积神经网络、全图神经网络结构来替代,具体本技术不做限定说明。
[0060]
基于此,在另一些可能的示例中,针对步骤203中计算目标对抗损失值可以通过如下方式来实现,即:基于自编码模型中的编码器对第一训练样本的分子结构图进行编码处理,得到第一训练样本的隐空间分子编码向量,以及对第二训练样本的分子结构图进行编码处理,得到第二训练样本的隐空间分子编码向量;基于对抗网络模型对第一训练样本的隐空间分子编码向量进行处理,得到第一训练样本的对抗损失值,以及对第二训练样本的隐空间分子编码向量进行处理,得到第二训练样本的对抗损失值;基于第一训练样本的对抗损失值和第二训练样本的对抗损失值确定目标对抗损失值。
[0061]
该示例中,基于自编码模型中的编码器对样本的分子结构图进行编码处理,得到相应样本的隐空间分子编码向量的具体实现过程,可以参照前述图3和步骤202的内容进行理解,此处不做赘述。这样,在得到第一训练样本的隐空间分子编码向量之后,能够通过对抗网络模型的目标函数对第一训练样本的隐空间分子编码向量进行处理,得到第一训练样本的对抗损失值。同样地,在得到第二训练样本的隐空间分子编码向量之后,也同样可以基于对抗网络模型的目标函数对第二训练样本的隐空间分子编码向量进行处理,得到第二训练样本的对抗损失值。
[0062]
这样,在得到第一训练样本的对抗损失值和第二训练样本的对抗损失值后,便可以求取第一训练样本的对抗损失值和第二训练样本的对抗损失值之和,进而得到目标对抗损失值。
[0063]
应理解,上述所提及的对抗网络模型的目标函数可以参照下述公式进行理解成,即:l
adv
=ie
g∈l
[log(d
ψ
(p
θ
(g)))]+ie
g∈u
[1-log(d
ψ
(p
θ
(g)))]。其中,ie
g∈l
[log(d
ψ
(p
θ
(g)))]表示成第一训练样本的对抗损失值log(d
ψ
(p
θ
(g)))的期望,ie
g∈u
[1-log(d
ψ
(p
θ
(g)))]表示成第二训练样本的对抗损失值1-log(d
ψ
(p
θ
(g)))的期望,l
adv
表示为目标对抗损失值。另外,在对抗网络模型d
ψ
(p
θ
(g))中,p
θ
(g)表示成训练样本的隐空间分子编码向量,g表示成训练样本的分子结构图。譬如说,在g∈l的情形下,p
θ
(g)可以表示成第一训练样本的隐空间分子编码向量,g表示成第一训练样本的分子结构图。在g∈u的情形下,p
θ
(g)表示成第二训练样本的隐空间分子编码向量,g表示成第二训练样本的分子结构图。l为第一训练样本所在集合,u为第二训练样本所在的集合。
[0064]
204、基于目标重构损失值和目标对抗损失值对初始查询模型进行迭代训练处理,得到目标查询模型。
[0065]
该示例中,所描述的初始查询模型是由自编码模型经过预训练得到的,预训练的目标是为了使得自编码模型能够学会将所有的训练样本的分子结构图转化为对应的初始smiles序列,进而通过重构损失函数ie
g∈(u∪l)
[l(q
φ
(p
θ
(g)),s(g))]确定smiles序列之间的差异,以获取得到相应的重构损失值后,基于该重构损失值训练得到该初始查询模型。
[0066]
然后,在经过上述步骤202至步骤203确定出目标重构损失值和目标对抗损失值后,便可以将目标重构损失值和目标对抗损失值进行结合,即通过
联合迭代训练该初始查询模型,进而得到相应的目标查询模型。
[0067]
在另一些可能的示例中,为了使自编码模型中编码得到的隐空间分子编码向量能够包含样本的分子相似度信息,该目标查询模型的训练过程中还可以引入对比学习机制,使得谷本系数(tanimoto similarity)相似度更大的分子在隐空间中更接近。示例性地,该预测分子标签的方法还可以包括:获取第一分子结构相似度和第二分子结构相似度,其中,第一分子结构相似度为第一训练样本和第二训练样本中任意相邻的训练样本的分子结构图之间的相似度,第二分子结构相似度为第一训练样本和第二训练样本中,分子结构相似度大于预设阈值时相邻的训练样本的分子结构图之间的相似度;基于第一分子结构相似度和第二分子结构相似度确定目标对比学习损失值。然后,基于目标重构损失值、目标对抗损失值以及目标对比学习损失值对初始查询模型进行迭代训练处理,得到目标查询模型。
[0068]
该示例中,在获取到第一训练样本的分子结构图和第二训练样本的分子结构图之后,可以从第一训练样本和第二训练样本中确定出任意相邻的训练样本,然后计算第一训练样本和第二训练样本中任意相邻的训练样本的分子结构图之间的相似度,作为第一分子结构相似度。示意性地,可以通过自编码模型中的编码器对第一训练样本的分子结构图和第二训练样本的分子结构图进行编码处理,得到相应的隐空间分子编码向量p
θ
(g)之后,通过相似度算法等计算出任意相邻的训练样本的隐空间分子编码向量(如:p
θ
(g)与p
θ
(g
·
))之间的向量內积,进而将该向量內积作为第一分子结构相似度,即其中,g
·
表示为某个样本的分子结构图g的相邻样本的分子结构图。
[0069]
类似地,在获取到第一训练样本的分子结构图和第二训练样本的分子结构图之后,可以从第一训练样本和第二训练样本中确定出分子结构相似度大于预设阈值时相邻的训练样本,然后计算第一训练样本和第二训练样本中分子结构相似度大于预设阈值时相邻的训练样本的分子结构图之间的相似度,作为第二分子结构相似度。示意性地,可以通过自编码模型中的编码器对第一训练样本的分子结构图和第二训练样本的分子结构图进行编码处理,得到相应的隐空间分子编码向量p
θ
(g)之后,通过相似度算法等计算出分子相似度大于预设阈值时相邻的训练样本的隐空间分子编码向量(如:p
θ
(g)与p
θ
(g
·
))之间的向量內积,进而将该向量內积作为第二分子结构相似度,即其中,表示根据化学相似度定义的训练样本的分子结构图g的“邻居”训练样本的分子结构图集合,例如取与g的化学相似度大于某个阈值的所有训练样本的分子结构图。
[0070]
在得到第一分子结构相似度和第二分子结构相似度后,可以基于基于第一分子结构相似度和第二分子结构相似度确定目标对比学习损失值,即
其中,l
contr
表示为目标对比学习损失值。
[0071]
这样,在经过上述步骤202至步骤203确定出目标重构损失值和目标对抗损失值后,还可以结合该目标对比学习损失值进行联合训练初始查询模型,即通过联合迭代训练该初始查询模型,进而得到相应的目标查询模型,其中,λ为超参数,用于调整l
contr
的权重。需说明,在实际应用中除了使用tanimoto相似度以外,还可以使用其他的化学相似度来定义分子的“邻居”,具体本技术不做限定说明。
[0072]
在另一些可能的示例中,为了使自编码模型能够得到来自预设分类模型的信息反馈,还可以引入基于知识蒸馏的目标函数来实现对初始查询模型的迭代训练。示例性地,该预测分子标签的方法还可以包括:获取自编码模型的模型参数(如:)和预设分类模型的模型参数(如:)。然后,基于自编码模型的模型参数和预设分类模型的模型参数确定知识蒸馏损失值,即其中,l
kd
为知识蒸馏损失值。这样,在经过上述步骤202至步骤203确定出目标重构损失值、目标对抗损失值以及目标对比学习损失值后,还可以结合该知识蒸馏损失值值进行联合训练初始查询模型,即通过对初始查询模型进行迭代训练处理,得到目标查询模型,其中,μ为超参数,用于调整l
kd
的权重。
[0073]
需说明,所描述的自编码模型型与预设分类模型有相同的网络结构。另外,所描述的自编码模型的模型参数(如)可以理解成该自编码模型中图神经网络部分的参数。所描述的预设分类模型的模型参数(如)可以理解成分子属性预测模型中的图神经网络部分的参数。
[0074]
需说明,在实际应用中,在计算知识蒸馏损失值中,还可以将相似性约束施加到网络的可学习参数中。另外,还可能引入其他的损失值来实现对初始查询模型的迭代训练,本技术中不做具体限定说明。
[0075]
103、基于每个第一样本的预测分数从第一样本集中,获取预测样本集,预测样本集中包括至少一个预测样本。
[0076]
该示例中,在训练得到目标查询模型后,可以基于该目标查询模型遍历查询所有候选的未进行分子标签标注的每个第一样本,得到每个第一样本的预测分数。然后,从这第一样本集中获取包括至少一个预测样本在内的预测样本集。示例性地,可以从第一样本集中获取出预测分数小于预设阈值时的第一样本,并将预测分数小于预设阈值时的第一样本作为该预测样本集。具体地,获取预测样本集可以参照下述公式进行理解:其中,q为预测样本集,b为超参数,用于表示q中的预测样本的个数。需说明,b的取值可以理解成预测分数小于预设阈值时的预测样本的个数,可以按照实际场景的需求调整预设阈值。另外,u为第一样本集,即理解成未进行分子标签标注的样本集。
[0077]
104、将每个预测样本作为预设分类模型的输入,得到每个预测样本的分子标签。
[0078]
该示例中,在得到预测样本集q后,将每个预测样本作为预设分类模型的输入,进而得到每个预测样本的分子标签。需说明,所描述的预设分类模型可以是二分类模型,也可以是卷积神经网络(convolutional neural network,cnn)等其他形式的神经网络模型等,本技术不做具体限定说明。
[0079]
示例性地,在得到预测样本集q后,还可以对q中的每个预测样本进行分子标签标注,如使用yg表示。然后,通过预设分类模型预测得到每个预测样本的分子标签后,可以计算出标注的分子标签与预测得到的分子标签之间的差异,以获取相应的损失值,如交叉熵损失值等。这样,还可以进一步地基于该损失值(如:ie
g∈q
[l(tw(g),yg)])迭代训练预设分类模型,不断地优化预设分类模型的模型性能,便于更加地准确预测出预测样本的分子标签。
[0080]
本技术实施例中,由于目标查询模型是以每个未标注分子标签的训练样本的预测分数为训练目标,以已标注分子标签的训练样本的分子结构图、未标注分子标签的训练样本的分子结构图为训练数据进行迭代训练得到的机器学习模型,那么在获取到包括至少一个未标注分子标签的第一样本在内的第一样本集后,可以通过该目标查询模型对每个第一样本进行处理,以得到每个第一样本的预测分数,进而基于预测分数从第一样本集中获取得到质量更好的需要进行分子标签标注的样本,即获取得到预测样本集。然后,将该预测样本集中的每个预测样本作为预设分类模型的输入,便可以预测得到每个预测样本的分子标签。通过上述方式,本技术实施例提出了针对分子数据的主动学习方法,能够在以分子结构图为输入以smlies序列为输出的自编码模型的基础上训练得到一种基于对抗主动学习的目标查询模型,进而能够直接将未标注分子标签的第一样本的分子结构图输入至本技术训练得到的目标查询模型中,进而得到质量较好的需要进行分子标签标注的预测样本,从而通过预设分类模型实现对预测样本的分子标签的预测,无需进行费时费力的时延或者复杂的理论计算来实现分子数据的属性预测,提升了预测性能和预测效果。
[0081]
上述主要从方法的角度对本技术实施例提供的方案进行了介绍。可以理解的是为了实现上述功能,包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本技术中所公开的实施例描述的各示例的模块及算法步骤,本技术
能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0082]
本技术实施例可以根据上述方法示例对装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本技术实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
[0083]
下面对本技术实施例中的分子标签预测装置进行详细描述,图5为本技术实施例中提供的分子标签预测装置的一个实施例示意图。如图5所示,该分子标签预测装置可以包括获取单元501和处理单元502。
[0084]
其中,获取单元501用于获取第一样本集,第一样本集中包括至少一个未标注分子标签的第一样本.
[0085]
处理单元502,用于基于目标查询模型对每个第一样本的分子结构图进行处理,以获取每个第一样本的预测分数,其中,目标查询模型是以每个未标注分子标签的训练样本的预测分数为训练目标,以已标注分子标签的训练样本的分子结构图、未标注分子标签的训练样本的分子结构图为训练数据进行迭代训练得到的机器学习模型;基于每个第一样本的预测分数从第一样本集中,获取预测样本集,预测样本集中包括至少一个预测样本;将每个预测样本作为预设分类模型的输入,得到每个预测样本的分子标签。
[0086]
在一些可选的示例中,处理单元502用于:从第一样本集中获取预测分数小于预设阈值时的第一样本;将预测分数小于预设阈值时的第一样本作为预测样本集。
[0087]
在另一些可选的示例中,获取单元501还用于获取第一训练样本的分子结构图和第二训练样本的分子结构图,其中,第一训练样本为已标注分子标签的训练样本,第二训练样本为未标注分子标签的训练样本。处理单元502用于:基于自编码模型对第一训练样本的分子结构图和第二训练样本的分子结构图进行处理,得到目标重构损失值;基于对抗网络模型对第一训练样本的分子结构图和第二训练样本的分子结构图进行处理,得到目标对抗损失值;基于目标重构损失值和目标对抗损失值对初始查询模型进行迭代训练处理,得到目标查询模型。
[0088]
在另一些可选的示例中,处理单元502用于:基于自编码模型对第一训练样本的分子结构图进行处理,得到第一训练样本的目标smiles序列,以及对第二训练样本的分子结构图进行处理,得到第二训练样本的目标smiles序列;基于第一训练样本的目标smiles序列与第一预设smiles序列之间的差异,获取第一重构损失值,以及基于第二训练样本的目标smiles序列与第二预设smiles序列之间的差异,获取第二重构损失值;基于第一重构损失值和第二重构损失值确定目标重构损失值。
[0089]
在另一些可选的示例中,处理单元502用于:基于自编码模型中的编码器对第一训练样本的分子结构图进行编码处理,得到第一训练样本的隐空间分子编码向量;基于自编码模型中的解码器对第一训练样本的隐空间分子编码向量进行解码处理,得到第一训练样本的目标smiles序列。
[0090]
在另一些可选的示例中,处理单元502用于:基于自编码模型中的编码器对第一训练样本的分子结构图进行编码处理,得到第一训练样本的隐空间分子编码向量,以及对第二训练样本的分子结构图进行编码处理,得到第二训练样本的隐空间分子编码向量;基于对抗网络模型对第一训练样本的隐空间分子编码向量进行处理,得到第一训练样本的对抗损失值,以及对第二训练样本的隐空间分子编码向量进行处理,得到第二训练样本的对抗损失值;基于第一训练样本的对抗损失值和第二训练样本的对抗损失值确定目标对抗损失值。
[0091]
在另一些可选的示例中,获取单元501还用于获取第一分子结构相似度和第二分子结构相似度,其中,第一分子结构相似度为第一训练样本和第二训练样本中任意相邻的训练样本的分子结构图之间的相似度,第二分子结构相似度为第一训练样本和第二训练样本中,分子结构相似度大于预设阈值时相邻的训练样本的分子结构图之间的相似度。处理单元502用于基于第一分子结构相似度和第二分子结构相似度确定目标对比学习损失值;基于目标重构损失值、目标对抗损失值以及目标对比学习损失值对初始查询模型进行迭代训练处理,得到目标查询模型。
[0092]
在另一些可选的示例中,获取单元501还用于获取自编码模型的模型参数和预设分类模型的模型参数。处理单元502用于:基于自编码模型的模型参数和预设分类模型的模型参数确定知识蒸馏损失值;基于目标重构损失值、目标对抗损失值、目标对比学习损失值以及知识蒸馏损失值对初始查询模型进行迭代训练处理,得到目标查询模型。
[0093]
上面从模块化功能实体的角度对本技术实施例中的分子标签预测装置进行描述,下面从硬件处理的角度对本技术实施例中的分子标签预测装置进行描述。图6是本技术实施例提供的分子标签预测装置的硬件结构示意图。该分子标签预测装置可因配置或性能不同而产生比较大的差异。该分子标签预测装置可以至少一个处理器601,通信线路607,存储器603以及至少一个通信接口604。
[0094]
处理器601可以是一个通用中央处理器(central processing unit,cpu),微处理器,特定应用集成电路(application-specific integrated circuit,服务器ic),或一个或多个用于控制本技术方案程序执行的集成电路。
[0095]
通信线路607可包括一通路,在上述组件之间传送信息。
[0096]
通信接口604,使用任何收发器一类的装置,用于与其他装置或通信网络通信,如以太网,无线接入网(radio access network,ran),无线局域网(wireless local area networks,wlan)等。
[0097]
存储器603可以是只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储装置,随机存取存储器(random access memory,ram)或者可存储信息和指令的其他类型的动态存储装置,存储器可以是独立存在,通过通信线路607与处理器相连接。存储器也可以和处理器集成在一起。
[0098]
其中,存储器603用于存储执行本技术方案的计算机执行指令,并由处理器601来控制执行。处理器601用于执行存储器603中存储的计算机执行指令,从而实现本技术上述实施例提供的预测分子标签的方法。
[0099]
可选的,本技术实施例中的计算机执行指令也可以称之为应用程序代码,本技术实施例对此不作具体限定。
[0100]
在具体实现中,作为一种实施例,该分子标签预测装置可以包括多个处理器,例如包括但不限于图6中的处理器601和处理器602等。这些处理器中的每一个可以是一个单核(single-cpu)处理器,也可以是一个多核(multi-cpu)处理器。这里的处理器可以指一个或多个装置、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
[0101]
在具体实现中,作为一种实施例,该语音识别设备还可以包括输出设备605和输入设备606。输出设备605和处理器601通信,可以以多种方式来显示信息。输入设备606和处理器601通信,可以以多种方式接收目标对象的输入。例如,输入设备606可以是鼠标、触摸屏装置或传感装置等。
[0102]
上述的该语音识别设备可以是一个通用装置或者是一个专用装置。在具体实现中,该语音识别设备可以是服务器、终端等或有图6中类似结构的装置。本技术实施例不限定该分子标签预测装置的类型。
[0103]
需说明,图6中的处理器601可以通过调用存储器603中存储的计算机执行指令,使得分子标签预测装置执行如图1至图2对应的方法实施例中的方法。
[0104]
具体的,图5中的处理单元502的功能/实现过程可以通过图6中的处理器601调用存储器603中存储的计算机执行指令来实现。图5中的获取单元501的功能/实现过程可以通过图6中的通信接口604来实现。
[0105]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
[0106]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0107]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0108]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0109]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0110]
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介
质。
[0111]
上述实施例,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
[0112]
计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机执行指令时,全部或部分地产生按照本技术实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如ssd))等。
[0113]
以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1