图神经网络的预训练方法、训练方法、装置、设备及介质

文档序号:1798811 发布日期:2021-11-05 浏览:16次 >En<

阅读说明:本技术 图神经网络的预训练方法、训练方法、装置、设备及介质 (Pre-training method, device, equipment and medium of graph neural network ) 是由 荣钰 刘雪怡 徐挺洋 黄文炳 于 2021-02-24 设计创作,主要内容包括:本申请公开了一种图神经网络的预训练方法、训练方法、装置、设备及介质。预训练方法通过从图谱中选取若干节点,获取该节点的第一节点特征数据和第二节点特征数据,通过第一节点特征数据和节点之间的边特征数据对第二节点特征数据进行预测,然后根据预测结果对选取的第一节点进行更新,从而根据更新后的第一节点的节点特征数据对图神经网络进行训练。本申请基于节点级特征的预测任务,通过训练过程中的预测结果对每轮参与图神经网络训练的节点进行优化,使得训练任务能够更好地结合图数据的特征,从而提高预训练后图神经网络的泛化性能,方便后续针对不同的应用任务进行精调,有利于减少计算资源的消耗。本申请可广泛应用于人工智能技术领域。(The application discloses a pre-training method, a device, equipment and a medium of a graph neural network. The pre-training method includes the steps of selecting a plurality of nodes from a map, obtaining first node feature data and second node feature data of the nodes, predicting the second node feature data through the first node feature data and edge feature data between the nodes, and then updating the selected first nodes according to prediction results, so that a graph neural network is trained according to the updated node feature data of the first nodes. According to the prediction task based on the node-level characteristics, each round of nodes participating in the graph neural network training are optimized through the prediction result in the training process, so that the training task can better combine the characteristics of graph data, the generalization performance of the graph neural network after pre-training is improved, the follow-up fine tuning is conveniently carried out on different application tasks, and the consumption of computing resources is favorably reduced. The method and the device can be widely applied to the technical field of artificial intelligence.)

图神经网络的预训练方法、训练方法、装置、设备及介质

技术领域

本申请涉及人工智能技术领域,尤其是一种图神经网络的预训练方法、训练方法、装置、设备及介质。

背景技术

近年来,人工智能技术飞速发展,神经网络在图像分类、人脸识别、自动驾驶等领域均取得了良好的应用效果。其中,图谱(Graph)作为一种数据结构,在社交网络、学术资讯以及生化领域得到了非常广泛的应用,例如人际关系、分子结构等信息都可以方便地使用图谱进行表示。图神经网络是一种将机器学习方法应用于图谱数据上的神经网络模型,将图谱中的数据输入到图神经网络,网络可以在各个节点处不断聚合其周围节点的信息来获得该节点的信息,从而输出每个节点或者整个图谱的表征向量。基于图神经网络输出的表征向量,可以方便地开展各类机器学习任务,例如可以通过机器学习算法根据节点的表征向量对节点进行分类,以确定节点的某些类别。

相关技术中,针对不同应用领域下的具体任务,往往需要采集该应用领域内大量节点的标签信息,用以训练得到适用的图神经网络。但是,节点的标签信息往往是昂贵、难以获取的;且一一训练不同应用领域下的图神经网络需要耗费大量的计算资源,成本较高。综上,相关技术中存在的技术问题亟需得到解决。

发明内容

本申请的目的在于至少一定程度上解决相关技术中存在的技术问题之一。

为此,本申请实施例的一个目的在于提供一种图神经网络的预训练方法,该方法通过预训练来提高图神经网络的泛化性能,方便后续针对不同应用领域下的具体任务进行微调,有利于减少计算资源的消耗。

为了达到上述技术目的,本申请实施例所采取的技术方案包括:

一方面,本申请实施例提供一种图神经网络的预训练方法,包括以下步骤:

获取图谱中各个节点之间的边特征数据;

从所述节点中选取若干第一节点,并获取所述第一节点的节点特征数据;所述节点特征数据包括第一节点特征数据和第二节点特征数据;所述第一节点特征数据和所述第二节点特征数据具有不同的数据类型;

将所述第一节点特征数据和所述边特征数据输入到图神经网络,得到所述图神经网络输出的第一节点表征向量;

根据所述第二节点特征数据和所述第一节点表征向量,确定所述图神经网络对各个所述第一节点预测的第一损失值;

根据所述第一损失值,对所述第一节点进行更新;

根据更新后的第一节点的所述节点特征数据,对所述图神经网络进行训练。

另一方面,本申请实施例提供一种分子属性预测模型的训练方法,该方法包括以下步骤:

获取分子的属性标签、所述分子中各个原子的原子特征数据和所述原子之间的化学键数据;

将所述原子特征数据和所述化学键数据输入到如前面所述的方法预训练得到的图神经网络,得到所述图神经网络输出的分子表征向量;

根据所述属性标签和所述分子表征向量,确定所述图神经网络预测的第三损失值;

根据所述第三损失值,对所述图神经网络的参数进行更新,得到训练好的分子属性预测模型。

另一方面,本申请实施例提供一种图神经网络的预训练装置,包括:

第一获取模块,用于获取图谱中各个节点之间的边特征数据;

选取模块,用于从所述节点中选取若干第一节点,并获取所述第一节点的节点特征数据;所述节点特征数据包括第一节点特征数据和第二节点特征数据;所述第一节点特征数据和所述第二节点特征数据具有不同的数据类型;

第一预测模块,用于将所述第一节点特征数据和所述边特征数据输入到图神经网络,得到所述图神经网络输出的第一节点表征向量;

第一处理模块,用于根据所述第二节点特征数据和所述第一节点表征向量,确定所述图神经网络对各个所述第一节点预测的第一损失值;

第一更新模块,用于根据所述第一损失值,对所述第一节点进行更新;

第一训练模块,用于根据更新后的第一节点的所述节点特征数据,对所述图神经网络进行训练。

可选地,在一些实施例中,所述选取模块包括:

第一选取子模块,用于从所述节点中随机选取得到若干所述第一节点。

可选地,在一些实施例中,所述选取模块包括:

概率获取子模块,用于获取预设的各个所述节点对应的第一选取概率;

第二选取子模块,用于根据所述第一选取概率,对所述节点进行选取,得到若干所述第一节点。

