CN115796229A - 图节点的嵌入方法、系统、设备及存储介质 - Google Patents
图节点的嵌入方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN115796229A CN115796229A CN202211160818.0A CN202211160818A CN115796229A CN 115796229 A CN115796229 A CN 115796229A CN 202211160818 A CN202211160818 A CN 202211160818A CN 115796229 A CN115796229 A CN 115796229A
- Authority
- CN
- China
- Prior art keywords
- participant
- participants
- graph node
- degree
- graph
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 239000013598 vector Substances 0.000 claims abstract description 113
- 238000012549 training Methods 0.000 claims abstract description 48
- 238000013528 artificial neural network Methods 0.000 claims abstract description 36
- 238000012545 processing Methods 0.000 claims description 35
- 238000012935 Averaging Methods 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 9
- 238000004220 aggregation Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 abstract description 11
- 238000010801 machine learning Methods 0.000 description 11
- 230000001360 synchronised effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000000547 structure data Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005295 random walk Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000000586 desensitisation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种图节点的嵌入方法、系统、设备及存储介质,方法包括:将确定的至少两个参与方的交集图节点ID发送至每个参与方,使每个参与方计算并发送各自的N度关系;将接收的N度关系发送至每个参与方,使每个参与方计算并添加待添加的虚拟图,根据添加后的交集图节点ID按照预设迭代训练次数训练神经网络,获取并发送交集图节点ID的向量表示。本发明基于多个参与方进行联邦化图节点嵌入计算,进行交集图节点的均值化向量同步以及虚拟图节点和/或虚拟边的添加,不相互公开各自图数据,多个参与方图节点进行联邦化的图嵌入训练,保证参与方不公开本地源数据的情况下,准确的获取更加有效地图节点向量表示。
Description
技术领域
本发明涉及图节点嵌入技术领域,特别涉及一种图节点的嵌入方法、系统、设备及存储介质。
背景技术
如果需要在实际中使用联邦图神经网络方法,至少需要对图节点数据进行低维度的向量表示。
目前图嵌入方法旨在学习图网络中图节点的分布表示。图嵌入方法主要有:DeepWalk,利用word2vec方法来学习图网络的图节点表示,其过程是将通过随机游走产生的图节点序列视为句子,将序列中相邻图节点视为语义相似的词,利用skip-gram算法实现每个图节点的向量表示;Node2vec是将 DeepWalk的随机游走策略进行有权重的替换,使用户可以根据实际情况调整使用广度优先遍历策略或深度优先遍历策略来生成图节点序列;LINE方法将图结构中的一阶相似性和二阶相似性结合,来获取更丰富的图节点表示结果。
而目前的图嵌入方法研究大多数是基于本地图数据图节点和边的独立计算。由于本地图数据的规模和业务的局限性,仅使用本地数据计算得到的图嵌入的图节点表示很有可能无法真实表达实际图节点的状态,从而导致下游的机器学习任务中,如进行有监督学习、无监督学习产生较大误差。
本地图数据网络关系由于业务数据关系,可能存在图数据网络关系不完备的问题。若在不完备的图数据上进行图节点嵌入,生成图节点向量,可能会导致图节点向量生成过程中,图节点向量表示不准确现象。
发明内容
本发明要解决的技术问题是为了克服现有技术中现有的图嵌入方法存在存在图数据网络关系不完备、图节点向量表示不准确的缺陷,提供一种图节点的嵌入方法、系统、设备及存储介质。
本发明是通过下述技术方案来解决上述技术问题:
本发明第一方面提供了一种图节点的嵌入方法,所述嵌入方法包括:
确定至少两个参与方之间的交集图节点ID;
将所述交集图节点ID分别发送至每个所述参与方,以使每个所述参与方根据接收到的交集图节点ID计算并发送各自的N度关系;
接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N 度关系分别发送至每个所述参与方,以使每个所述参与方基于其他参与方的 N度关系生成各自待添加的虚拟图,每个所述参与方根据添加虚拟图后的原始图节点ID按照预设迭代训练次数训练各自的神经网络,每个所述参与方从训练后的神经网络中获取并发送各自交集图节点ID的向量表示。
较佳地,所述确定所述至少两个参与方之间的交集图节点ID的步骤包括:
接收至少两个参与方发送的原始图节点ID;
根据所述原始图节点ID确定所述至少两个参与方之间的交集图节点ID;
和/或,
所述嵌入方法还包括:
接收所述至少两个参与方发送的交集图节点ID的向量表示;
对所述交集图节点ID的向量表示进行均值化处理,以得到均值化后的交集图节点ID的向量表示;
将所述均值化后的交集图节点ID的向量表示按照每个所述参与方的交集图节点ID发送至对应的参与方,以使每个所述参与方根据接收到的所述均值化后的交集图节点ID的向量表示替换均值化处理前的所述交集图节点 ID的向量表示,每个所述参与方根据所述均值化后的交集图节点ID的向量表示按照预设迭代训练次数训练各自的神经网络。
较佳地,所述接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方基于其他参与方的N度关系生成各自待添加的虚拟图的步骤包括:
接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N 度关系分别发送至每个所述参与方,以使每个所述参与方将各自的N度关系与所述其他参与方的N度关系进行对比,以生成各自待添加的虚拟图节点 ID;
或,
所述接收每个所述参与方发送的N度关系,并将所述至少两个参与方的 N度关系分别发送至每个所述参与方,以使每个所述参与方基于其他参与方的N度关系生成各自待添加的虚拟图的步骤包括:
接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N 度关系分别发送至每个所述参与方,以使每个所述参与方将各自的N度关系与所述其他参与方的N度关系进行对比,以生成各自待添加的虚拟边;
或,
所述接收每个所述参与方发送的N度关系,并将所述至少两个参与方的 N度关系分别发送至每个所述参与方,以使每个所述参与方基于其他参与方的N度关系生成各自待添加的虚拟图的步骤包括:
接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N 度关系分别发送至每个所述参与方,以使每个所述参与方将各自的N度关系与所述其他参与方的N度关系进行对比,以生成各自待添加的虚拟图节点 ID和虚拟边。
较佳地,所述接收至少两个参与方发送的原始图节点ID的步骤包括:
接收所述至少两个参与方发送的加密后的原始图节点ID;
所述根据所述原始图节点ID确定所述至少两个参与方之间的交集图节点ID的步骤包括:
根据所述加密后的原始图节点ID确定所述至少两个参与方之间的交集图节点ID。
本发明第二方面提供了一种图节点的嵌入系统,所述嵌入系统包括确定模块、第一发送模块和第一处理模块;
所述确定模块用于确定至少两个参与方之间的交集图节点ID;
所述第一发送模块用于将所述交集图节点ID分别发送至每个所述参与方,以使每个所述参与方根据接收到的交集图节点ID计算并发送各自的N 度关系;
所述第一处理模块用于接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方基于其他参与方的N度关系生成各自待添加的虚拟图,每个所述参与方根据添加虚拟图后的原始图节点ID按照预设迭代训练次数训练各自的神经网络,每个所述参与方从训练后的神经网络中获取并发送各自交集图节点ID 的向量表示。
较佳地,所述确定模块包括接收单元和确定单元;
所述接收单元用于接收至少两个参与方发送的原始图节点ID;
所述确定单元用于根据所述原始图节点ID确定所述至少两个参与方之间的交集图节点ID;
和/或,
所述嵌入系统还包括接收模块、第二处理模块和第二发送模块;
所述接收模块用于接收所述至少两个参与方发送的交集图节点ID的向量表示;
所述第二处理模块用于对所述交集图节点ID的向量表示进行均值化处理,以得到均值化后的交集图节点ID的向量表示;
所述第二发送模块用于将所述均值化后的交集图节点ID的向量表示按照每个所述参与方的交集图节点ID发送至对应的参与方,以使每个所述参与方根据接收到的所述均值化后的交集图节点ID的向量表示替换均值化处理前的所述交集图节点ID的向量表示,每个所述参与方根据所述均值化后的交集图节点ID的向量表示按照预设迭代训练次数训练各自的神经网络。
较佳地,所述第一处理模块用于接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方将各自的N度关系与所述其他参与方的N度关系进行对比,以生成各自待添加的虚拟图节点ID;
或,
所述第一处理模块用于接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方将各自的N度关系与所述其他参与方的N度关系进行对比,以生成各自待添加的虚拟边;
或,
所述第一处理模块用于接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方将各自的N度关系与所述其他参与方的N度关系进行对比,以生成各自待添加的虚拟图节点ID和虚拟边。
较佳地,所述接收单元具体用于接收所述至少两个参与方发送的加密后的原始图节点ID;
所述确定单元具体用于根据所述加密后的原始图节点ID确定所述至少两个参与方之间的交集图节点ID。
本发明第三方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的图节点的嵌入方法。
本发明第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的图节点的嵌入方法。
本发明的积极进步效果在于:
本发明基于多个参与方进行联邦化图节点嵌入计算,进行交集图节点的均值化向量同步,以及虚拟图节点和/或虚拟边的添加,不相互公开各自图数据的实际值,使用多个参与方图节点ID进行联邦化的图嵌入训练,在保证每个参与方不公开本地源数据的情况下,能够准确的获取更加有效地图节点向量表示。
附图说明
图1为本发明实施例1的图节点的嵌入方法的第一流程图。
图2为本发明实施例1的图节点的嵌入方法的步骤101的流程图。
图3为本发明实施例1的图节点的嵌入方法的第二流程图。
图4为本发明实施例1和2的参与方添加虚拟图节点和/或虚拟边的结构示意图。
图5为本发明实施例1和2的对至少两个参与方的交集图节点ID的向量表示进行均值化处理的结构示意图。
图6为本发明实施例2的图节点的嵌入系统的模块示意图。
图7为本发明实施例3的电子设备的结构示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
本实施例提供的一种图节点的嵌入方法,如图1所示,该嵌入方法包括:
步骤101、确定至少两个参与方之间的交集图节点ID;
本实施例中,整个流程需要一个服务器来执行,该服务器用于汇集相关密态数据等相关计算。需要说明的是,服务器可以为中央服务器;密态数据即为加密后的图节点ID。
在具体实施过程中,通过服务器确定至少两个参与方之间的交集图节点 ID;
本实施例中,参与方可以为不同的银行,可以为不同的运营商,也可以为其他,此处不做具体限定。
本实施例中,图用于表示多个对象之间关联关系的一种抽象数据结构,使用顶点(Vertex)、边(Edge)、属性(Property)进行描述,顶点表示对象,边表示对象之间的关联关系,属性表示每个顶点对象具体值。
本实施例中,图嵌入(Graph Embedding)是将图中的每个节点确定了一个固定长度的向量表示。图嵌入将捕获图的拓扑结构、顶点到顶点的关系等相关信息。
本实施例中,交集节点ID即为公共节点ID。
步骤102、将交集图节点ID分别发送至每个参与方,以使每个参与方根据接收到的交集图节点ID计算并发送各自的N度关系;
本实施例中,服务器将交集图节点ID分别发送至每个参与方,每个参与方根据接收到的交集图节点ID计算并各自的N度关系,并将各自的N度关系均发送至服务器。
本实施例中,N度关系即为N度以内关系,也即为N跳邻居,N度关系可以为一度关系,也可以为二度关系,还可以为三度关系,还可以为其他数值的关系。
步骤103、接收每个参与方发送的N度关系,并将至少两个参与方的N 度关系分别发送至每个参与方,以使每个参与方基于其他参与方的N度关系计算各自待添加的虚拟图,每个参与方根据添加虚拟图后的原始图节点ID 按照预设迭代训练次数训练各自的神经网络,每个参与方从训练后的神经网络中获取并发送各自交集图节点ID的向量表示。
本实施例中,服务器接收每个参与方发送的N度关系,并将至少两个参与方的N度关系分别发送至每个参与方,每个参与方基于其他参与方的N 度关系计算各自待添加的虚拟图,每个参与方根据添加虚拟图后的原始图节点ID按照预设迭代训练次数训练各自的神经网络,每个参与方从训练后的神经网络中获取并发送各自交集图节点ID的向量表示。
本实施例中,虚拟图包括虚拟图节点和/或虚拟边。
本实施例中,神经网络即为图神经网络,需要说明的是,图神经网络是指使用神经网络来学习图结构数据,提取和发掘图结构数据中的特征和模式,满足聚类、分类、预测、分割、生成等图学习任务需求的算法总称。
需要说明的是,预设迭代训练次数根据实际情况进行设置,此处不做具体限定。
在一可实施的方案中,如图2所示,步骤101包括:
步骤1011、接收至少两个参与方发送的原始图节点ID;
步骤1012、根据原始图节点ID确定至少两个参与方之间的交集图节点 ID。
在具体实施过程中,各个参与方进行图节点ID的某一个特定规则的hash (散列函数),产生图节点ID(图节点ID可以是用户的手机号或身份证号,也可以为其他号码)脱敏后的数据(即密态数据)。各个参与方将脱敏后的图节点ID发送至服务器。服务器收集各个参与方发送来的密态图节点ID,并进行参与方之间节点ID的两两求交,或三者之间的求交,或者多者之间的求交。
在一可实施的方案中,如图3所示,该嵌入方法还包括:
步骤104、接收至少两个参与方发送的交集图节点ID的向量表示;
步骤105、对交集图节点ID的向量表示进行均值化处理,以得到均值化后的交集图节点ID的向量表示;
步骤106、将均值化后的交集图节点ID的向量表示按照每个参与方的交集图节点ID发送至对应的参与方,以使每个参与方根据接收到的均值化后的交集图节点ID的向量表示替换均值化处理前的交集图节点ID的向量表示,每个参与方根据均值化后的交集图节点ID的向量表示按照预设迭代训练次数训练各自的神经网络。
在具体实施过程中,每个参与方将各自的交集图节点ID的向量表示发送至服务器,服务器对接收到的交集图节点ID的向量表示进行均值化操作,而后将均值化后的交集图节点ID的向量表示按照各个参与方拥有的交集图节点ID发送至对应的参与方,每个参与方根据接收到的均值化后的交集图节点ID的向量表示替换均值化处理前的交集图节点ID的向量表示(即每个参与方根据接收到的均值化后的交集图节点ID的向量表示替换掉原始交集图节点ID的向量表示),各个参与方再进行下一批次的训练,直到达到最大训练批次,即每个参与方根据均值化后的交集图节点ID的向量表示按照预设迭代训练次数训练各自的神经网络。
在一可实施的方案中,步骤103包括:接收每个参与方发送的N度关系,并将至少两个参与方的N度关系分别发送至每个参与方,以使每个参与方将各自的N度关系与其他参与方的N度关系进行对比,以生成各自待添加的虚拟图节点ID;
或,步骤103包括:接收每个参与方发送的N度关系,并将至少两个参与方的N度关系分别发送至每个参与方,以使每个参与方将各自的N度关系与其他参与方的N度关系进行对比,以生成各自待添加的虚拟边;
或,步骤103包括:接收每个参与方发送的N度关系,并将至少两个参与方的N度关系分别发送至每个参与方,以使每个参与方将各自的N度关系与其他参与方的N度关系进行对比,以生成各自待添加的虚拟图节点ID 和虚拟边。
在一可实施的方案中,步骤1011包括:接收至少两个参与方发送的加密后的原始图节点ID;
本实施例中,加密后的原始图节点ID为密态数据(即脱敏后的数据)。
步骤1012包括:根据加密后的原始图节点ID确定至少两个参与方之间的交集图节点ID。
下面结合具体实例说明:
例如,以三个参与方为例,三个参与方进行图节点ID的某一个特定规则的hash,产生图节点ID脱敏后的数据(即密态数据)。三个参与方将脱敏后的图节点ID发送至服务器。服务器收集三个参与方发送来的密态图节点 ID,并进行参与方之间图节点ID的两两求交。如A参与方图节点ID为: {1,2,3,4,5,6},B参与方图节点ID为:{2,3,7,8,9,10},C参与方图节点ID为: {4,5,6,7,8,11,12},则A∩B={2,3},A∩C={4,5,6},B∩C={7,8}。服务器将三个参与方图节点ID的两两求交结果分别同步至各个参与方,如服务器发送至A参与方公共图节点(即交集图节点ID){2,3,4,5,6},发送至B参与方公共图节点{2,3,7,8},发送至C参与方公共图节点{4,5,6,7,8}。三个参与方进行Graph Embedding(图嵌入)节点向量的训练,即各个参与方同时迭代训练相同次数。在三个参与方进行Graph Embedding节点向量的训练之前,需要基于公共图节点,对各自参与方图上加入虚拟图节点和/或虚拟边,用于各个参与方更加充分的训练各自的神经网络。添加虚拟图节点和/或虚拟边过程,如图4所示,A参与方在图节点4,5之间添加一条虚拟边,二度关系原因是在C参与方中4和5图节点存在更近的一条距离关系(即A参与方基于C 参与方中4和5图节点之间的距离关系在自身的图节点4,5之间添加一条虚拟边);B参与方在图节点2,3之间添加一个虚拟图节点和两个虚拟边,原因是在A参与方图节点2,3之间存在两条距离关系,因此在B参与方添加一个虚拟图节点x’,2与x’的虚拟边和3与x’虚拟边,在B参与方形成图节点2,3之间存在两条虚拟距离关系。同理,C参与方图节点7与8之间添加一条虚拟边,原因是B参与方的图节点7与8之间存在更近的一条距离关系。添加虚拟图节点和虚拟边的过程是在参与方与参与方之间进行的,添加过程不需要服务器参与计算。
当三个参与方添加虚拟图节点和虚拟边(虚拟边可以增加归一化权重值) 后,三个参与方各自进行图嵌入的训练过程。当训练完成指定相同迭代次数后,参与方将公共图节点对应的训练结果向量发送给服务器,服务器对接收到的公共图节点向量进行均值化操作,如图5所示,将均值化结果向量按照三个参与方拥有的公共图节点发送至对应的参与方,如:将均值化后的 2,3,4,5,6图节点向量同步至A参与方,将均值化后的2,3,7,8图节点向量同步至B参与方,将均值化后的4,5,6,7,8图节点向量同步至C参与方。三个参与方的均值化后的图节点向量替换掉相应的原始节点向量,三个参与方再进行下一批次的训练,直到达到最大训练批次数。需要说明的是,最大训练次数根据实际情况进行设置。
本实施例中,联邦学习是一种机器学习框架,针对数据孤岛和数据隐私的两难问题,多家机构和学者提出的解决方案,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模。
另外,利用图数据结构进行机器学习建模越来越受到人们的重视,尤其在金融行业、电商行业等领域。图数据结构存在天然的优势,点边结构的数据是天然贴近现实世界,能直观表达现实世界中的实体及其对应关联关系。利用这种天然的图数据结构作为机器学习的输入,可以更加容易、准确地进行建模、分类、回归等任务。然而,图节点的低维向量表示的准确性至关重要。优秀、完整地节点向量表示直接影响下游机器学习的建模结果。而本实施例使用多个参与方业务图数据集进行联邦化的图嵌入训练,保证每个参与方不公开本地源数据的情况下,能够准确的获取更加有效地图节点向量表示。
需要说明的是,多个参与方在进行联邦化图节点嵌入计算过程中,各个参与方无法直接获取对方实际节点或边数据,使得各个参与方的图数据得到了保护。而本实施例基于联邦化进行图节点嵌入相比各个参与方独立训练得到的节点向量结果会更加合理有效。
本实施例基于多个参与方进行联邦化图节点嵌入计算,进行交集图节点的均值化向量同步,以及虚拟图节点和/或虚拟边的添加,不相互公开各自图数据的实际值,使用多个参与方图节点ID进行联邦化的图嵌入训练,在保证每个参与方不公开本地源数据的情况下,能够准确的获取更加有效地图节点向量表示。
实施例2
本实施例提供的一种图节点的嵌入系统,如图6所示,该嵌入系统包括确定模块21、第一发送模块22和第一处理模块23;
确定模块21用于确定至少两个参与方之间的交集图节点ID;
本实施例中,整个流程需要一个服务器来执行,该服务器用于汇集相关密态数据等相关计算。需要说明的是,服务器可以为中央服务器;密态数据即为加密后的图节点ID。
在具体实施过程中,通过服务器确定至少两个参与方之间的交集图节点 ID;
本实施例中,参与方可以为不同的银行,可以为不同的运营商,也可以为其他,此处不做具体限定。
本实施例中,图用于表示多个对象之间关联关系的一种抽象数据结构,使用顶点(Vertex)、边(Edge)、属性(Property)进行描述,顶点表示对象,边表示对象之间的关联关系,属性表示每个顶点对象具体值。
本实施例中,图嵌入(Graph Embedding)是将图中的每个节点确定了一个固定长度的向量表示。图嵌入将捕获图的拓扑结构、顶点到顶点的关系等相关信息。
本实施例中,交集节点ID即为公共节点ID。
第一发送模块22用于将交集图节点ID分别发送至每个参与方,以使每个参与方根据接收到的交集图节点ID计算并发送各自的N度关系;
本实施例中,服务器将交集图节点ID分别发送至每个参与方,每个参与方根据接收到的交集图节点ID计算并各自的N度关系,并将各自的N度关系均发送至服务器。
本实施例中,N度关系即为N度以内关系,也即为N跳邻居,N度关系可以为一度关系,也可以为二度关系,还可以为三度关系,还可以为其他数值的关系。
第一处理模块23用于接收每个参与方发送的N度关系,并将至少两个参与方的N度关系分别发送至每个参与方,以使每个参与方基于其他参与方的N度关系计算各自待添加的虚拟图,每个参与方根据添加虚拟图后的原始图节点ID按照预设迭代训练次数训练各自的神经网络,每个参与方从训练后的神经网络中获取并发送各自交集图节点ID的向量表示。
本实施例中,服务器接收每个参与方发送的N度关系,并将至少两个参与方的N度关系分别发送至每个参与方,每个参与方基于其他参与方的N 度关系计算各自待添加的虚拟图,每个参与方根据添加虚拟图后的原始图节点ID按照预设迭代训练次数训练各自的神经网络,每个参与方从训练后的神经网络中获取并发送各自交集图节点ID的向量表示。
本实施例中,虚拟图包括虚拟图节点和/或虚拟边。
本实施例中,神经网络即为图神经网络,需要说明的是,图神经网络是指使用神经网络来学习图结构数据,提取和发掘图结构数据中的特征和模式,满足聚类、分类、预测、分割、生成等图学习任务需求的算法总称。
需要说明的是,预设迭代训练次数根据实际情况进行设置,此处不做具体限定。
在一可实施的方案中,如图6所示,确定模块21包括接收单元211和确定单元212;
接收单元211用于接收至少两个参与方发送的原始图节点ID;
确定单元212用于根据原始图节点ID确定至少两个参与方之间的交集图节点ID。
在具体实施过程中,各个参与方进行图节点ID的某一个特定规则的hash (散列函数),产生图节点ID(图节点ID可以是用户的手机号或身份证号,也可以为其他号码)脱敏后的数据(即密态数据)。各个参与方将脱敏后的图节点ID发送至服务器。服务器收集各个参与方发送来的密态图节点ID,并进行参与方之间节点ID的两两求交,或三者之间的求交,或者多者之间的求交。
在一可实施的方案中,如图6所示,该嵌入系统还包括接收模块24、第二处理模块25和第二发送模块26;
接收模块24用于接收至少两个参与方发送的交集图节点ID的向量表示;
第二处理模块25用于对交集图节点ID的向量表示进行均值化处理,以得到均值化后的交集图节点ID的向量表示;
第二发送模块26用于将均值化后的交集图节点ID的向量表示按照每个参与方的交集图节点ID发送至对应的参与方,以使每个参与方根据接收到的均值化后的交集图节点ID的向量表示替换均值化处理前的交集图节点ID 的向量表示,每个参与方根据均值化后的交集图节点ID的向量表示按照预设迭代训练次数训练各自的神经网络。
在具体实施过程中,每个参与方将各自的交集图节点ID的向量表示发送至服务器,服务器对接收到的交集图节点ID的向量表示进行均值化操作,而后将均值化后的交集图节点ID的向量表示按照各个参与方拥有的交集图节点ID发送至对应的参与方,每个参与方根据接收到的均值化后的交集图节点ID的向量表示替换均值化处理前的交集图节点ID的向量表示(即每个参与方根据接收到的均值化后的交集图节点ID的向量表示替换掉原始交集图节点ID的向量表示),各个参与方再进行下一批次的训练,直到达到最大训练批次,即每个参与方根据均值化后的交集图节点ID的向量表示按照预设迭代训练次数训练各自的神经网络。
在一可实施的方案中,第一处理模块23用于接收每个参与方发送的N 度关系,并将至少两个参与方的N度关系分别发送至每个参与方,以使每个参与方将各自的N度关系与其他参与方的N度关系进行对比,以生成各自待添加的虚拟图节点ID;
或,第一处理模块23用于接收每个参与方发送的N度关系,并将至少两个参与方的N度关系分别发送至每个参与方,以使每个参与方将各自的N 度关系与其他参与方的N度关系进行对比,以生成各自待添加的虚拟边;
或,第一处理模块23用于接收每个参与方发送的N度关系,并将至少两个参与方的N度关系分别发送至每个参与方,以使每个参与方将各自的N 度关系与其他参与方的N度关系进行对比,以生成各自待添加的虚拟图节点 ID和虚拟边。
在一可实施的方案中,接收单元211具体用于接收至少两个参与方发送的加密后的原始图节点ID;
本实施例中,加密后的原始图节点ID为密态数据(即脱敏后的数据)。
确定单元212具体用于根据加密后的原始图节点ID确定至少两个参与方之间的交集图节点ID。
下面结合具体实例说明:
例如,以三个参与方为例,三个参与方进行图节点ID的某一个特定规则的hash,产生图节点ID脱敏后的数据(即密态数据)。三个参与方将脱敏后的图节点ID发送至服务器。服务器收集三个参与方发送来的密态图节点 ID,并进行参与方之间图节点ID的两两求交。如A参与方图节点ID为: {1,2,3,4,5,6},B参与方图节点ID为:{2,3,7,8,9,10},C参与方图节点ID为: {4,5,6,7,8,11,12},则A∩B={2,3},A∩C={4,5,6},B∩C={7,8}。服务器将三个参与方图节点ID的两两求交结果分别同步至各个参与方,如服务器发送至A参与方公共图节点(即交集图节点ID){2,3,4,5,6},发送至B参与方公共图节点{2,3,7,8},发送至C参与方公共图节点{4,5,6,7,8}。三个参与方进行Graph Embedding(图嵌入)节点向量的训练,即各个参与方同时迭代训练相同次数。在三个参与方进行Graph Embedding节点向量的训练之前,需要基于公共图节点,对各自参与方图上加入虚拟图节点和/或虚拟边,用于各个参与方更加充分的训练各自的神经网络。添加虚拟图节点和/或虚拟边过程,如图4所示,A参与方在图节点4,5之间添加一条虚拟边,二度关系原因是在C参与方中4和5图节点存在更近的一条距离关系(即A参与方基于C 参与方中4和5图节点之间的距离关系在自身的图节点4,5之间添加一条虚拟边);B参与方在图节点2,3之间添加一个虚拟图节点和两个虚拟边,原因是在A参与方图节点2,3之间存在两条距离关系,因此在B参与方添加一个虚拟图节点x’,2与x’的虚拟边和3与x’虚拟边,在B参与方形成图节点2,3之间存在两条虚拟距离关系。同理,C参与方图节点7与8之间添加一条虚拟边,原因是B参与方的图节点7与8之间存在更近的一条距离关系。添加虚拟图节点和虚拟边的过程是在参与方与参与方之间进行的,添加过程不需要服务器参与计算。
当三个参与方添加虚拟图节点和虚拟边(虚拟边可以增加归一化权重值) 后,三个参与方各自进行图嵌入的训练过程。当训练完成指定相同迭代次数后,参与方将公共图节点对应的训练结果向量发送给服务器,服务器对接收到的公共图节点向量进行均值化操作,如图5所示,将均值化结果向量按照三个参与方拥有的公共图节点发送至对应的参与方,如:将均值化后的 2,3,4,5,6图节点向量同步至A参与方,将均值化后的2,3,7,8图节点向量同步至B参与方,将均值化后的4,5,6,7,8图节点向量同步至C参与方。三个参与方的均值化后的图节点向量替换掉相应的原始节点向量,三个参与方再进行下一批次的训练,直到达到最大训练批次数。需要说明的是,最大训练次数根据实际情况进行设置。
本实施例中,联邦学习是一种机器学习框架,针对数据孤岛和数据隐私的两难问题,多家机构和学者提出的解决方案,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模。
另外,利用图数据结构进行机器学习建模越来越受到人们的重视,尤其在金融行业、电商行业等领域。图数据结构存在天然的优势,点边结构的数据是天然贴近现实世界,能直观表达现实世界中的实体及其对应关联关系。利用这种天然的图数据结构作为机器学习的输入,可以更加容易、准确地进行建模、分类、回归等任务。然而,图节点的低维向量表示的准确性至关重要。优秀、完整地节点向量表示直接影响下游机器学习的建模结果。而本实施例使用多个参与方业务图数据集进行联邦化的图嵌入训练,保证每个参与方不公开本地源数据的情况下,能够准确的获取更加有效地图节点向量表示。
需要说明的是,多个参与方在进行联邦化图节点嵌入计算过程中,各个参与方无法直接获取对方实际节点或边数据,使得各个参与方的图数据得到了保护。而本实施例基于联邦化进行图节点嵌入相比各个参与方独立训练得到的节点向量结果会更加合理有效。
本实施例基于多个参与方进行联邦化图节点嵌入计算,进行交集图节点的均值化向量同步,以及虚拟图节点和/或虚拟边的添加,不相互公开各自图数据的实际值,使用多个参与方图节点ID进行联邦化的图嵌入训练,在保证每个参与方不公开本地源数据的情况下,能够准确的获取更加有效地图节点向量表示。
实施例3
图7为本发明实施例3提供的一种电子设备的结构示意图。电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现实施例1的图节点的嵌入方法。图7显示的电子设备30 仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,电子设备30可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备30的组件可以包括但不限于:上述至少一个处理器31、上述至少一个存储器32、连接不同系统组件(包括存储器32和处理器31)的总线33。
总线33包括数据总线、地址总线和控制总线。
存储器32可以包括易失性存储器,例如随机存取存储器(RAM)321和/ 或高速缓存存储器322,还可以进一步包括只读存储器(ROM)323。
存储器32还可以包括具有一组(至少一个)程序模块324的程序/实用工具325,这样的程序模块324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
处理器31通过运行存储在存储器32中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1的图节点的嵌入方法。
电子设备30也可以与一个或多个外部设备34(例如键盘、指向设备等) 通信。这种通信可以通过输入/输出(I/O)接口35进行。并且,模型生成的设备30还可以通过网络适配器36与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图7所示,网络适配器36 通过总线33与模型生成的设备30的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的设备30使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
实施例4
本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现实施例1所提供的图节点的嵌入方法。
其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行实现实施例1所述的图节点的嵌入方法。
其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
Claims (10)
1.一种图节点的嵌入方法,其特征在于,所述嵌入方法包括:
确定至少两个参与方之间的交集图节点ID;
将所述交集图节点ID分别发送至每个所述参与方,以使每个所述参与方根据接收到的交集图节点ID计算并发送各自的N度关系;
接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方基于其他参与方的N度关系生成各自待添加的虚拟图,每个所述参与方根据添加虚拟图后的原始图节点ID按照预设迭代训练次数训练各自的神经网络,每个所述参与方从训练后的神经网络中获取并发送各自交集图节点ID的向量表示。
2.如权利要求1所述的图节点的嵌入方法,其特征在于,所述确定所述至少两个参与方之间的交集图节点ID的步骤包括:
接收至少两个参与方发送的原始图节点ID;
根据所述原始图节点ID确定所述至少两个参与方之间的交集图节点ID;
和/或,
所述嵌入方法还包括:
接收所述至少两个参与方发送的交集图节点ID的向量表示;
对所述交集图节点ID的向量表示进行均值化处理,以得到均值化后的交集图节点ID的向量表示;
将所述均值化后的交集图节点ID的向量表示按照每个所述参与方的交集图节点ID发送至对应的参与方,以使每个所述参与方根据接收到的所述均值化后的交集图节点ID的向量表示替换均值化处理前的所述交集图节点ID的向量表示,每个所述参与方根据所述均值化后的交集图节点ID的向量表示按照预设迭代训练次数训练各自的神经网络。
3.如权利要求1所述的图节点的嵌入方法,其特征在于,所述接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方基于其他参与方的N度关系生成各自待添加的虚拟图的步骤包括:
接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方将各自的N度关系与所述其他参与方的N度关系进行对比,以生成各自待添加的虚拟图节点ID;
或,
所述接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方基于其他参与方的N度关系生成各自待添加的虚拟图的步骤包括:
接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方将各自的N度关系与所述其他参与方的N度关系进行对比,以生成各自待添加的虚拟边;
或,
所述接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方基于其他参与方的N度关系生成各自待添加的虚拟图的步骤包括:
接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方将各自的N度关系与所述其他参与方的N度关系进行对比,以生成各自待添加的虚拟图节点ID和虚拟边。
4.如权利要求2所述的图节点的嵌入方法,其特征在于,所述接收至少两个参与方发送的原始图节点ID的步骤包括:
接收所述至少两个参与方发送的加密后的原始图节点ID;
所述根据所述原始图节点ID确定所述至少两个参与方之间的交集图节点ID的步骤包括:
根据所述加密后的原始图节点ID确定所述至少两个参与方之间的交集图节点ID。
5.一种图节点的嵌入系统,其特征在于,所述嵌入系统包括确定模块、第一发送模块和第一处理模块;
所述确定模块用于确定至少两个参与方之间的交集图节点ID;
所述第一发送模块用于将所述交集图节点ID分别发送至每个所述参与方,以使每个所述参与方根据接收到的交集图节点ID计算并发送各自的N度关系;
所述第一处理模块用于接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方基于其他参与方的N度关系生成各自待添加的虚拟图,每个所述参与方根据添加虚拟图后的原始图节点ID按照预设迭代训练次数训练各自的神经网络,每个所述参与方从训练后的神经网络中获取并发送各自交集图节点ID的向量表示。
6.如权利要求5所述的图节点的嵌入系统,其特征在于,所述确定模块包括接收单元和确定单元;
所述接收单元用于接收至少两个参与方发送的原始图节点ID;
所述确定单元用于根据所述原始图节点ID确定所述至少两个参与方之间的交集图节点ID;
和/或,
所述嵌入系统还包括接收模块、第二处理模块和第二发送模块;
所述接收模块用于接收所述至少两个参与方发送的交集图节点ID的向量表示;
所述第二处理模块用于对所述交集图节点ID的向量表示进行均值化处理,以得到均值化后的交集图节点ID的向量表示;
所述第二发送模块用于将所述均值化后的交集图节点ID的向量表示按照每个所述参与方的交集图节点ID发送至对应的参与方,以使每个所述参与方根据接收到的所述均值化后的交集图节点ID的向量表示替换均值化处理前的所述交集图节点ID的向量表示,每个所述参与方根据所述均值化后的交集图节点ID的向量表示按照预设迭代训练次数训练各自的神经网络。
7.如权利要求5所述的图节点的嵌入系统,其特征在于,所述第一处理模块用于接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方将各自的N度关系与所述其他参与方的N度关系进行对比,以生成各自待添加的虚拟图节点ID;
或,
所述第一处理模块用于接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方将各自的N度关系与所述其他参与方的N度关系进行对比,以生成各自待添加的虚拟边;
或,
所述第一处理模块用于接收每个所述参与方发送的N度关系,并将所述至少两个参与方的N度关系分别发送至每个所述参与方,以使每个所述参与方将各自的N度关系与所述其他参与方的N度关系进行对比,以生成各自待添加的虚拟图节点ID和虚拟边。
8.如权利要求6所述的图节点的嵌入系统,其特征在于,所述接收单元具体用于接收所述至少两个参与方发送的加密后的原始图节点ID;
所述确定单元具体用于根据所述加密后的原始图节点ID确定所述至少两个参与方之间的交集图节点ID。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-4中任一项所述的图节点的嵌入方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-4中任一项所述的图节点的嵌入方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211160818.0A CN115796229A (zh) | 2022-09-22 | 2022-09-22 | 图节点的嵌入方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211160818.0A CN115796229A (zh) | 2022-09-22 | 2022-09-22 | 图节点的嵌入方法、系统、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115796229A true CN115796229A (zh) | 2023-03-14 |
Family
ID=85432126
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211160818.0A Pending CN115796229A (zh) | 2022-09-22 | 2022-09-22 | 图节点的嵌入方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115796229A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116633704A (zh) * | 2023-07-25 | 2023-08-22 | 北京数牍科技有限公司 | 图计算方法和装置 |
CN117592112A (zh) * | 2024-01-17 | 2024-02-23 | 蓝象智联(杭州)科技有限公司 | 一种基于图融合的联邦页面排名计算方法 |
-
2022
- 2022-09-22 CN CN202211160818.0A patent/CN115796229A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116633704A (zh) * | 2023-07-25 | 2023-08-22 | 北京数牍科技有限公司 | 图计算方法和装置 |
CN116633704B (zh) * | 2023-07-25 | 2023-10-31 | 北京数牍科技有限公司 | 图计算方法和装置 |
CN117592112A (zh) * | 2024-01-17 | 2024-02-23 | 蓝象智联(杭州)科技有限公司 | 一种基于图融合的联邦页面排名计算方法 |
CN117592112B (zh) * | 2024-01-17 | 2024-04-05 | 蓝象智联(杭州)科技有限公司 | 一种基于图融合的联邦页面排名计算方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113094200B (zh) | 一种应用程序的故障预测方法和装置 | |
CN115796229A (zh) | 图节点的嵌入方法、系统、设备及存储介质 | |
CN113961759B (zh) | 基于属性图表示学习的异常检测方法 | |
CN112231592B (zh) | 基于图的网络社团发现方法、装置、设备以及存储介质 | |
CN112925914B (zh) | 数据安全分级方法、系统、设备及存储介质 | |
CN111932386A (zh) | 用户账号确定方法及装置、信息推送方法及装置、电子设备 | |
WO2022156084A1 (zh) | 基于人脸和交互文本的目标对象行为预测方法及相关设备 | |
CN113821418B (zh) | 故障根因分析方法及装置、存储介质和电子设备 | |
Faheem et al. | Multilayer cyberattacks identification and classification using machine learning in internet of blockchain (IoBC)-based energy networks | |
Wang et al. | Blockchain-Based Decentralized Reputation Management System for Internet of Everything in 6G-Enabled Cybertwin Architecture. | |
Chen et al. | Digital twins to fight against COVID-19 pandemic | |
Wang et al. | Nlp-based cross-layer 5g vulnerabilities detection via fuzzing generated run-time profiling | |
CN110717116B (zh) | 关系网络的链接预测方法及系统、设备、存储介质 | |
Zhang et al. | End‐to‐end generation of structural topology for complex architectural layouts with graph neural networks | |
CN113468497A (zh) | 一种基于物联网的信息保护系统 | |
CN109784525A (zh) | 基于天空地一体化数据的预警方法及装置 | |
Yao et al. | A model of the enterprise supply chain risk propagation based on partially mapping two-layer complex networks | |
CN115713424A (zh) | 风险评估方法、风险评估装置、设备及存储介质 | |
CN116049678A (zh) | 特征贡献度评估方法、装置、电子设备和存储介质 | |
Krundyshev | Neural network approach to assessing cybersecurity risks in large-scale dynamic networks | |
CN114900364A (zh) | 基于溯源图和异构图神经网络的高级持续威胁检测方法 | |
CN117033997A (zh) | 数据切分方法、装置、电子设备和介质 | |
CN117375855A (zh) | 一种异常检测方法、模型训练方法及相关设备 | |
Niu et al. | Implementation of network information security monitoring system based on adaptive deep detection | |
Liu | Simulation Training Auxiliary Model Based on Neural Network and Virtual Reality Technology |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |