异构图之中节点表示的生成方法、装置和电子设备与流程

文档序号:20705375发布日期:2020-05-12 16:20阅读:376来源:国知局
异构图之中节点表示的生成方法、装置和电子设备与流程

本申请涉及互联网和机器学习技术领域,尤其涉及一种异构图之中节点表示的生成方法、装置和电子设备。



背景技术:

现实世界中的大量问题都可以抽象成图模型,即节点和连边的集合,比如,在社交平台中每个用户与其他用户之间的关系可以抽象成图模型。图模型中的每个节点可以表示成向量形式,这种表示形式可以应用于多种下游任务,比如,节点分类、链路预测、社区发现等。

目前,在异构图节点表示学习中,通过元路径采样得到不同的游走序列,将游走序列当作句子序列通过word2vec等训练方法,对游走序列进行训练得到图节点的表示。这种方式在元路径采样后将异构图当作同构图进行训练,会丢失异构图的结构信息,导致最终生成的节点表示不够准确。



技术实现要素:

本申请提出了一种异构图之中节点表示的生成方法、装置和电子设备,用于解决现有技术中采用元路径采样方式将异构图当成同构图进行训练,导致异构图的结构信息丢失,生成的节点表示准确性较差的技术问题。

本申请第一方面实施例提出了一种异构图之中节点表示的生成方法,包括:

获取异构图,其中,所述异构图包括多个类型的节点;以及

将所述异构图输入异构图学习模型以生成所述异构图之中各个节点的节点表示,其中,所述异构图学习模型通过以下步骤生成所述各个节点的节点表示:

将所述异构图拆分为多个子图,其中,每个子图包括两种类型的节点和所述两种类型的节点之间的一种边类型;以及

根据所述多个子图生成每个所述节点的节点表示。

本申请实施例的异构图之中节点表示的生成方法,通过获取异构图,将异构图输入异构图学习模型以生成异构图之中各个节点的节点表示,其中,将异构图拆分为多个子图,每个子图包括两种类型的节点和两种类型的节点之间的一种边类型,根据多个子图生成每个节点的节点表示。由此,通过根据节点类型和边类型将异构图拆分为多个子图,根据多个子图生成每个节点的节点表示,能够获得不同边类型下图的结构信息,保证了异构图的结构信息不被丢失,保证了异构图中节点的信息的完整性,从而提高了节点表示的准确性。

在本申请实施例一种可能的实现方式中,所述根据所述多个子图生成每个所述节点的节点表示,包括:

获取第i个所述节点分别在所述多个子图之中的m个第一节点表示,i和m为正整数;以及

将所述m个第一节点表示进行聚合以生成所述第i个所述节点的节点表示。

由此,通过获取第i个节点分别在多个子图之中的m个第一节点表示,将m个第一节点表示进行聚合以生成第i个节点的节点表示,实现了将同一节点在不同边类型下的第一节点表示融合在一起,实现了节点在不同边类型下的节点表示,保证了结构信息的完整性。

在本申请实施例一种可能的实现方式中,所述获取第i个所述节点分别在所述多个子图之中的m个第一节点表示,包括:

获取所述第i个节点所在的m个子图;

获取所述第i个节点在所述第j个子图之中的相邻节点,其中,j为小于或等于m的正整数;以及

获取所述相邻节点的特征以生成所述第i个节点在所述第j个子图之中的第一节点表示,依次计算所述第i个节点在所述m个子图之中其他子图的第一节点表示。

由此,通过获取第i个节点所在的m个子图,获取第i个节点在第j个子图之中的相邻节点,进而获取相邻节点的特征以生成第i个节点在第j个子图之中的第一节点表示,并依次计算第i个节点在m个子图之中其他子图的第一节点表示,从而实现了利用消息传递更新节点的表示,能够在不构建整个邻接矩阵的情况下获得每个子图中节点的表示,获得节点在不同边类型下的节点表示,为保证结构信息的完整性提供了条件,并且能够减少存储邻接矩阵所需的存储空间,节省了存储成本。

在本申请实施例一种可能的实现方式中,所述异构图学习模型,通过以下步骤生成:

获取样本异构图,其中,所述样本异构图包括多个类型的节点;

获取所述样本异构图的训练数据;

将所述样本异构图拆分为多个样本子图,其中,每个样本子图包括两种类型的节点和所述两种类型的节点之间的一种边类型;