可选地,在一些实施例中,所述第一处理模块包括:

第一输入子模块,用于将所述第一节点表征向量输入到第一神经网络中,得到所述第一神经网络输出的第三节点特征数据;

第一损失值确定子模块,用于根据所述第二节点特征数据和所述第三节点特征数据,确定各个所述第一节点对应的第一损失值。

可选地,在一些实施例中,所述第一更新模块包括:

排序子模块,用于根据所述第一损失值的大小对所述第一损失值进行排序;

删除子模块,用于删除所述第一损失值最大的预设个数的第一节点,得到更新后的第一节点。

可选地,在一些实施例中,所述第一更新模块包括:

归一化子模块,用于对各个所述第一节点对应的所述第一损失值进行归一化,得到各个所述第一节点对应的第二选取概率;

第三选取子模块,用于根据所述第二选取概率,对所述第一节点进行更新,得到更新后的第一节点。

可选地,在一些实施例中,所述第一训练模块包括:

预测子模块,用于将所述边特征数据和更新后的第一节点的所述第一节点特征数据输入到所述图神经网络,得到所述图神经网络输出的第二节点表征向量;

处理子模块,用于根据更新后的第一节点的所述第二节点特征数据和所述第二节点表征向量,确定所述图神经网络对各个所述第一节点预测的第二损失值;

更新子模块,用于根据所述第二损失值,对所述图神经网络的参数进行更新。

可选地,在一些实施例中,所述处理子模块包括:

第二输入子模块,用于将所述第二节点表征向量输入到第一神经网络中,得到所述第一神经网络输出的第四节点特征数据;

第二损失值确定子模块,用于根据所述第四节点特征数据和更新后的第一节点的所述第二节点特征数据,确定各个所述第一节点对应的第二损失值。

可选地,在一些实施例中,所述第一训练模块包括:

节点更新子模块,用于根据更新后的第一节点的所述节点特征数据,对所述第一节点进行迭代更新;

网络训练子模块,用于当所述第一节点的迭代更新轮次达到预设次数,根据当前的第一节点的所述节点特征数据对所述图神经网络进行训练。

另一方面,本申请实施例提供一种分子属性预测模型的训练装置,包括:

第二获取模块,用于获取分子的属性标签、所述分子中各个原子的原子特征数据和所述原子之间的化学键数据;

第二预测模块,用于将所述原子特征数据和所述化学键数据输入到如前面所述的方法预训练得到的图神经网络,得到所述图神经网络输出的分子表征向量;

第二处理模块,用于根据所述属性标签和所述分子表征向量,确定所述图神经网络预测的第三损失值;

第二训练模块,用于根据所述第三损失值,对所述图神经网络的参数进行更新,得到训练好的分子属性预测模型。

可选地,在一些实施例中,所述第二处理模块包括:

第三输入子模块,用于将所述分子表征向量输入到第二神经网络中,得到所述第二神经网络输出的属性预测结果;

第三损失值确定子模块,用于根据所述属性标签和所述属性预测结果,确定所述第三损失值。

另一方面,本申请实施例提供了一种计算机设备,包括:

至少一个处理器;

至少一个存储器,用于存储至少一个程序;

当至少一个所述程序被至少一个所述处理器执行时实现如前面所述的图神经网络的预训练方法或者分子属性预测模型的训练方法。

另一方面,本申请实施例还提供了一种计算机可读存储介质,其中存储有处理器可执行的指令,上述处理器可执行的指令在由处理器执行时用于实现前面所述的图神经网络的预训练方法或者分子属性预测模型的训练方法。

另一方面,本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在前面所述的计算机可读存介质中;前面所述的计算机设备的处理器可以从前面所述的计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面所述的图神经网络的预训练方法或者分子属性预测模型的训练方法。

本申请的优点和有益效果将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到:

本申请实施例中提供的图神经网络的预训练方法,通过从图谱中选取若干第一节点,获取第一节点的节点特征数据,即数据类型不同的第一节点特征数据和第二节点特征数据,根据第一节点特征数据和节点之间的边特征数据对第二节点特征数据进行预测,然后根据预测结果对选取的第一节点进行更新,从而根据更新后的第一节点的节点特征数据对图神经网络进行训练。本申请实施例中提供的预训练方法,基于节点级特征的预测任务,根据训练过程中的预测结果对参与图神经网络训练的节点进行优化,使得训练任务能够增强图神经网络在节点周围的信息聚合能力,提高图神经网络的泛化性能,方便后续针对不同的应用任务进行微调,有利于减少计算资源的消耗。

附图说明

为了更清楚地说明本申请实施例或者现有技术中的技术方案,下面对本申请实施例或者现有技术中的相关技术方案附图作以下介绍,应当理解的是,下面介绍中的附图仅仅为了方便清晰表述本申请的技术方案中的部分实施例,对于本领域的技术人员来说,在无需付出创造性劳动的前提下,还可以根据这些附图获取到其他附图。

图1为本申请实施例提供的图神经网络的预训练方法的流程示意图;

图2为本申请实施例中提供的一种图谱数据的示意图;

图3为本申请实施例中提供的一种图神经网络的预训练方法中更新第一节点的原理示意图;

图4为本申请实施例中提供的一种图神经网络的预训练方法中训练一轮图神经网络的原理示意图;

图5为本申请实施例中提供的一种分子属性预测模型的训练方法的流程示意图;

图6为相关技术中机器学习预测模型的训练原理示意图;

图7为本申请实施例中提供的一种预测模型的训练原理示意图;

图8为本申请实施例中提供的一种基于化学分子构建的图谱示意图;

图9为本申请实施例中提供的一种图神经网络的预训练装置的结构示意图;

图10为本申请实施例中提供的一种分子属性预测模型的训练装置的结构示意图;

图11为本申请实施例中提供的一种计算机设备的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。对于以下实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。

在对本申请实施例进行进一步详细说明之前,首先对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。

图谱(Graph):指由许多节点(也可以称为顶点)通过相互之间的连接而组成的一种数据形式,其中的节点可以是人,机构等实体,节点之间的连接(称作边)表示某种关系(如好友关系,从属关系等);一个图谱可以只有一种节点和一种边(称为单一图),也可以有多种节点或多种边(称为异构图),其中图谱中的边可以是有向边(称为有向图)或无向边(称为无向图)。

图神经网络(Graph Neural Networks):基于图谱的机器学习方法,其输入可以定义为图结构数据或者节点特征数据,输出则为针对每个节点或者整个图谱的表征向量。

泛化性能(Generalization ability):指一个机器学习算法对于没有见过的输入样本的识别能力。

源域:迁移学习过程中被迁移知识所在的知识域,存在有大量的通用知识供迁移学习。

目标域:迁移学习过程中被迁移知识所要迁移到的知识域,也即机器学习应用中任务所在的领域。

本申请实施例中所提供的图神经网络的预训练方法可以应用于人工智能技术之中。人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。其中,人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术;人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

具体地,本申请实施例中提供的图神经网络的预训练方法,可以应用在人工智能领域内的各种应用场景中。具体地,例如,在社交网络的应用场景中,需要向用户推荐他/她可能认识的其他用户,可以通过本申请实施例中得到的图神经网络建立针对人际关系的预测模型,然后通过该预测模型预测用户与其他用户之间的人际关系,并给出该用户可能认识的其他用户的相关信息;在医药研究的应用场景中,需要对不同结构的化学分子的属性进行分析,可以通过本申请实施例中得到的图神经网络建立针对分子属性的预测模型,然后通过该预测模型预测分子的化学性质,从而方便药物筛选工作的进行。可以理解的是,以上的应用场景仅起到示例性的作用,并不意味着对本申请实施例中图神经网络的预训练方法的实施形成限制。在这些应用场景中,人工智能系统可以利用该预训练方法训练得到的图神经网络,通过指定的任务场景下少量的训练数据对图神经网络进行微调,即可得到所需的预测模型用于执行指定的任务。基于本申请实施例所提供的预训练方法得到的图神经网络,在这些应用场景下进行几次参数的更新,即可达到较为理想的效果。

本申请实施例中,主要涉及的人工智能技术是机器学习。

机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,算法类型很多。其中,机器学习根据学习方式可以分为:监督式学习、非监督式学习、半监督式学习和强化学习。根据算法的功能可以分为:回归算法、分类算法、聚类算法、降维算法和集成算法等。

随着人工智能技术的发展,神经网络逐步兴起并被运用在了各行各业。传统的机器学习所用到的数据较为常见的是欧氏空间的数据,欧氏空间下,数据最显著的特征就是有着规则的空间结构,比如图片是规则的正方形栅格,语音数据是一维序列,这些数据能够通过一维或二维的矩阵进行表示,数据处理较为简易。并且,以上的这些数据在运用时存在一个典型的特征:数据之间是相互独立的。然而,在实际的部分应用场景中,数据的形式可能是一种不具备规则的空间结构,即存在非欧氏空间下的数据,例如电子交易、推荐系统、社交网络等抽象出来的图谱,图谱中每个节点与其他节点的连接不是规则、固定的,而且各个节点之间可能存在相互关联的信息。图神经网络是一种专门用于处理图谱类型的数据的模型,图神经网络可以对非欧氏空间的数据进行建模,捕获数据之间的内部依赖关系,从而更好地生成针对节点或者图谱的表征向量。

相关技术中,图神经网络虽然在处理图谱类型的数据上能够取得较好的表现,但是图神经网络的训练却是限制其应用的一大因素。例如,如果要训练出一个预测分子属性的图神经网络模型,需要通过大量建模分子的图谱数据,制作分子的属性标签来构造训练的数据集,这种方式很难在各个领域进行推广,一方面是制作采集标签的成本昂贵,有些应用领域标签采集十分困难,得到的数据量十分有限;另一方面,针对不同类型的预测任务,如果从基础开始训练图神经网络耗时很长,可能难以满足实际的应用需求,即使是并行计算也要使用不少的硬件设备,需要花费大量的计算资源,收益较低。

有鉴于此,本申请实施例中提供一种图神经网络的预训练方法,该预训练方法通过从图谱中选取若干第一节点,获取第一节点的节点特征数据,包括第一节点特征数据和第二节点特征数据,根据第一节点特征数据和节点之间的边特征数据对第二节点特征数据进行预测,然后根据预测结果对选取的第一节点进行更新,从而根据更新后的第一节点的节点特征数据对图神经网络进行训练。本申请实施例中提供的预训练方法,基于迁移学习的思想对图神经网络进行预训练,有利于图神经网络在具体应用中能够较快地通过微调使得模型达到理想的效果,提高训练的速度,减少在不同应用领域配置预测模型的训练时间成本和计算资源的消耗;同时,该预训练方法基于节点级特征的预测任务,根据训练过程中的预测结果对参与图神经网络训练的节点进行优化,使得训练任务能够增强图神经网络在节点周围的信息聚合能力,提高图神经网络的泛化性能,有利于使得模型在微调后具有较高的预测精度。

下面结合附图,对本申请实施例的具体实施方式进行说明,首先将描述本申请实施例中的图神经网络的预训练方法。

本申请实施例中提供了一种图神经网络的预训练方法,该方法可应用于终端中,也可应用于服务器中,还可以应用于终端或服务器中的软件,用于实现一部分的软件功能。在一些实施例中,上述的终端可以是智能手机、平板电脑、笔记本电脑或者台式计算机等;服务器可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务以及大数据和人工智能平台等服务的云服务器;软件可以是独立的应用程序或者依赖宿主程序的小程序等,但并不局限于以上形式。图1是本申请实施例中提供的一种图神经网络的预训练方法的一个可选的流程图,图1中的方法包括步骤110至步骤160。

步骤110、获取图谱中各个节点之间的边特征数据;

如前述的,图谱的结构包括节点和节点之间的边,图谱中的数据也相应地分为节点处的数据和边处的数据,本申请实施例中,将节点处的数据记为节点特征数据,将边处的数据记为边特征数据。其中,节点特征数据用于表示节点本身的特征,边特征数据用于表示该条边两侧所连接的节点之间的关系特征,这些特征所表示的含义在不同的图谱中可以是不同的。需要说明的是,本申请实施例中,节点特征数据和边特征数据的数据结构可以包括数值、向量或者矩阵等,数据形式可以包括数值、文字、图形、图像、声音等;具体的数据结构和形式可根据图谱构建过程中的需要灵活设定。本申请实施例中,可以将节点特征数据记为V,边特征数据记为E,则一个图谱(Graph)可以表示为G(V,E)。

