一种用于分布式图模型的图学习方法及设备技术

技术编号:32818749 阅读:12 留言:0更新日期:2022-03-26 20:15
本公开涉及用于分布式图模型的图学习方法,包括:针对所述一条或更多条邻边中的每条邻边,响应于其连接的镜像节点和邻居节点的当前层的节点特征值均被更新,根据当前邻边的上一层的边特征值、镜像节点的当前层的节点特征值、以及当前邻居节点的当前层的节点特征值,计算当前邻边的当前层的边特征值,并根据当前邻边的当前层的边特征值和当前邻居节点的当前层的节点特征值,计算当前邻边在镜像节点处的聚合值;以及响应于所述一条或更多条邻边在镜像节点处的聚合值均被计算,计算镜像节点的本地聚合值,并将镜像节点的本地聚合值传输给用于分布式图学习的第二设备,所述第二设备与所述图模型的第二部分相关联,所述第二部分包括镜像节点的主节点。括镜像节点的主节点。括镜像节点的主节点。

【技术实现步骤摘要】
一种用于分布式图模型的图学习方法及设备


[0001]本公开实施例属于计算机
,尤其涉及一种用于分布式图模型的图学习方法及设备。

技术介绍

[0002]随着信息科学的飞速发展,大量的数据每天都在许多领域被收集和存储。传统的简单统计方法在处理这些数据时显得无能为力,它们很难发现这种数据间的深层关联,也无法对不同领域的数据进行有针对性地处理。机器学习作为一个以数据为研究对象、以发现规律和关联为目标的工具由此而生。图论(graph theory)作为一个数学分支,其在机器学习中的研究与应用近年来得到了快速的发展。基于图论的机器学习算法就是把机器学习的问题归结为图论的问题,然后利用图论理论进行分析和求解的一类学习算法。
[0003]基于图论进行分析和求解的数据可以被称为图数据。可以基于图数据来建立图模型。图模型是描述事物间两两关系的数学模型,其包含若干个节点(vertex)及连接两个节点的边(edge)。因此,可以用G(V, E)代表一个图模型,其中V为节点的集合,E为边的集合。
[0004]实践中,图模型中的各个节点可以分别对应于与具体业务场景相关联的各个实体。例如,在具体业务场景是社区发现、用户分群之类与用户相关的情况下,图模型中的各个节点对应的各个业务实体例如可以是用户等。再例如,在论文分类、社交平台文章分类等的具体场景下,图模型中的各个节点对应的各个业务实体例如可以是文章等。在其他具体业务场景下,图模型对应的业务实体还可以是任意其他合理的实体,本文不作限定。一个图模型中的节点可以对应一种或多种实体
[0005]图模型中,单个节点对应的实体可以具有与业务相关的各种属性。例如:在用于用户消费信息推送的图模型中,对应于用户的业务实体,可以对应有年龄、收入、停留位置、消费习惯之类的属性;对应于文章的业务实体,可以对应有关键词、所属领域、文章篇幅之类的属性。可选地,具有关联关系的节点之间还可以具有关联属性,该关联属性也可以作为相应连接边的边属性。例如,通过社交行为关联的用户之间可以具有社交属性(如聊天频率、转账行为、发红包行为等),该社交属性即相应两个节点之间的关联属性,其可以作为相应两个节点之间的连接边的边属性。通过属性,可以提取出相应的特征数据,来表征相应的节点。

技术实现思路