分别计算所述多个样本子图之中每个节点的节点表示;

根据所述每个节点的节点表示和所述训练数据对所述异构图学习模型的参数进行训练。

由此,通过获取样本异构图和样本异构图的训练数据,将样本异构图拆分为多个样本子图,每个样本子图包括两种类型的节点和两种类型的节点之间的一种边类型,分别计算多个样本子图之中每个节点的节点表示,进而根据每个节点的节点表示和训练数据对异构图学习模型的参数进行训练,实现了将样本异构图按照边类型和节点类型分为多个样本子图分别进行消息聚合的训练,能够获得不同边类型下图的结构信息,保证了结构信息的完整性,更加有利于下游任务的实现,并且,采用消息传递模式进行节点表示,能够在不构建整个邻接矩阵的情况下完成节点表示,减少了存储邻接矩阵所需的存储空间。

在本申请实施例一种可能的实现方式中,通过skipgram算法根据所述每个节点的节点表示和所述训练数据对所述异构图学习模型的参数进行训练。

由此,通过采用skipgram算法这种无监督学习技术,使得模型所需记忆的内容较少,有利于简化训练过程。

本申请第二方面实施例提出了一种异构图之中节点表示的生成装置,包括:

获取模块,用于获取异构图,其中,所述异构图包括多个类型的节点;

生成模块,用于将所述异构图输入异构图学习模型以生成所述异构图之中各个节点的节点表示,其中,所述异构图学习模型通过以下步骤生成所述各个节点的节点表示:

将所述异构图拆分为多个子图,其中,每个子图包括两种类型的节点和所述两种类型的节点之间的一种边类型;以及

根据所述多个子图生成每个所述节点的节点表示。

本申请实施例的异构图之中节点表示的生成装置,通过获取异构图,将异构图输入异构图学习模型以生成异构图之中各个节点的节点表示,其中,将异构图拆分为多个子图,每个子图包括两种类型的节点和两种类型的节点之间的一种边类型,根据多个子图生成每个节点的节点表示。由此,通过根据节点类型和边类型将异构图拆分为多个子图,根据多个子图生成每个节点的节点表示,能够获得不同边类型下图的结构信息,保证了异构图的结构信息不被丢失,保证了异构图中节点的信息的完整性,从而提高了节点表示的准确性。

在本申请实施例一种可能的实现方式中,所述装置还包括:模型训练模块,用于:

获取样本异构图,其中,所述样本异构图包括多个类型的节点;

获取所述样本异构图的训练数据;

将所述样本异构图拆分为多个样本子图,其中,每个样本子图包括两种类型的节点和所述两种类型的节点之间的一种边类型;

分别计算所述多个样本子图之中每个节点的节点表示;

根据所述每个节点的节点表示和所述训练数据对所述异构图学习模型的参数进行训练。

在本申请实施例一种可能的实现方式中,所述模型训练模块,具体用于:

通过skipgram算法根据所述每个节点的节点表示和所述训练数据对所述异构图学习模型的参数进行训练。

本申请第三方面实施例提出了一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述第一方面实施例所述的异构图之中节点表示的生成方法。

本申请第四方面实施例提出了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行前述第一方面实施例所述的异构图之中节点表示的生成方法。

上述申请中的一个实施例具有如下优点或有益效果:

获取异构图,将异构图输入异构图学习模型以生成异构图之中各个节点的节点表示,其中,将异构图拆分为多个子图,每个子图包括两种类型的节点和两种类型的节点之间的一种边类型,根据多个子图生成每个节点的节点表示。由此,通过根据节点类型和边类型将异构图拆分为多个子图,根据多个子图生成每个节点的节点表示,能够获得不同边类型下图的结构信息,保证了异构图的结构信息不被丢失,保证了异构图中节点的信息的完整性,从而提高了节点表示的准确性。因为采用根据节点类型和边类型将异构图拆分为多个子图,根据多个子图生成每个节点的节点表示的技术手段,使得每种边类型的节点对应的特征信息均被保留,从而保证了异构图的结构信息不被丢失,保证了异构图中节点的信息的完整性,从而提高了节点表示的准确性,所以克服了现有技术中采用元路径采样方式将异构图当成同构图进行训练,导致异构图的结构信息丢失,生成的节点表示准确性较差的技术问题。

上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。

附图说明

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

图1是根据本申请第一实施例的异构图之中节点表示的生成方法的流程示意图;