例如,对于一个根据人际关系网络构建得到的图谱,图谱中每个节点可以表示一个人,节点之间的边可以表示人与人之间的关系。此时,节点特征数据V可以包括表示对应节点处人的相关信息的数据,例如可以是人的年龄、身高、体重等数据,此时,节点特征数据V可以是数值,例如数值12表示该节点处人的年龄;也可以是根据人的相关信息编码得到的数据,例如可以对人的性别、职业、喜好、学历等特征进行编码,将编码得到的数据作为节点特征数据V,此时,节点特征数据V可以是向量,例如向量(0,1)表示该节点处人的性别是男性,向量(1,0)表示该节点处人的性别是女性。类似地,边特征数据E可以包括表示两个节点间人的关系信息的数据,例如可以对人际关系的类别进行编码,将得到的数据作为边特征数据E。

对于一个根据分子结构构建得到的图谱,图谱中的每个节点可以表示一个原子,节点之间的边可以表示原子之间的化学键。这种情况下,节点特征数据V可以是表示对应节点处原子的相关信息的数据,例如可以包括表示原子的种类、电荷数目、质子数、中子数等的数据,边特征数据E可以是表示化学键的相关信息的数据,例如可以包括表示化学键的种类、价态等的数据。

需要说明的是,本申请中的节点特征数据V和边特征数据E可以包括多种数据类型的数据,此处的数据类型指的是信息类别。例如,以前述根据人际关系网络构建得到的图谱为例,对于该图谱的节点特征数据V,其可以包括由各个节点的人的年龄组成一个数据集,将该数据集记为a1,a1所蕴含的信息是年龄信息;还可以包括由各个节点的人的身高组成的另一个数据集,将该数据集记为a2,a2所蕴含的信息是身高信息。数据集a1和数据集a2中的信息就属于两个不同的信息类别,即a1和a2为两个数据类型的数据,分别用于从年龄维度和身高维度反应各个节点的特征,两者可以共同构成本申请实施例中的节点特征数据V,则节点特征数据V可以表示为V={a1,a2}。类似地,边特征数据E也可以存在多个数据类型的数据,而且,可以理解的是,本申请实施例中数据类型的数量可以是任意大于等于2的整数;且不同数据类型的数据,其数据结构和数据形式均可以存在不同。

步骤120、从节点中选取若干第一节点,并获取第一节点的节点特征数据;节点特征数据包括第一节点特征数据和第二节点特征数据;第一节点特征数据和第二节点特征数据具有的不同数据类型;

本申请实施例中,在对图神经网络进行预训练时,对图神经网络每轮参数更新时参与训练的节点进行挑选,即采用一部分节点的节点特征数据和图谱的边特征数据,对图神经网络生成各个节点的节点表征向量的能力进行训练,预训练任务也即节点级特征的预测任务,将选取的参与训练的节点记为第一节点。如前述的,本申请实施例中,节点的节点特征数据可以有多个不同的数据类型,因而可以按照数据类型的不同将第一节点的节点特征数据分成两组,其中一组节点特征数据用于提供输入信息,记为第一节点特征数据,将第一节点特征数据输入到图神经网络(Graph Neural Networks,GNN),通过图神经网络来预测该节点的其他数据类型的特征,并使用另一组节点特征数据则作为图神经网络需要预测的目标数据类型的特征的标签,将该组节点特征数据记为第二节点特征数据。

具体地,仍以前述根据人际关系网络构建得到的图谱为例,对于该图谱的节点特征数据,包括有用于表示人的年龄的数据集a1和人的身高的数据集a2,可以将数据集a1作为第一节点特征数据,将数据集a2作为第二节点特征数据。当然,可以理解的是,对于具有多个数据类型的节点特征数据来说,其划分得到的第一节点特征数据和第二节点特征数据的数据类型数量可以是任意大于等于1的整数。

参照图2,图2中示出了一种图谱的结构示意图,其中包括了4个节点,分别为A节点211、B节点212、C节点213和D节点214,A节点211和B节点212之间存在第一边221,B节点212和C节点213之间存在第二边222,C节点213和D节点214之间存在第三边223。以图2示出的图谱为例,在一些实施例中,选取参与训练的第一节点时,可以从图谱内的所有节点中随机选取得到指定个数的第一节点,例如可以从A节点211、B节点212、C节点213和D节点214中随机选取三个节点作为第一节点,这种情况下每个节点被选中的概率相同。在一些实施例中,还可以预先设置针对各个节点对应的选取概率,记为第一选取概率,通过第一选取概率从节点中批量选择指定个数的第一节点,这种情况下,当从全部节点中选取部分节点作为第一节点时,每个节点对应的第一选取概率越高,则其被选中作为第一节点的可能性就越大,反之,节点对应的第一选取概率越低,则其被选中作为第一节点的可能性就越小。例如,针对A节点211、B节点212、C节点213和D节点214四个节点,可以设置它们对应第一选取概率依次为0.3、0.4、0.2和0.1,则此时若从中选取三个节点作为第一节点,最有可能被选中的情况为A节点211、B节点212、C节点213是第一节点,D节点214不是第一节点。

需要说明的是,为了方便描述,本申请实施例中上述的第一选取概率的具体数值是针对在全部节点中选取一个第一节点的情况设置的,并不代表该节点被选中作为第一节点的实际概率。例如,即使D节点214对应的第一选取概率为0.1,但如果选取四个节点作为第一节点,那么A节点211、B节点212、C节点213和D节点214四个节点均必定会被选到作为第一节点,D节点214实际被选中作为第一节点的概率为100%。并且,实际应用时,各个节点对应的第一选取概率可以根据需要灵活设置、调整,可以并不固定为具体的数值。

步骤130、将第一节点特征数据和边特征数据输入到图神经网络,得到图神经网络输出的第一节点表征向量;

本申请实施例中,选取得到第一节点后,将第一节点的第一节点特征数据和边的边特征数据输入到图神经网络中进行预测,图神经网络可以根据边特征数据和第一节点的部分节点特征数据,即第一节点特征数据,自发地聚合第一节点周围的信息,从而得到第一节点的特征在高维空间的向量表示,将该向量记为第一节点表征向量。该过程可以表示为:

