多方联合训练图神经网络的方法及装置制造方法及图纸

技术编号:39848608 阅读:11 留言:0更新日期:2023-12-29 16:47
本说明书实施例提供一种多方联合训练图神经网络的方法及装置,其中供图方持有包含多个节点的关系网络图,样本方持有至少部分节点特征或至少部分节点标签,中立方部署有图神经网络

【技术实现步骤摘要】
多方联合训练图神经网络的方法及装置


[0001]本说明书一个或多个实施例涉及机器学习
,尤其涉及一种保护数据隐私的多方联合训练图神经网络的方法及装置

一种计算机可读存储介质,以及一种计算设备


技术介绍

[0002]关系网络图是对现实世界中实体之间的关系的描述,一般包含一个节点集合和一个边集合,节点表示现实世界中的实体,边表示现实世界中实体之间的联系

例如,在社交网络中,人就是实体,人和人之间的关系或联系就是边

[0003]关系网络图的拓扑结构能反映现实世界中的复杂关系,因而在社交平台

推荐系统应用中有着举足轻重的作用

如图1所示,在推荐

欺诈检测和疾病传播等业务场景中,不同服务方各自持有相应场景的样本特征和标签数据,如果能够进一步引入丰富的社交网络数据训练机器学习模型,将极大提高对应业务场景下的预测准确率和业务质量

[0004]联邦学习(
Federated Learning
,简称
FL
)提供了一种可行的数据合作方案,
FL
是一种保护数据隐私的机器学习框架,可以让多个数据方在不暴露各自原始数据隐私的情况下,共同训练一个机器学习模型

示例性的,在引入图数据的
FL
场景下,图数据方持有实体节点的连接关系特征,例如用户节点与哪些用户节点具有社交关系等,其他数据方持有实体节点的其他特征或标签数据,例如用户节点的兴趣爱好或在电商平台中的点击数据等

[0005]但是,目前缺乏针对大型图谱进行
FL
学习的研究

由此,本说明书实施例提出了一种多方联合训练图神经网络(
Graph Neural Network
,简称
GNN
)的方案,其中
GNN
可以用于直接处理图结构数据,该方案在图结构数据量级较大的情况下优势尤为突出


技术实现思路

[0006]本说明书实施例描述一种多方联合训练图神经网络的方法及装置,可以满足实际应用中的更高要求

[0007]根据第一方面,提供一种多方联合训练图神经网络的方法,其中供图方持有包含多个节点的关系网络图,样本方持有至少部分节点特征或至少部分节点标签,中立方部署有图神经网络;所述方法涉及针对所述多个节点的多轮遍历训练

其中任一轮遍历训练包括:
[0008]所述供图方和样本方各自根据当前批次的节点标识对应的本地数据,与所述中立方进行交互;所述当前批次是针对本轮遍历训练将所述多个节点进行随机划分得到的多个批次之一,该交互使得所述中立方利用所述图神经网络得到对应当前批次节点的本轮表征向量

所述中立方在所述本轮表征向量中融合上一轮遍历训练得到的对应当前批次节点的历史表征向量,作为目标表征向量,以及,将所述历史表征向量更新为所述目标表征向量

所述中立方基于所述目标表征向量和所述当前批次对应的标签数据,完成所述图神经网络针对所述当前批次的迭代更新

[0009]在一个实施例中,所述样本方为多个样本方,所述多个节点对应的特征和至少部
分节点的标签数据垂直分布于所述多个样本方

[0010]根据第二方面,提供一种多方联合训练图神经网络的方法,其中供图方持有包含多个节点的关系网络图,样本方持有至少部分节点特征或至少部分节点标签,中立方部署有图神经网络;所述方法涉及针对所述多个节点的多轮遍历训练

在任一轮遍历训练中所述中立方执行以下步骤:
[0011]通过与所述供图方和样本方进行针对当前批次的节点标识的交互,利用所述图神经网络得到对应当前批次节点的本轮表征向量;所述当前批次是针对本轮遍历训练将所述多个节点进行随机划分得到的多个批次之一;其中供图方和样本方各自根据所述当前批次的节点标识对应的本地数据参与交互

在所述本轮表征向量中融合上一轮遍历训练得到的对应当前批次节点的历史表征向量,作为目标表征向量,以及,将所述历史表征向量更新为所述目标表征向量

基于所述目标表征向量和所述当前批次对应的标签数据,完成所述图神经网络针对所述当前批次的迭代更新

[0012]在一个实施例中,其中在任一轮遍历训练中所述中立方还执行以下步骤:在本轮遍历训练中,将所述多个节点进行随机划分得到多批次节点标识;将所述多批次节点标识逐批次作为当前批次的节点标识,发送至所述供图方和样本方