图2是根据边类型和节点类型将异构图拆分为多个子图的示例图;

图3是消息传递过程的示例图;

图4是不同子图中的相同节点进行融合的示例图;

图5是根据本申请第二实施例的异构图之中节点表示的生成方法的流程示意图;

图6是根据本申请第三方面实施例的异构图之中节点表示的生成方法的流程示意图;

图7是根据本申请第四实施例的异构图之中节点表示的生成装置的结构示意图;

图8是根据本申请第五实施例的异构图之中节点表示的生成装置的结构示意图;

图9是用来实现本申请实施例的异构图之中节点表示的生成方法的电子设备的框图。

具体实施方式

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

下面参考附图描述本申请的异构图之中节点表示的生成方法、装置和电子设备。

现实世界中的大量问题都可以抽象成图模型,即节点和连边的集合,从知识图谱到概率图模型,从蛋白质相互作用网络到社交网络,从基本的逻辑线路到巨大的internet,图与网络无处不在。

在现实世界中存在大量的异构图,这些异构图有着多种节点类型和边的类型。目前,对于在异构图节点表示学习中,主流的方法是通过元路径采样得到不同的游走序列,将游走序列当作句子序列通过word2vec等训练方法,对游走序列进行训练得到图节点的表示。这种方式在元路径采样后将异构图当作同构图进行训练,会丢失异构图的结构信息,导致最终生成的节点表示不够准确。

此外,还有一些学习方法,虽然考虑了节点的类型不同,在异构图表示学习中将节点类型进行区分,但在计算相邻节点的信息传递时,需要针对异构图构建整个邻接矩阵,当异构图中的节点数量很多时,构建的邻接矩阵会占用很大的存储空间,使得计算和存储整个邻接矩阵的成本很大。

针对上述问题,本申请提出了一种异构图之中节点表示的生成方法,通过将异构图按照节点类型和边类型拆分为多个子图,针对每个子图进行消息聚合的训练,能够获得不同边类型下图的结构信息,保证了结构信息的完整性,提高了节点表示的准确性,更加有利于下游任务的实现,并且,采用消息传递模式进行节点表示,能够在不构建整个邻接矩阵的情况下完成节点表示,减少了存储邻接矩阵所需的存储空间,降低了计算和存储邻接矩阵的成本。

具体而言,图1是根据本申请第一实施例的异构图之中节点表示的生成方法的流程示意图,该方法可以由本申请提出的异构图之中节点表示的生成装置执行,也可以由电子设备执行,其中,电子设备可以是服务器,也可以是台式电脑、笔记本电脑等终端设备,本申请对此不作限制。下面以本申请提出的异构图之中节点表示的生成装置执行本申请的异构图之中节点表示的生成方法作为示例来解释说明本申请。

如图1所示,该异构图之中节点表示的生成方法,包括以下步骤:

步骤101,获取异构图,其中,异构图包括多个类型的节点。

其中,异构图可以根据下游任务需求进行选择。

比如,下游任务是对网络平台的用户进行社区推荐,则异构图可以是根据该网络平台上所有用户的社交行为、各个用户之间的关系、用户与社区之间的关系等构建得到的图网络,其中,用户的社交行为比如可以包括发布的文章、对其他用户的文章发表的评价、参加的社区等,该异构图中包括用户、社区、文章、评论等多种类型的节点。

步骤102,将异构图输入异构图学习模型以生成异构图之中各个节点的节点表示。

本实施例中,将获取的异构图输入至异构图学习模型中,可以生成该异构图中每个节点的节点表示。

其中,异构图学习模型通过以下步骤生成异构图中各个节点的节点表示:

step1:将异构图拆分为多个子图,其中,每个子图包括两种类型的节点和两种类型的节点之间的一种边类型;

step2:根据多个子图生成每个节点的节点表示。

本实施例中,利用异构图学习模型生成异构图中各个节点的表示时,先根据节点类型和边类型将输入的异构图拆分为多个子图,再根据多个子图生成每个节点的节点表示。

能够理解的是,将异构图拆分为子图的个数,应当与边类型的种类一致。