[0006]本公开的目的在于提供一种用于分布式图模型的图学习方法及设备。
[0007]根据本公开的第一方面,提供了一种用于分布式图模型的图学习方法,所述方法由第一设备执行,所述第一设备与所述图模型的第一部分相关联,所述第一部分包括镜像节点、镜像节点的一个或更多个邻居节点、以及连接镜像节点和所述一个或更多个邻居节点的一条或更多条邻边,其中,所述方法包括:针对所述一条或更多条邻边中的每条邻边,响应于其连接的镜像节点和邻居节点的当前层的节点特征值均被更新,根据当前邻边的上
一层的边特征值、镜像节点的当前层的节点特征值、以及当前邻居节点的当前层的节点特征值,计算当前邻边的当前层的边特征值,并根据当前邻边的当前层的边特征值和当前邻居节点的当前层的节点特征值,计算当前邻边在镜像节点处的聚合值;以及响应于所述一条或更多条邻边在镜像节点处的聚合值均被计算,计算镜像节点的本地聚合值,并将镜像节点的本地聚合值传输给用于分布式图学习的第二设备,所述第二设备与所述图模型的第二部分相关联,所述第二部分包括镜像节点的主节点。
[0008]根据本公开的第二方面,提供了一种用于分布式图模型的图学习方法,所述方法由第二设备执行,所述第二设备与所述图模型的第二部分相关联,所述第二部分包括主节点、主节点的一个或更多个邻居节点、以及连接主节点和所述一个或更多个邻居节点的一条或更多条邻边,其中,所述方法包括:针对所述一条或更多条邻边中的每条邻边,响应于其连接的主节点和邻居节点的当前层的节点特征值均被更新,根据当前邻边的上一层的边特征值、主节点的当前层的节点特征值、以及当前邻居节点的当前层的节点特征值,计算当前邻边的当前层的边特征值,并根据当前邻边的当前层的边特征值和当前邻居节点的当前层的节点特征值,计算当前邻边在主节点处的聚合值;以及响应于所述一条或更多条邻边在主节点处的聚合值均被计算,计算主节点的本地聚合值。
[0009]根据本公开的第三方面,提供了一种用于分布式图模型的图学习设备,所述设备与所述图模型的第一部分相关联,所述第一部分包括镜像节点、镜像节点的一个或更多个邻居节点、以及连接镜像节点和所述一个或更多个邻居节点的一条或更多条邻边,其中,所述设备包括:边计算模块,被配置为:针对所述一条或更多条邻边中的每条邻边,响应于其连接的镜像节点和邻居节点的当前层的节点特征值均被更新,根据当前邻边的上一层的边特征值、镜像节点的当前层的节点特征值、以及当前邻居节点的当前层的节点特征值,计算当前邻边的当前层的边特征值,并根据当前邻边的当前层的边特征值和当前邻居节点的当前层的节点特征值,计算当前邻边在镜像节点处的聚合值;节点计算模块,被配置为:响应于所述一条或更多条邻边在镜像节点处的聚合值均被计算,计算镜像节点的本地聚合值;以及通信模块,被配置为:将镜像节点的本地聚合值传输给用于分布式图学习的其他设备,所述其他设备与所述图模型的第二部分相关联,所述第二部分包括镜像节点的主节点。
[0010]根据本公开的第四方面,提供了一种用于分布式图模型的图学习设备,所述设备与所述图模型的第二部分相关联,所述第二部分包括主节点、主节点的一个或更多个邻居节点、以及连接主节点和所述一个或更多个邻居节点的一条或更多条邻边,其中,所述设备包括:边计算模块,被配置为:针对所述一条或更多条邻边中的每条邻边,响应于其连接的主节点和邻居节点的当前层的节点特征值均被更新,根据当前邻边的上一层的边特征值、主节点的当前层的节点特征值、以及当前邻居节点的当前层的节点特征值,计算当前邻边的当前层的边特征值,并根据当前邻边的当前层的边特征值和当前邻居节点的当前层的节点特征值,计算当前邻边在主节点处的聚合值;以及节点计算模块,被配置为:响应于所述一条或更多条邻边在主节点处的聚合值均被计算,计算主节点的本地聚合值。
[0011]根据本公开的第五方面,提供了一种用于分布式图模型的图学习设备,包括:一个或多个处理器;和一个或多个存储器,被配置为存储一系列计算机可执行指令,其中,所述一系列计算机可执行指令在由所述一个或多个处理器执行时,使所述一个或多个处理器执行上述的方法。
[0012]根据本公开的第六方面,提供了一种非暂时性计算机可读介质,其上存储有指令,当所述指令由一个或多个处理器执行时,使所述一个或多个处理器执行上述的方法。
附图说明
[0013]为了更清楚地说明本公开实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0014]图1是一个分布式图模型的示例的示意图;图2至图5是根据实施本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于分布式图模型的图学习方法,所述方法由第一设备执行,所述第一设备与所述图模型的第一部分相关联,所述第一部分包括镜像节点、镜像节点的一个或更多个邻居节点、以及连接镜像节点和所述一个或更多个邻居节点的一条或更多条邻边,其中,所述方法包括:针对所述一条或更多条邻边中的每条邻边,响应于其连接的镜像节点和邻居节点的当前层的节点特征值均被更新,根据当前邻边的上一层的边特征值、镜像节点的当前层的节点特征值、以及当前邻居节点的当前层的节点特征值,计算当前邻边的当前层的边特征值,并根据当前邻边的当前层的边特征值和当前邻居节点的当前层的节点特征值,计算当前邻边在镜像节点处的聚合值;以及响应于所述一条或更多条邻边在镜像节点处的聚合值均被计算,计算镜像节点的本地聚合值,并将镜像节点的本地聚合值传输给用于分布式图学习的第二设备,所述第二设备与所述图模型的第二部分相关联,所述第二部分包括镜像节点的主节点。2.根据权利要求1所述的方法,还包括:针对所述一条或更多条邻边中的每条邻边,还根据当前邻边的当前层的边特征值和镜像节点的当前层的节点特征值,计算当前邻边在当前邻居节点处的聚合值;以及针对所述一个或更多个邻居节点中的每个邻居节点,响应于其连接的所有邻边在其处的聚合值均被计算,根据当前邻居节点的当前层的节点特征值和其连接的所有邻边在其处的聚合值,计算并更新当前邻居节点的下一层的节点特征值。3.根据权利要求1或2所述的方法,还包括:响应于从所述第二设备接收所述主节点的下一层的节点特征值,更新镜像节点的下一层的节点特征值。4.根据权利要求2所述的方法,其中,针对所述一个或更多个邻居节点中的至少一个邻居节点,在从所述第二设备接收来自所述主节点的下一层的节点特征值之前,计算并更新所述至少一个邻居节点的下一层的节点特征值。5.根据权利要求2所述的方法,其中,针对所述一个或更多个邻居节点中的至少一个邻居节点,在计算镜像节点的本地聚合值之前,计算并更新所述至少一个邻居节点的下一层的节点特征值。6.根据权利要求2所述的方法,其中,针对所述一个或更多个邻居节点中的至少一个邻居节点,在计算所述一条或更多条邻边中的至少一条邻边在镜像节点处的聚合值之前,计算并更新所述至少一个邻居节点的下一层的节点特征值。7.根据权利要求1所述的方法,其中,基于由图学习确定的函数,来根据当前邻边的上一层的边特征值、镜像节点的当前层的节点特征值、以及当前邻居节点的当前层的节点特征值,计算当前邻边的当前层的边特征值。8.根据权利要求1所述的方法,其中,由当前邻边的当前层的边特征值和当前邻居节点的当前层的节点特征值的加权和,来计算当前邻边在镜像节点处的聚合值。9.根据权利要求1所述的方法,其中,由所述一条或更多条邻边在镜像节点处的聚合值的加权和,来计算镜像节点的本地聚合值。10.一种用于分布式图模型的图学习方法,所述方法由第二设备执行,所述第二设备与所述图模型的第二部分相关联,所述第二部分包括主节点、主节点的一个或更多个邻居节
点、以及连接主节点和所述一个或更多个邻居节点的一条或更多条邻边,其中,所述方法包括:针对所述一条或更多条邻边中的每条邻边,响应于其连接的主节点和邻居节点的当前层的节点特征值均被更新,根据当前邻边的上一层的边特征值、主节点的当前层的节点特征值、以及当前邻居节点的当前层的节点特征值,计算当前邻边的当前层的边特征值,并根据当前邻边的当前层的边特征值和当前邻居节点的当前层的节点特征值,计算当前邻边在主节点处的聚合值;以及响应于所述一条或更多条邻边在主节点处的聚合值均被计算,计算主节点的本地聚合值。11.根据权利要求10所述的方法,还包括:针对所述一条或更多条邻边中的每条邻边,还根据当前邻边的当前层的边特征值和主节点的当前层的节点特征值,计算当前邻边在当前邻居节点处的聚合值;以及针对所述一个或更多个邻居节点中的每个邻居节点,响应于其连接的所有邻边在其处的聚合值均被计算,根据当前邻居节点的当前层的节点特征值和其连接的所有邻边在其处的聚合值,计算并更新当前邻居节点的下一层的节点特征值。12.根据权利要求10或11所述的方法,还包括:响应于主节点的所有镜像节点的本地聚合值均被接收,根据主节点的当前层的节点特征值、主节点的本地聚合值、以及所有镜像节点的本地聚合值,计算并更新主节点的下一层的节点特征值;以及将主节点的下一层的节点特征值传输给各镜像节点所在的用于分布式图学习的设备。13.根据权利要求11所述的方法,其中,针对所述一个或更多个邻居节点中的至少一个邻居节点,在计算并更新主节点的下一层的节点特征值之前,计算并更新所述至少一个邻居节点的下一层的节点特征值。14.根据权利要求11所述的方法,其中,针对所述一个或更多个邻居节点中的至少一个邻居节点,在计算主节点的本地聚合值之前,计算并更新所述至少一个邻居节点的下一层的节点特征值。15.根据权利要求11所述的方法,其中,针对所述一个或更多个邻居节点中的至少一个邻居节点,在计算所述一条或更多条邻边中的至少一条邻边在主节点处的聚合值之前,计算并更新所述至少一个邻居节点的下一层的节点特征值。16.根据权利要求10所述的方法,其中,基于由图学习确定的函数,来根据当前邻边的上一层的边特征值、主节点的当前层的节点特征值、以及当前邻居节点的当前层的节点特征值,计算当前邻边的当前层的边特征值。17.根据权利要求10所述的方法,其中,由当前邻边的当前层的边特征值和当前邻居节点的当前层的节点特征值的加权和,来计算当前邻边在主节点处的聚合值。18.根据权利要求10所述的方法,其中,由所述一条或更多条邻边在主节点处的聚合值的加权和,来计算主节点的本地聚合值。19.一种用于分布式图模型的图学习设备,所述设备与所述图模型的第一部分相关联,所述第一部分包括镜像节点、镜像节点的一个或更多个邻居节点、以及连接镜像节点和所述一个或更多个邻居节点的一条或更多条邻边,其中,所述设备包括:
边计算模块,被配置为:针对所述一条或更多条邻边中的每条邻边,响应于其连接的镜像节点和邻居节点的当前层的节点特征值均被更新,根据当前邻边的上一层的边特征值、镜像节点的当前层的节点特征值、以及当前邻居节点的当前层的节点特征值,计算当前邻边的当前层的边特征值,并根据当前邻边的当前层的边特征值和当前邻居节点的当前层的节点特征值,计算当前邻边在镜像节点处的聚合值;节点计算模...

【专利技术属性】
技术研发人员:郭志强
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1