[0013]在一个实施例中,所述中立方还执行以下步骤:将首个训练轮次的上一训练轮次对应的各个历史表征向量分别初始化为零向量

[0014]根据第三方面,提供一种多方联合训练图神经网络的方法,其中供图方持有包含多个节点的关系网络图,样本方持有至少部分节点特征或至少部分节点标签,中立方部署有图神经网络;所述方法涉及针对所述多个节点的多轮遍历训练

在任一轮遍历训练中所述供图方执行以下步骤:
[0015]根据当前批次的节点标识,从所述关系网络图中提取包含该批次节点的子图;所述当前批次是针对本轮遍历训练将所述多个节点进行随机划分得到的多个批次之一

基于所述子图与所述样本方和中立方进行交互,使得所述中立方利用所述图神经网络得到对应当前批次节点的本轮表征向量;其中样本方根据所述当前批次的节点标识对应的本地特征数据参与交互

其中,所述本轮表征向量用于融合上一训练轮次得到的对应当前批次节点的历史表征向量,作为目标表征向量;所述目标表征向量用于更新所述历史表征向量,还用于结合所述当前批次对应的标签数据完成所述图神经网络针对所述当前批次的迭代更新

[0016]在一个实施例中,在根据当前批次的节点标识,从所述关系网络图中提取对应的子图之前,所述方法还包括:获取所述关系网络图的原始版本

基于所述原始版本,在其中各个节点与对应的
k
阶邻居节点之间添加连接边,得到所述关系网络图的更新版本,用于提取所述子图;其中
k
为大于1的整数

[0017]在一个实施例中,基于所述子图与所述样本方和中立方进行交互,包括:在所述子图中随机地添加和
/
或删除连接边,作为更新后的子图;利用所述更新后的子图参与所述交互

[0018]在一个实施例中基于所述子图与所述样本方和中立方进行交互,包括:将所述子图的结构数据从稀疏数据形式转换为非稀疏的预定数据形式;采用所述预定数据形式支持的同态加密算法,对转换后的子图结构数据进行同态加密;利用所述同态加密得到的密文参与所述交互