式中,表示第一节点表征向量,GNN(,)表示图神经网络,E表示边特征数据,X表示第一节点特征数据。

在实际训练过程中,第一节点表征向量预测的目标特征可以通过特征工程设置为第二节点特征数据的数据类型,从而使得图神经网络可以方便地根据第二节点特征数据判断第一节点表征向量的预测精度。举例来说,例如第一节点特征数据包括两个数据类型,分别为人的体重数据和身高数据,第二节点特征数据包括一个数据类型,表示人的性别的数据。这种情况下,可以通过特征工程将第一节点表征向量设置为用于表示人的性别信息。通过比较第一节点表征向量和第二节点特征数据所蕴含的信息是否一致,便可以确定图神经网络的预测精度。

步骤140、根据第二节点特征数据和第一节点表征向量,确定图神经网络对各个第一节点预测的第一损失值;

本申请实施例中,在图神经网络基于第一节点特征数据预测得到第一节点表征向量后,可以根据第二节点特征数据来判断第一节点表征向量的预测精度。具体地,由于第一节点表征向量是第一节点的特征在高维空间的向量表示,在一些实施例中,还需要通过后续的分类模型或者回归模型对第一节点表征向量做进一步的处理,以得到关于第一节点表征向量所蕴含的数值信息或者类别信息,方便于第二节点特征数据进行比对。因此,本申请实施例中,在确定图神经网络对各个第一节点预测的精度时,可以将第一节点表征向量输入到一个简单的神经网络中,将该神经网络记为第一神经网络,第一神经网络的作用是将第一节点表征向量转换为与第二节点特征数据的数据类型对应的输出。

例如,如果第一节点表征向量被设置为用于表示人的性别信息,则将第一节点表征向量输出到第一神经网络后,第一神经网络输出关于性别分类的结果数据。在一些实施例中,第一神经网络输出的可以是数值,例如当第一神经网络输出0时,表示第一神经网络处理第一节点表征向量后得到的结果是该第一节点的性别为男性;当第一神经网络输出1时,表示第一神经网络处理第一节点表征向量后得到的结果是该第一节点的性别为女性。本申请实施例中,将第一神经网络预测的输出数据记为第三节点特征数据。因此,得到第三节点特征数据的处理过程可以表示为:

式中,表示第三节点特征数据,f()表示第一神经网络,表示第一节点表征向量。

基于上述的描述,可以理解的是,本申请实施例中可以通过第三节点特征数据和第二节点特征数据的一致性来具体确定图神经网络生成的第一节点表征向量的精确程度。而第三节点特征数据和第二节点特征数据的一致性可以通过损失值的大小来衡量,本申请实施例中,将第三节点特征数据和第二节点特征数据之间的损失值记为第一损失值。

在机器学习领域,损失值可以通过损失函数(Loss Function)求得。损失函数是定义在单个训练数据上的,对于本申请实施例来说,每个第一节点均会对应一个第一损失值,用于衡量图神经网络对该第一节点的第一节点表征向量的预测误差。常用的损失函数种类有很多,例如0-1损失函数、平方损失函数、交叉熵损失函数、绝对损失函数、对数损失函数等均可以作为本申请实施例中的损失函数,在此不再一一阐述。本申请实施例中,可以从中任选一种损失函数来确定第一损失值。以采用0-1损失函数来确定第一损失值为例,此时,当第三节点特征数据和第二节点特征数据的结果一致时,第一损失值为0;当第三节点特征数据和第二节点特征数据的结果不一致时,第一损失值为1。本申请实施例中,也可以采用交叉熵损失函数确定第一损失值,此时第一损失值可以表示为:

式中,loss表示第一损失值,CrossEntropy(,)表示交叉熵损失函数,表示第二节点特征数据,表示第三节点特征数据。

步骤150、根据第一损失值,对第一节点进行更新;

本申请实施例中,根据第一损失值的大小对参与图神经网络预训练的第一节点进行更新,根据第一损失值的情况,可以有效筛选出图神经网络预测效果更差的一些第一节点。第一节点对应的损失值越大,说明图神经网络在该节点周围聚合相关信息的能力越弱,因此可以选择删除该第一节点,使得图神经网络无法获取该节点本身的部分特征,然后再对图神经网络进行训练,以增强图神经网络在该节点周围的信息聚合能力,提高图神经网络的泛化性能。本申请实施例中,筛选需要删除的第一节点时,可以按照各个第一节点对应的第一损失值的大小进行排序,然后删除其中的第一损失值较大的若干个第一节点。具体地,例如可以按照第一损失值的大小,从大到小进行排序,然后删除其中排名靠前的若干个第一节点;类似地,也可以从小到大进行排序,然后删除其中排名靠后的若干个第一节点。

举例而言,假设针对图2的图谱,选取了A节点211、B节点212和C节点213为第一节点,而A节点211对应的第一损失值的大小为5,B节点212对应的第一损失值的大小为1,C节点213对应的第一损失值的大小为14,若需要在三个第一节点中删除一个,在一些实施例中,由于C节点213对应的第一损失值最大,可以直接选择将C节点213删除。

而在另一些实施例中,筛选需要删除的第一节点时,还可以根据各个第一节点对应的第一损失值确定它们被筛选掉的概率,将第一节点被删除的概率记为第二选取概率,第二选取概率可以通过将第一节点对应的第一损失值进行归一化来得到。仍以前述的A节点211对应的第一损失值的大小为5,B节点212对应的第一损失值的大小为1,C节点213对应的第一损失值的大小为14为例进行说明。此时,对三个第一节点对应的第一损失值进行归一化后,得到A节点211对应的第二选取概率的大小为0.25,B节点212对应的第二选取概率的大小为0.05,C节点213对应的第二选取概率的大小为0.7。后续可以根据第二选取概率的数值,从第一节点中选取出需要删除的节点,从而完成一次第一节点的更新。

需要说明的是,本申请实施例中的删除指的是不再将该节点作为第一节点,即将该节点作为普通节点,不采用该节点的节点特征数据参与本轮的图神经网络训练。在实际实施过程中,对第一节点进行更新时,每次删除的第一节点的个数可以是任意大于等于1的整数。