举例而言,图2是根据边类型和节点类型将异构图拆分为多个子图的示例图。图2中,下方的图是一个完整的异构图,包括三种节点类型和四种边类型,其中,三种节点类型分别为主题(subject)、文章(paper)和作者(author),四种边类型分别为subject相对paper的关系(has)、paper相对subject的关系(isabout)、paper相对author的关系(writtenby),以及author相对paper的关系(writing)。考虑到不同的节点类型的特征可能不同,因此为了学习到不同节点类型的节点表示,本实施例中,根据异构图所包含的节点类型和边类型,将该异构图拆分为四个子图,如图2中的上图所示。针对拆分得到的四个子图,可以分别对其中的节点进行表示,再根据多个子图生成每个节点的节点表示。

本实施例中,对每个子图中的节点进行表示时,可以通过消息传递模式,将源节点的特征传递至目标节点,利用源节点的特征表示目标节点,生成目标节点对应的节点表示。

图3是消息传递过程的示例图。如图3所示,对于子图中的各个节点,其特征是已知的,并预先存储在存储空间中,图3中,u0~u3分别表示节点0~3的特征,通过indexselect操作,根据子图中各个源节点的id索引出对应的特征,得到消息张量,消息张量可以按照图中边的分布情况将对应源节点的特征发送出来。接着,对于每个目标节点,可以根据对应的源节点的特征生成该目标节点的节点表示。比如,对于节点2,当节点2作为目标节点时,其对应的源节点为节点1和节点3,利用节点1的特征u1和节点3的特征u3,生成节点2的节点表示h2。图3中,h0~h3分别表示节点0~节点3的节点表示。从图3可以看出,节点3无相邻的源节点,则节点3的表示不能使用源节点的特征进行更新,h3即为其自身的特征u3。

由于异构图被拆分为多个子图,同一个节点在不同子图下会产生不同的表示,比如图2中,子图1和子图4中均包含节点paper0,但由于子图1和子图4中的边类型不同,节点paper0在子图1和子图4中会产生不同的表示。本实施例中,为了将不同边类型的信息进行融合,针对拆分得到的每个子图,得到子图中节点的表示后,可以根据多个子图生成每个节点最终的节点表示。

具体地,针对同一节点,可以采用相关的消息聚合方式,将该节点在不同子图中的表示进行融合,比如可以通过矩阵相乘等方式将不同子图中同一节点的表示进行融合,得到该节点最终的节点表示。

图4是不同子图中的相同节点进行融合的示例图。如图4所示,图4中左图的异构图包含两种边类型(分别以黑色线条和灰色线条表示),根据这两种边类型,将异构图拆分为两个子图,即图4中的子图a和子图b,在子图a中,节点b1~b3将自身的特征传递至节点a1,生成子图a中节点a1的节点表示,在子图b中,节点c1~c2将自身的特征传递至节点a1,生成子图b中节点a1的节点表示,再将子图a和子图b中节点a1的两个表示进行聚合,得到异构图中节点a1的最终表示。

本实施例的异构图之中节点表示的生成方法,通过获取异构图,将异构图输入异构图学习模型以生成异构图之中各个节点的节点表示,其中,将异构图拆分为多个子图,每个子图包括两种类型的节点和两种类型的节点之间的一种边类型,根据多个子图生成每个节点的节点表示。由此,通过根据节点类型和边类型将异构图拆分为多个子图,根据多个子图生成每个节点的节点表示,能够获得不同边类型下图的结构信息,保证了异构图的结构信息不被丢失,保证了异构图中节点的信息的完整性,从而提高了节点表示的准确性。

图5是根据本申请第二实施例的异构图之中节点表示的生成方法的流程示意图。如图5所示,本申请实施例的异构图之中节点表示的生成方法,在根据多个子图生成每个节点的节点表示时,可以通过如下步骤实现:

步骤201,获取第i个节点分别在多个子图之中的m个第一节点表示,i和m为正整数。

其中,i是异构图中包含的第i个节点,i是正整数,且i不大于异构图中所包含的节点的总个数;m的值与包含第i个节点的子图的个数一致。

作为一种可能的实现方式,在获取第i个节点分别在多个子图之中的m个第一节点表示时,可以先获取第i个节点所在的m个子图,再获取第i个节点在第j个子图之中的相邻节点,其中,j为小于或等于m的正整数,进而获取相邻节点的特征以生成第i个节点在第j个子图之中的第一节点表示,依次计算第i个节点在m个子图之中其他子图的第一节点表示。

本实施例中,从拆分得到的多个子图中,获取包含第i个节点的所有子图,记为m个子图,对于每个子图,获取第i个节点在该子图中的相邻节点,并获取相邻节点的特征,利用相邻节点的特征生成第i个节点在该子图中的第一节点表示。针对m个子图,采用上述方式计算第i个节点在每个子图中的第一节点表示,得到第i个节点的m个第一节点表示。