[0019]根据第四方面,提供一种多方联合训练本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种多方联合训练图神经网络的方法,其中供图方持有包含多个节点的关系网络图,样本方持有至少部分节点特征或至少部分节点标签,中立方部署有图神经网络;所述方法涉及针对所述多个节点的多轮遍历训练;其中任一轮遍历训练包括:所述供图方和样本方各自根据当前批次的节点标识对应的本地数据,与所述中立方进行交互;所述当前批次是针对本轮遍历训练将所述多个节点进行随机划分得到的多个批次之一,该交互使得所述中立方利用所述图神经网络得到对应当前批次节点的本轮表征向量;所述中立方在所述本轮表征向量中融合上一轮遍历训练得到的对应当前批次节点的历史表征向量,作为目标表征向量,以及,将所述历史表征向量更新为所述目标表征向量;所述中立方基于所述目标表征向量和所述当前批次对应的标签数据,完成所述图神经网络针对所述当前批次的迭代更新
。2.
根据权利要求1所述的方法,其中,所述样本方为多个样本方,所述多个节点对应的特征和至少部分节点的标签数据垂直分布于所述多个样本方
。3.
一种多方联合训练图神经网络的方法,其中供图方持有包含多个节点的关系网络图,样本方持有至少部分节点特征或至少部分节点标签,中立方部署有图神经网络;所述方法涉及针对所述多个节点的多轮遍历训练;在任一轮遍历训练中所述中立方执行以下步骤:通过与所述供图方和样本方进行针对当前批次的节点标识的交互,利用所述图神经网络得到对应当前批次节点的本轮表征向量;所述当前批次是针对本轮遍历训练将所述多个节点进行随机划分得到的多个批次之一;其中供图方和样本方各自根据所述当前批次的节点标识对应的本地数据参与交互;在所述本轮表征向量中融合上一轮遍历训练得到的对应当前批次节点的历史表征向量,作为目标表征向量,以及,将所述历史表征向量更新为所述目标表征向量;基于所述目标表征向量和所述当前批次对应的标签数据,完成所述图神经网络针对所述当前批次的迭代更新
。4.
根据权利要求3所述的方法,其中在任一轮遍历训练中所述中立方还执行以下步骤:在本轮遍历训练中,将所述多个节点进行随机划分得到多批次节点标识;将所述多批次节点标识逐批次作为当前批次的节点标识,发送至所述供图方和样本方
。5.
根据权利要求3所述的方法,其中,所述中立方还执行以下步骤:将首个训练轮次的上一训练轮次对应的各个历史表征向量分别初始化为零向量
。6.
一种多方联合训练图神经网络的方法,其中供图方持有包含多个节点的关系网络图,样本方持有至少部分节点特征或至少部分节点标签,中立方部署有图神经网络;所述方法涉及针对所述多个节点的多轮遍历训练;在任一轮遍历训练中所述供图方执行以下步骤:根据当前批次的节点标识,从所述关系网络图中提取包含该批次节点的子图;所述当前批次是针对本轮遍历训练将所述多个节点进行随机划分得到的多个批次之一;基于所述子图与所述样本方和中立方进行交互,使得所述中立方利用所述图神经网络得到对应当前批次节点的本轮表征向量;其中样本方根据所述当前批次的节点标识对应的
本地特征数据参与交互;其中,所述本轮表征向量用于融合上一训练轮次得到的对应当前批次节点的历史表征向量,作为目标表征向量;所述目标表征向量用于更新所述历史表征向量,还用于结合所述当前批次对应的标签数据完成所述图神经网络针对所述当前批次的迭代更新
。7.
根据权利要求6所述的方法,其中,在根据当前批次的节点标识,从所述关系网络图中提取对应的子图之前,所述方法还包括:获取所述关系网络图的原始版本;基于所述原始版本,在其中各个节点与对应的
k
阶邻居节点之间添加连接边,得到所述关系网络图的更新版本,用于提取所述子图;其中
k
为大于1的整数
。8.
根据权利要求6或7所述的方法,其中,基于所述子图与所述样本方和中立方进行交互,包括:在所述子图中随机地添加和
/
或删除连接边,作为更新后的子图;利用所述更新后的子图参与所述交互
。9.
根据权利要求6或7所述的方法,其中,基于所述子图与所述样本方和中立方进行交互,包括:将所述子图的结构数据从稀疏数据形式转换为非稀疏的预定数据形式;采用所述预定数据形式支持的同态加密算法,对转换后的子图结构数据进行同态加密;利用所述同态加密得到的密文参与所述交互
。10.
一种多方联合训练图神经网络的方法,其中供图方持有包含多个节点的关系网络图,样本方持有至少部分节点特征或至少部分节点标签,中立方部署有图神经网络;所述方法涉及针对所述多个节点的多轮遍历训练;在任一轮遍历训练中所述样本方执行以下步骤:根据当前批次的节点标识,从所述多个节点对应的特征中提取当前批次特征;所述当前批次是针对本轮遍历训练将所述多个节点进行随机划分得到的多个批次之一;基于所述当前批次特征与所述中立方和供图方进行交互,使得所述中立方利用所述图神经网络得到对应当前批次节点的本轮表征向量;其中供图方根据所述当前批次的节点标识对应的本地子图数据参与交互;其中,所述本轮表征向量用于融合上一训练轮次得到的对应当前批次节点的历史表征向量,作为目标表征向量;所述目标表征向量用于更新所述历史表征向量,还用于结合所述当前批次对应的标签数据完成所述图神经网络针对所述当前批次的迭代更新
。11.
根据权利要求
10
所述的方法,其中,基于所述当前批次特征与所述中立方和供图方进行交互,包括:利用本地部署的嵌入模型处理所述当前批次特征,得到当前批次的节点嵌入向量;利用所述节点嵌入向量参与所述交互
。12.
根据权利要求
11
所述的方法,还包括:利用基于所述目标特征向量和所述当前批次对应的标签而确定的回传梯度,完成所述嵌入模型针对所述当前批次的迭代更新
。13.
根据权利要求
10
所述的方法,其中,所述样本方为多个样本方,所述多个节点对应
的特征和至少部分节点的标签数据垂直分布于所述多个样本方
。14.
一种多方联合训练图神经网络的方法,其中供图方持有包含多个节点的关系网络图,若干样本方持有至少部分节点特征或至少部分节点标签,所述若干样本方中的指定方部署有图神经网络;所述方法涉及针对所述多个节点的多轮遍历训练;其中任一轮遍历训练包括:所述供图方和若干样本方各自根据当前批次的节点标识对应的本地数据进行交互;所述当前批次是针对本轮遍历训练将所述多个节点进行随机划分得到的多个批次之一,该交互使得所述指定方利用所述图神经网络得到对应当前批次节点的本轮表征向量;所述指定方在所述本轮表征向量中融合上一轮遍历训练得到的对应当前批次节点的历史表征向量,作为目标表征向量,以及,将所述历史表征向量更新为所述目标表征向量;所述指定方基于所述目标表征向量和所述当前批次对应的标签数据,完成所述图神经网络针对所述当前批次的迭代更新
。15.
一种多方联合训练图神经网络的方法,其中供图方持有包含多个节点的关系网络图,若干样本方持有至少部分节点特征或至少部分节点标签,所述若干样本方中的指定方部署有图神经网络;所...

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

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

1