参照图3,在一些实施例中,筛选第一节点的过程可以采用循环的方式进行。即可以通过多次循环执行上述的步骤130、步骤140和步骤150对第一节点进行迭代挑选,在初始选择完第一节点后,每轮次迭代时批量地筛选掉一部分第一节点,然后当迭代轮次达到预设次数时终止筛选,将终止时得到的第一节点的节点特征数据作为参与更新图神经网络的参数的训练数据。举例来说,例如某个图谱中含有100个节点,在初始化时,可以将全部节点作为第一节点,然后通过图神经网络对各个第一节点进行预测,确定预测的第一损失值,然后根据第一损失值对第一节点进行筛选,例如筛选掉其中损失值的大小最大的两个节点,在第一轮迭代筛选后,剩余98个第一节点。然后通过图神经网络对这98个节点再次预测、筛选,直至迭代的轮次达到预设次数。若预设次数为10轮,则在第10轮筛选结束后,共得到80个第一节点。应当理解的是,本申请实施例中筛选第一节点的迭代轮次,即预设次数,以及每轮迭代筛选时删除的第一节点个数,是可以根据具体的需要灵活调整的,并不固定为上述具体实施例示出的情形。

步骤160、根据更新后的第一节点的节点特征数据,对图神经网络进行训练。

本申请实施例中,在确定好更新后的第一节点以后,可以根据更新后的第一节点的第一特征数据和第二特征数据来评估图神经网络预测结果的准确性,以通过反向传播算法对图神经网络的参数进行更新。

具体地,在对图神经网络进行参数更新时,需要确定图神经网络预测当前的第一节点的特征的准确性。该过程和前述的步骤130和步骤140比较类似,即需要确定图神经网络对当前的第一节点预测的损失值,将该损失值记为第二损失值。

在确定第二损失值时,首先将更新后的第一节点的第一节点特征数据和图谱的边特征数据输入到图神经网络,得到图神经网络输出的针对更新后的第一节点的特征在高维空间的向量表示,将这些向量记为第二节点表征向量。然后可以将第二节点表征向量输入到前面的第一神经网络,使得第一神经网络将第二节点表征向量转换为与更新后的第一节点的第二节点特征数据类型对应的数据输出,将第一神经网络针对第二节点表征向量的输出数据记为第四节点特征数据。本申请实施例中,基于第四节点特征数据和更新后的第一节点的第二节点特征数据的一致性,可以确定图神经网络生成的第二节点表征向量的准确程度,也即可以根据第四节点特征数据和更新后的第一节点的第二节点特征数据,确定得到第二损失值。

对于图神经网络来说,其模型预测单个第一节点特征的准确性,可以通过损失函数求得第二损失值来衡量,损失函数是定义在单个节点的节点特征数据上的,用于衡量一个训练数据的预测误差。而实际训练时,一个图谱中有很多节点,因此一般可以采用代价函数(Cost Function)来衡量训练过程的整体误差,代价函数是定义在整个训练数据集上的,用于计算所有训练数据的预测误差的平均值,能够更好地衡量出模型的预测效果。对于本申请实施例中的图神经网络,其可以求取各个更新后的第一节点对应的第二损失值的均值,作为代价函数的结果,然后根据该结果通过反向传播算法更新一次模型的参数。

下面结合具体的实施例,对本申请实施例中的图神经网络的预训练过程进行详细说明。

参照图4,本申请实施例中的图神经网络的预训练,包括两个迭代循环的过程,一个是第一节点选取过程41,一个是图神经网络参数更新过程42。对于第一节点选取过程41来说,也可以视为选取不属于第一节点的过程,即每轮迭代时选取几个需要从第一节点中删除的节点。假设图谱中一种有N个节点,一共进行K轮的迭代,每轮删除n个节点。则可以构造一个概率向量 中的每一个元素表示每个节点在本轮被选中删除的概率。初始化时,中的各个元素数值可以相同,且所有元素的和为1,即每个节点被删去的概率相等,均为1/N。在第一轮选取时,根据概率向量选取n个需要被删除的节点,并计算删除掉这些节点后的第一神经网络的输出,即第三节点特征数据:然后计算第三节点特征数据和第二节点特征数据的交叉熵,将各个节点对应交叉熵的数值进行归一化,得到的数值即为下一轮该节点被删除的概率,从而完成概率向量的一轮更新(已被选取的节点的概率则设为0)。类似地,后续每轮的迭代过程中,根据各个节点处图神经网络预测的损失值更新其被选取的概率。当迭代轮次达到K轮时,认为第一节点更新完毕,进入图神经网络参数更新过程42。图神经网络每轮的参数更新过程前述已经说明,在此不再赘述。

需要说明的是,对于图神经网络的训练来说,可能需要通过多轮的参数更新才能达到较为理想的效果。本申请实施例中的步骤110至步骤160,对图神经网络预训练的一轮的参数更新过程进行了详细描述,实际在训练过程中,当筛选到一轮第一节点,即得到更新后的第一节点时,可以根据该部分的第一节点,完成对模型参数的多轮迭代更新;也可以在每轮模型参数更新完成后,都重新按照步骤110至步骤160挑选第一节点,以完成一轮图神经网络的训练。在一些实施例中,图神经网络训练是否完成,可以根据图神经网络的模型参数的更新轮次来确定,当达到训练的迭代轮次时,则可以认为图神经网络的训练完成;在一些实施例中,也可以根据图神经网络的预测精度来确定图神经网络训练是否完成,当某轮训练结束后,经过测试数据集验证图神经网络的预测精度达到预定阈值,则可以认为图神经网络的训练完成。并且,本申请实施例在实际的训练过程中,也可以同步对第一神经网络进行参数更新,将图神经网络和第一神经网络作为一个整体来训练,以提高图神经网络预测输出的准确性。

参照图5,本申请实施例中,还提供一种分子属性预测模型的训练方法,类似地,该方法同样可应用于终端中,也可应用于服务器中,还可以应用于终端或服务器中的软件,用于实现一部分的软件功能。图5是本申请实施例中提供的一种分子属性预测模型的训练方法的一个可选的流程图,图5中的方法包括步骤510至步骤540。

步骤510、获取分子的属性标签、分子中各个原子的原子特征数据和原子之间的化学键数据;

步骤520、将原子特征数据和化学键数据输入到如图1所示的方法预训练得到的图神经网络,得到图神经网络输出的分子表征向量;