步骤202,将m个第一节点表示进行聚合以生成第i个节点的节点表示。

本实施例中,获取了第i个节点在m个子图中的m个第一节点表示之后,可以采用相关的聚合算法,将m个第一节点表示进行聚合,生成第i个节点在异构图中的节点表示。

本实施例的异构图之中节点表示的生成方法,通过获取第i个节点分别在多个子图之中的m个第一节点表示,将m个第一节点表示进行聚合以生成第i个节点的节点表示,由此,实现了将同一节点在不同边类型下的第一节点表示融合在一起,实现了节点在不同边类型下的节点表示,保证了结构信息的完整性。

本申请实施例中,为了能够利用异构图学习模型生成异构图中各节点的节点表示,需要先对异构图学习模型进行训练,下面结合附图6对异构图学习模型的训练过程进行详细说明。

图6是根据本申请第三方面实施例的异构图之中节点表示的生成方法的流程示意图。如图6所示,本申请实施例中,异构图学习模型的训练过程包括以下步骤:

步骤301,获取样本异构图,其中,样本异构图包括多个类型的节点。

步骤302,获取样本异构图的训练数据。

作为一种可能的实现方式,可以通过metapath采样的方式,获取样本异构图的训练数据。

针对每个样本异构图,可以预先定义对应的metapath,再根据定义的metapath,按照metapath定义的采样顺序和采样节点的序号,获取样本异构图的训练数据。

其中,训练数据中包括但不限于待采样的节点的id。

步骤303,将样本异构图拆分为多个样本子图,其中,每个样本子图包括两种类型的节点和两种类型的节点之间的一种边类型。

本实施例中,可以根据样本异构图中包含的节点类型和边类型对样本异构图进行拆分,将样本异构图拆分为多个样本子图。

步骤304,分别计算多个样本子图之中每个节点的节点表示。

本实施例中,将样本异构图拆分为多个样本子图之后,针对每个样本子图,可以计算样本子图中每个节点的节点表示。

需要说明的是,在计算样本子图中每个节点的节点表示时,可以利用节点的相邻节点的特征来更新节点的节点表示,其具体过程可以参见如图3所示的消息传递过程,此处不再赘述。

步骤305,根据每个节点的节点表示和训练数据对异构图学习模型的参数进行训练。

本实施例中,对异构图学习模型的参数进行训练时,可以先根据训练数据,从每个节点的节点表示中,索引出与训练数据中的待采样的节点的id对应的节点表示,利用节点表示对异构图学习模型的参数进行训练,更新异构图学习模型的参数。

举例而言,对于图2所示的异构图及各个子图,假设定义的metapath为“subject-paper-author-paper-subject”,则训练数据中可以包括子图subject-paper、子图paper-author、子图author-paper和子图paper-subject中各节点的id,进而在对异构图学习模型的参数进行训练时,根据训练数据,先对子图subject-paper进行采样,接着对子图paper-author采样,然后对author-paper子图进行采样,最后对paper-subject子图采样,获取每个子图中各节点的节点表示,利用各节点的节点表示对异构图学习模型的参数进行训练。

作为一种可能的实现方式,可以通过skipgram算法(梯度下降算法)根据每个节点的节点表示和训练数据对异构图学习模型的参数进行训练。

能够理解的是,对异构图学习模型的参数进行训练的过程是个不断迭代的过程,通过计算异构图学习模型的目标函数,不断地更新异构图学习模型的参数,直到异构图学习模型收敛,模型训练完成。

本实施例的异构图之中节点表示的生成方法,通过获取样本异构图和样本异构图的训练数据,将样本异构图拆分为多个样本子图,每个样本子图包括两种类型的节点和两种类型的节点之间的一种边类型,分别计算多个样本子图之中每个节点的节点表示,进而根据每个节点的节点表示和训练数据对异构图学习模型的参数进行训练,实现了将样本异构图按照边类型和节点类型分为多个样本子图分别进行消息聚合的训练,能够获得不同边类型下图的结构信息,保证了结构信息的完整性,更加有利于下游任务的实现,并且,采用消息传递模式进行节点表示,能够在不构建整个邻接矩阵的情况下完成节点表示,减少了存储邻接矩阵所需的存储空间。