步骤530、根据属性标签和分子表征向量,确定图神经网络预测的第三损失值;

步骤540、根据第三损失值,对图神经网络的参数进行更新,得到训练好的分子属性预测模型。

本申请实施例中,如图1所示的预训练方法训练得到的图神经网络,可以被应用在具体任务中。在人工智能技术领域,预训练可以较好地解决训练数据标签不足的问题,其本质属于一种迁移学习的策略。参照图6和图7,图6示出了传统的机器学习模型的训练过程,该训练过程需要大量带标签的样本数据支持,并且针对每个目标域任务,都要从初始化开始训练对应的预测模型;图7中示出了本申请实施例中提供的训练方法的训练过程,即采用迁移学习的策略,通过源域的数据集预训练得到一个通用的图神经网络,然后针对具体的应用场景,即目标域任务,通过少量目标域的数据集对预训练得到的图神经网络进行微调,从而得到可以用于目标域任务的预测模型。

具体地,迁移学习就是从其他的源域任务中迁移相关的任务处理经验,生成针对的目标任务的预测模型。此处,源域指的是已积累有大量的经验知识,可供其他任务学习的知识域;目标域指的是可能只含有少量经验知识,需要从源域进行迁移学习的知识域。举例而言,假设现有的图像数据有猫和老虎,其中猫的图像数据中带有大量猫的种类标签,预测模型可以基于这些带标签的猫的图像数据,在监督学习中有效掌握猫的分类任务,而当前的目标任务是对老虎的种类进行分类,现有的老虎的图像数据中只有少量带有老虎的种类标签,难以进行有效的监督学习。迁移学习可以通过迁移一个预测模型在训练猫类的分类任务所掌握的部分知识,用于虎类的分类任务的模型训练。在这种情况下,猫的图像数据就相当于源域的训练数据,老虎的图像数据就相当于目标域的训练数据。迁移学习利用不同问题之间的关联性,将一个或者多个源域的知识迁移到目标域,共享不同任务之间学习到的信息,以提高模型训练的泛化性能。其本质是将传统机器学习的单任务学习转换为多任务学习的方式,通过寻找新问题和已有问题的相似性,并利用相似性将已有问题所积累的经验知识迁移到新问题中。对于本申请实施例中的训练方法来说,可以从图谱数据较丰富的领域中确定源域,从而获取大量简单易得的带标签数据,减少图神经网络的预训练成本,而且训练好的图神经网络可以用于实现多个不同任务的预测模型,使得各个预测模型不必从初始化开始训练,大大节省模型的训练耗时和计算资源的消耗。

对于本申请实施例中分子属性预测的应用场景而言,其所依赖的图神经网络可以是任意源域训练得来的。对于分子属性的预测任务,可以根据需要预测的分子的结构构建图谱。参照图8,图8示出了一种根据尼古丁分子构建图谱的示意图,尼古丁分子的化学表达式为C10H4N2,可以将化学分子中的原子作为图谱上的节点;原子之间的化学键作为图谱上的边;将原子的相关属性,例如电荷数目,质子数,中子数等建模成这个原子所在节点的节点特征数据,将原子之间的化学键属性,例如化学键种类,化学键价态等建模成边的边特征数据。这样就可以把化学分子建模成一个图谱。基于这个图谱中的数据,可以通过图神经网络预测生成该分子在高维空间的向量表示,将该向量记为分子表征向量。此处,在生成分子表征向量时可以先生成其中各个原子的表征向量,然后再通过一个Aggregation(聚集)层对所有原子的表征向量进行聚合,从而得到该分子的分子表征向量。具体地,获取分子表征向量的过程可以表示为:式中,g表示分子表征向量,表示原子表征向量的转置。此处,也可以采用其他方式对各个原子的表征向量进行拼接,例如最大池化、自注意力机制等。

本申请实施例中,在对图神经网络进行微调以得到分子属性预测模型时,首先将分子中各个原子的原子特征数据和原子之间的化学键数据输入到图神经网络中,得到图神经网络输出的分子表征向量。然后可以将分子表征向量输入到一个简单的神经网络中,将该神经网络记为第二神经网络,第二神经网络的作用是将分子表征向量映射到具体的属性类别,从而得到属性预测结果。例如,第二神经网络可以是一个多层感知分类器(MLP),则此时属性预测结果可以通过该分类器得到,该过程可以表示为:oi=MLP(gi),式中,oi表示第i个分子的属性预测结果,gi表示第i个分子的分子表征向量,MLP()表示多层感知分类器。

本申请实施例中,基于属性预测结果和分子的属性标签,可以确定得到分子属性预测模型的预测的损失值,记为第三损失值,第三损失值的计算方式和前述第一损失值的计算方式类似,同样可以采用交叉熵损失函数来确定,具体可以表示为:

loss(yi,oi)=CrossEntropy(yi,oi);

式中,loss(yi,oi)表示第i个分子对应的第三损失值,CrossEntropy(,)表示交叉熵损失函数,yi表示第i个分子的属性标签,oi表示第i个分子的属性预测结果。根据第三损失值对分子属性模型进行简单的几轮迭代训练,即可得到训练好的分子属性预测模型。具体的训练过程和前述图神经网络的训练过程类似,在此不再赘述。

参照图9,本申请实施例还公开了一种图神经网络的预训练装置,包括:

第一获取模块910,用于获取图谱中各个节点之间的边特征数据;

选取模块920,用于从节点中选取若干第一节点,并获取第一节点的节点特征数据;节点特征数据包括第一节点特征数据和第二节点特征数据;第一节点特征数据和第二节点特征数据具有的不同数据类型;

第一预测模块930,用于将第一节点特征数据和边特征数据输入到图神经网络,得到图神经网络输出的第一节点表征向量;

第一处理模块940,用于根据第二节点特征数据和第一节点表征向量,确定图神经网络对各个第一节点预测的第一损失值;

第一更新模块950,用于根据第一损失值,对第一节点进行更新;

第一训练模块960,用于根据更新后的第一节点的节点特征数据,对图神经网络进行训练。

可选地,在一些实施例中,选取模块920包括:

第一选取子模块,用于从节点中随机选取得到若干第一节点。

可选地,在一些实施例中,选取模块包括:

概率获取子模块,用于获取预设的各个节点对应的第一选取概率;