根据本申请的实施例,本申请还提出一种异构图之中节点表示的生成装置。

图7是根据本申请第四实施例的异构图之中节点表示的生成装置的结构示意图。如图7所示,该异构图之中节点表示的生成装置50包括:获取模块510和生成模式520。

其中,获取模块510,用于获取异构图,其中,异构图包括多个类型的节点。

生成模块520,用于将异构图输入异构图学习模型以生成异构图之中各个节点的节点表示,其中,异构图学习模型通过以下步骤生成各个节点的节点表示:

将异构图拆分为多个子图,其中,每个子图包括两种类型的节点和两种类型的节点之间的一种边类型;

根据多个子图生成每个节点的节点表示。

进一步地,在本申请实施例一种可能的实现方式中,生成模块520利用异构图学习模型,根据多个子图生成每个节点的节点表示时,具体包括:获取第i个节点分别在多个子图之中的m个第一节点表示,i和m为正整数;将m个第一节点表示进行聚合以生成第i个节点的节点表示。

其中,获取第i个节点所在的m个子图;获取第i个节点在第j个子图之中的相邻节点,其中,j为小于或等于m的正整数;获取相邻节点的特征以生成第i个节点在第j个子图之中的第一节点表示,依次计算第i个节点在m个子图之中其他子图的第一节点表示,以获取到第i个节点分别在多个子图之中的m个第一节点表示。

在本申请实施例一种可能的实现方式中,如图8所示,在如图7所示实施例的基础上,该异构图之中节点表示的生成装置,还包括:

模型训练模块500,用于:

获取样本异构图,其中,所述样本异构图包括多个类型的节点;

获取所述样本异构图的训练数据;

将所述样本异构图拆分为多个样本子图,其中,每个样本子图包括两种类型的节点和所述两种类型的节点之间的一种边类型;

分别计算所述多个样本子图之中每个节点的节点表示;

根据所述每个节点的节点表示和所述训练数据对所述异构图学习模型的参数进行训练。

在本申请实施例一种可能的实现方式中,模型训练模块500,具体用于:

通过skipgram算法根据所述每个节点的节点表示和所述训练数据对所述异构图学习模型的参数进行训练。

需要说明的是,前述对异构图之中节点表示的生成方法实施例的解释说明,也适用于本申请实施例的异构图之中节点表示的生成装置,其实现原理类似,此处不再赘述。

本申请实施例的异构图之中节点表示的生成装置,通过获取异构图,将异构图输入异构图学习模型以生成异构图之中各个节点的节点表示,其中,将异构图拆分为多个子图,每个子图包括两种类型的节点和两种类型的节点之间的一种边类型,根据多个子图生成每个节点的节点表示。由此,通过根据节点类型和边类型将异构图拆分为多个子图,根据多个子图生成每个节点的节点表示,能够获得不同边类型下图的结构信息,保证了异构图的结构信息不被丢失,保证了异构图中节点的信息的完整性,从而提高了节点表示的准确性。

根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。

如图9所示,是根据本申请实施例的异构图之中节点表示的生成方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。

如图9所示,该电子设备包括:一个或多个处理器701、存储器702,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器701可以对在电子设备内执行的指令进行处理,包括存储在存储器702中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示gui的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图9中以一个处理器701为例。

存储器702即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器702存储有可由至少一个处理器执行的指令,以使所述至少一个处理器701执行本申请所提供的异构图之中节点表示的生成方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的异构图之中节点表示的生成方法。

存储器702作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的异构图之中节点表示的生成方法对应的程序指令/模块(例如,附图7所示的获取模块510和生成模块520)。处理器701通过运行存储在存储器702中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的异构图之中节点表示的生成方法。

存储器702可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据执行异构图之中节点表示的生成方法的电子设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器702可选包括相对于处理器701远程设置的存储器,这些远程存储器可以通过网络连接至执行异构图之中节点表示的生成方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

执行异构图之中节点表示的生成方法的电子设备还可以包括:输入装置703和输出装置704。处理器701、存储器702、输入装置703和输出装置704可以通过总线或者其他方式连接,图9中以通过总线连接为例。

输入装置703可接收输入的数字或字符信息,以及产生与执行异构图之中节点表示的生成方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置704可以包括显示设备、辅助照明装置(例如,led)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(lcd)、发光二极管(led)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。

此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用asic(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(pld)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。

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

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

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。

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

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

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1