第二选取子模块,用于根据第一选取概率,对节点进行选取,得到若干第一节点。

可选地,在一些实施例中,第一处理模块940包括:

第一输入子模块,用于将第一节点表征向量输入到第一神经网络中,得到第一神经网络输出的第三节点特征数据;

第一损失值确定子模块,用于根据第二节点特征数据和第三节点特征数据,确定各个第一节点对应的第一损失值。

可选地,在一些实施例中,第一更新模块950包括:

排序子模块,用于根据第一损失值的大小对第一损失值进行排序;

删除子模块,用于删除第一损失值最大的预设个数的第一节点,得到更新后的第一节点。

可选地,在一些实施例中,第一更新模块950包括:

归一化子模块,用于对各个第一节点对应的第一损失值进行归一化,得到各个第一节点对应的第二选取概率;

第三选取子模块,用于根据第二选取概率,对第一节点进行更新,得到更新后的第一节点。

可选地,在一些实施例中,第一训练模块960包括:

预测子模块,用于将边特征数据和更新后的第一节点的第一节点特征数据输入到图神经网络,得到图神经网络输出的第二节点表征向量;

处理子模块,用于根据更新后的第一节点的第二节点特征数据和第二节点表征向量,确定图神经网络对各个第一节点预测的第二损失值;

更新子模块,用于根据第二损失值,对图神经网络的参数进行更新。

可选地,在一些实施例中,处理子模块包括:

第二输入子模块,用于将第二节点表征向量输入到第一神经网络中,得到第一神经网络输出的第四节点特征数据;

第二损失值确定子模块,用于根据第四节点特征数据和更新后的第一节点的第二节点特征数据,确定各个第一节点对应的第二损失值。

可选地,在一些实施例中,第一训练模块960包括:

节点更新子模块,用于根据更新后的第一节点的节点特征数据,对第一节点进行迭代更新;

网络训练子模块,用于当第一节点的迭代更新轮次达到预设次数,根据当前的第一节点的节点特征数据对图神经网络进行训练。

可以理解的是,图1所示的图神经网络的预训练方法实施例中的内容均适用于本装置实施例中,本装置实施例所具体实现的功能与图1所示的图神经网络的预训练方法实施例相同,并且达到的有益效果与图1所示的图神经网络的预训练方法实施例所达到的有益效果也相同。

参照图10,本申请实施例还公开了一种分子属性预测模型的训练装置,包括:

第二获取模块1010,用于获取分子的属性标签、分子中各个原子的原子特征数据和原子之间的化学键数据;

第二预测模块1020,用于将原子特征数据和化学键数据输入到如图1所示的方法预训练得到的图神经网络,得到图神经网络输出的分子表征向量;

第二处理模块1030,用于根据属性标签和分子表征向量,确定图神经网络预测的第三损失值;

第二训练模块1040,用于根据第三损失值,对图神经网络的参数进行更新,得到训练好的分子属性预测模型。

可选地,在一些实施例中,第二处理模块1030包括:

第三输入子模块,用于将分子表征向量输入到第二神经网络中,得到第二神经网络输出的属性预测结果;

第三损失值确定子模块,用于根据属性标签和属性预测结果,确定第三损失值。

可以理解的是,图5所示的分子属性预测模型的训练方法实施例中的内容均适用于本装置实施例中,本装置实施例所具体实现的功能与图5所示的分子属性预测模型的训练方法实施例相同,并且达到的有益效果与图5所示的分子属性预测模型的训练方法实施例所达到的有益效果也相同。

参照图11,本申请实施例还公开了一种计算机设备,包括:

至少一个处理器1110;

至少一个存储器1120,用于存储至少一个程序;

当至少一个程序被至少一个处理器1110执行,使得至少一个处理器1110实现如图1所示的图神经网络的预训练方法实施例或者图5所示的分子属性预测模型的训练方法实施例。

可以理解的是,图1所示的图神经网络的预训练方法实施例或者图5所示的分子属性预测模型的训练方法实施例中的内容均适用于本计算机设备实施例中,本计算机设备实施例所具体实现的功能与图1所示的图神经网络的预训练方法实施例或者图5所示的分子属性预测模型的训练方法实施例相同,并且达到的有益效果与图1所示的图神经网络的预训练方法实施例或者图5所示的分子属性预测模型的训练方法实施例所达到的有益效果也相同。

本申请实施例还公开了一种计算机可读存储介质,其中存储有处理器可执行的程序,处理器可执行的程序在由处理器执行时用于实现如图1所示的图神经网络的预训练方法实施例或者图5所示的分子属性预测模型的训练方法实施例。

可以理解的是,图1所示的图神经网络的预训练方法实施例或者图5所示的分子属性预测模型的训练方法实施例的内容均适用于本计算机可读存储介质实施例中,本计算机可读存储介质实施例所具体实现的功能与图1所示的图神经网络的预训练方法实施例或者图5所示的分子属性预测模型的训练方法实施例相同,并且达到的有益效果与图1所示的图神经网络的预训练方法实施例或者图5所示的分子属性预测模型的训练方法实施例所达到的有益效果也相同。

本申请实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在上述的计算机可读存介质中;图11所示的计算机设备的处理器可以从上述的计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行图1所示的图神经网络的预训练方法或者图5所示的分子属性预测模型的训练方法。

可以理解的是,图1所示的图神经网络的预训练方法实施例或者图5所示的分子属性预测模型的训练方法实施例的内容均适用于本计算机程序产品或计算机程序实施例中,本计算机程序产品或计算机程序实施例所具体实现的功能与图1所示的图神经网络的预训练方法实施例或者图5所示的分子属性预测模型的训练方法实施例相同,并且达到的有益效果与图1所示的图神经网络的预训练方法实施例或者图5所示的分子属性预测模型的训练方法实施例所达到的有益效果也相同。

在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。

此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。

功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。

计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

在本说明书的上述描述中,参考术语“一个实施方式/实施例”、“另一实施方式/实施例”或“某些实施方式/实施例”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。

尽管已经示出和描述了本发明的实施方式,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。

以上是对本发明的较佳实施进行了具体说明,但本发明并不限于实施例,熟悉本领域的技术人员在不违背本发明精神的前提下可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

27页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于意见演化的图嵌入方法及系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!