联合更新模型的方法、装置及系统制造方法及图纸

技术编号:29979892 阅读:16 留言:0更新日期:2021-09-08 10:11
本说明书实施例提供一种联合更新模型的方法、装置及系统,在当前同步周期,各个数据方在利用本地训练样本在本地更新完模型对应的待同步参数后,可以利用本地当前的带宽,以及服务方针对单个同步周期的最大等待时长,确定在当前同步周期需向服务器上传的待同步参数数量。之后,可以根据需向服务器上传的待同步参数数量从待同步参数集中选择相应的待同步参数上传至服务方。服务方在最大等待时长到达时,将各个数据方分别发送的若干待同步参数进行聚合,形成同步参数集,反馈给各个数据方用于当前同步周期的数据同步。这种实施方式可以避免通信阻塞,提高训练效率。提高训练效率。提高训练效率。

【技术实现步骤摘要】
联合更新模型的方法、装置及系统


[0001]本说明书一个或多个实施例涉及计算机
,尤其涉及联合更新模型的方法、装置及系统。

技术介绍

[0002]计算机技术的发展,使得机器学习在各种各样的业务场景中得到越来越广泛的应用。联邦学习是一种在保护隐私数据情况下进行联合建模的方法。例如,企业与企业之间需要进行合作安全建模,可以进行联邦学习,以便在充分保护企业数据隐私的前提下,使用各方的数据对数据处理模型进行协作训练,从而更准确、有效地处理业务数据。在联邦学习场景中,各方例如可以商定模型结构(或约定模型)后,各自使用隐私数据在本地进行训练,并将模型参数使用安全可信的方法进行聚合,最后各方根据聚合后模型参数改进本地模型。联邦学习实现在隐私保护基础上,有效打破数据孤岛,实现多方联合建模。
[0003]然而,随着任务复杂性和对性能要求的逐渐提升,联邦学习中的模型网络层数呈逐渐加深的趋势,模型参数也相应的越来越多。以人脸识别ResNET

50为例,原始模型拥有超过2000万个参数,模型大小超过100MB。特别是在一些参与联邦学习的训练成员较多的场景中,服务器接收的数据呈几何倍数上升,可能造成通信阻塞,严重影响整体训练的效率。

技术实现思路

[0004]本说明书一个或多个实施例描述了一种联合更新模型的方法及装置,用以解决
技术介绍
提到的一个或多个问题。
[0005]根据第一方面,提供一种联合更新模型的方法,用于通过服务方和k个数据方联合训练模型,服务方预先设定有单个同步周期的最大等待时长T,所述k个数据方包括数据方i,在当前同步周期,所述方法包括:数据方i利用本地训练样本更新模型对应的M个待同步参数,所述待同步参数为模型中的待定参数,或者待定参数的梯度;数据方i获取当前的本地带宽v
i
,并基于当前的本地带宽v
i
和最大等待时长T确定当前同步周期上传的待同步参数数量m
i
,进而按照预定方式从M个待同步参数中选择m
i
个待同步参数将其更新值发送至服务方;服务方接收数据方i发送的m
i
个待同步参数的更新值,以及其他数据方发送的其他待同步参数的更新值,从而将各个待同步参数的更新值聚合为同步参数集W
t
,并反馈给包括所述数据方i在内的各个数据方;数据方i利用同步参数集W
t
,更新本地模型中的待定参数,从而更新本地模型。
[0006]根据第二方面,提供一种用于联合更新模型的方法,适用于通过服务方和k个数据方共同训练模型的过程,服务方预先设定有单个同步周期的最大等待时长T,所述k个数据方包括数据方i,所述方法由所述数据方i执行,在当前同步周期,所述方法包括:利用本地训练样本更新模型对应的M个待同步参数,所述待同步参数为模型中的待定参数,或者待定参数的梯度;获取当前的本地带宽v
i
;基于当前的本地带宽v
i
和最大等待时长T确定当前同步周期上传的待同步参数数量m
i
;按照预定方式从M个待同步参数中选择m
i
个待同步参数发
送至服务方,以供服务方根据第一数据方i发送的m
i
个待同步参数以及其他数据方发送的其他待同步参数,将各个待同步参数聚合为同步参数集W
t
;利用服务方反馈的同步参数集W
t
,更新本地模型中的待定参数,从而更新本地模型。
[0007]在一个实施例中,所述基于当前的本地带宽v
i
和最大等待时长T确定当前同步周期上传的待同步参数数量m
i
包括:利用当前的本地带宽v
i
和最大等待时长T的乘积确定在当前同步周期的最大数据传输量S
i
;根据单个待同步参数在数据传输过程中所占空间和最大数据传输量S
i
,确定待同步参数数量m
i
,其中,m
i
不大于最大数据传输量S
i
与单个待同步参数在数据传输过程中所占空间的比值。
[0008]在一个实施例中,所述利用本地训练样本更新模型对应的待同步参数集中的M个待同步参数的数据处理时长为T',所述最大数据传输量S
i
为:v
i
×
(T

T')。
[0009]在一个实施例中,所述基于当前的本地带宽v
i
和最大等待时长T确定当前同步周期上传的待同步参数数量m
i
包括:利用当前的本地带宽v
i
和最大等待时长T的乘积确定在当前同步周期的最大数据传输量S
i
;按照当前周期的最大数据传输量S
i
和M个待同步参数所占数据空间C确定当前周期的数据压缩率;将待同步参数总数量M按照所述数据压缩率进行压缩,从而确定要选择的待同步参数数量m
i

[0010]在一个实施例中,服务方在当前同步周期针对第一数据方i具有可接受的最大数据量为S
i
';所述基于当前的本地带宽v
i
和最大等待时长T确定当前同步周期上传的待同步参数数量m
i
包括:比较S
i
和S
i
'中的较小值;以在当前同步周期上传的数据量不大于所述较小值为目标,确定待同步参数数量m
i

[0011]在一个实施例中,服务方为辅助k个数据方同步更新业务数据预留的数据处理空间为C
s
,服务方在当前同步周期针对第一数据方i具有的可接受的最大数据量S
i
'为C
s
/k。
[0012]在一个实施例中,所述从M个待同步参数中选择m
i
个待同步参数的预定方式为:从M个待同步参数随机选择m
i
个待同步参数;或者,按照M个待同步参数的绝对值从大到小的顺序,选择m
i
个待同步参数。
[0013]在一个实施例中,所述按照预定方式从M个待同步参数中选择m
i
个待同步参数发送至服务方包括,利用以下之一的方式将m
i
个待同步参数发送至服务方:通过预先约定的m
i
个唯一性参数标识分别标识m
i
个待同步参数,以供服务方通过以下方式将各个待同步参数聚合为同步参数集W
t
:针对单个待同步参数,统计从各个数据方所收到的若干个更新值;将所述若干个更新值按照取最大值、取最小值、取中位数、取均值、加权平均之一的方式聚合,得到该单个待同步参数的同步参数值,以加入同步参数集W
t

[0014]在一个实施例中,所述按照预定方式从M个待同步参数中选择m
i
个待同步参数发送至服务方包括,利用以下之一的方式将m
i
个待同步参数的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种联合更新模型的方法,用于服务方和k个数据方联合训练模型,服务方预先设定有单个同步周期的最大等待时长T,所述k个数据方包括数据方i,在当前同步周期,所述方法包括:数据方i利用本地训练样本更新模型对应的M个待同步参数,所述待同步参数为模型中的待定参数,或者待定参数的梯度;数据方i获取当前的本地带宽v
i
,并基于当前的本地带宽v
i
和最大等待时长T确定当前同步周期上传的待同步参数数量m
i
,进而按照预定方式从M个待同步参数中选择m
i
个待同步参数将其更新值发送至服务方;服务方接收数据方i发送的m
i
个待同步参数的更新值,以及其他数据方发送的其他待同步参数的更新值,从而将各个待同步参数的更新值聚合为同步参数集W
t
,并反馈给包括所述数据方i在内的各个数据方;数据方i利用同步参数集W
t
,更新本地模型中的待定参数,从而更新本地模型。2.一种用于联合更新模型的方法,适用于服务方和k个数据方共同训练模型的过程,服务方预先设定有单个同步周期的最大等待时长T,所述k个数据方包括数据方i,所述方法由所述数据方i执行,在当前同步周期,所述方法包括:利用本地训练样本更新模型对应的M个待同步参数,所述待同步参数为模型中的待定参数,或者待定参数的梯度;获取当前的本地带宽v
i
;基于当前的本地带宽v
i
和最大等待时长T确定当前同步周期上传的待同步参数数量m
i
;按照预定方式从M个待同步参数中选择m
i
个待同步参数发送至服务方,以供服务方根据第一数据方i发送的m
i
个待同步参数以及其他数据方发送的其他待同步参数,将各个待同步参数聚合为同步参数集W
t
;利用服务方反馈的同步参数集W
t
,更新本地模型中的待定参数,从而更新本地模型。3.根据权利要求2所述的方法,其中,所述基于当前的本地带宽v
i
和最大等待时长T确定当前同步周期上传的待同步参数数量m
i
包括:利用当前的本地带宽v
i
和最大等待时长T的乘积确定在当前同步周期的最大数据传输量S
i
;根据单个待同步参数在数据传输过程中所占空间和最大数据传输量S
i
,确定待同步参数数量m
i
,其中,m
i
不大于最大数据传输量S
i
与单个待同步参数在数据传输过程中所占空间的比值。4.根据权利要求3所述的方法,其中,所述利用本地训练样本更新模型对应的M个待同步参数的数据处理时长为T',所述最大数据传输量S
i
为:v
i
×
(T

T')。5.根据权利要求2所述的方法,所述基于当前的本地带宽v
i
和最大等待时长T确定当前同步周期上传的待同步参数数量m
i
包括:利用当前的本地带宽v
i
和最大等待时长T的乘积确定在当前同步周期的最大数据传输量S
i
;按照当前周期的最大数据传输量S
i
和M个待同步参数所占数据空间C确定当前周期的数据压缩率;将待同步参数总数量M按照所述数据压缩率进行压缩,从而确定要选择的待同步参数
数量m
i
。6.根据权利要求3或5所述的方法,服务方在当前同步周期针对第一数据方i具有可接受的最大数据量为S
i
';所述基于当前的本地带宽v
i
和最大等待时长T确定当前同步周期上传的待同步参数数量m
i
包括:比较S
i
和S
i
'中的较小值;以在当前同步周期上传的数据量不大于所述较小值为目标,确定待同步参数数量m
i
。7.根据权利要求6所述的方法,其中,服务方为辅助k个数据方同步更新业务数据预留的数据处理空间为C
s
,服务方在当前同步周期针对第一数据方i具有的可接受的最大数据量S
i
'为C
s
/k。8.根据权利要求2所述的方法,其中,所述从M个待同步参数中选择m
i
个待同步参数的预定方式为:从M个待同步参数随机选择m
i
个待同步参数;或者按照M个待同步参数的绝对值从大到小的顺序,选择前m
i
个待同步参数。9.根据权利要求2所述的方法,其中,所述按照预定方式从M个待同步参数中选择m
i
个待同步参数发送至服务方包括,利用以下之一的方式将m
i
个待同步参数发送至服务方:通过预先约定的m
i
个唯一性参数标识分别标识m
i
个待同步参数,以供服务方通过以下方式将各个待同步参数的更新值聚合为同步参数集W
t
:针对单个待同步参数,统计从各个数据方所收到的若干个更新值;将所述若干个更新值按照取最大值、取最小值、取中位数、取均值、加权平均之一的方式聚合,得到该单个待同步参数的同步参数值,以加入同步参数集W
t
。10.权利要求2所述的方法,其中,所述按照预定方式从M个待同步参数中选择m
i
个待同步参数将其更新值发送至服务方包括,利用以下之一的方式将m
i
个待同步参数发送至服务方:按照m
i
个待同步参数对应到参数矩阵的行、列位置标识m
i
个待同步参数,以供服务方通过以下方式将各个待同步参数的更新值聚合为同步参数集W
t
:按照数据方i反馈的m
i
个待同步参数,恢复数据方i针对待同步参数确定的稀疏矩阵G
i
;将稀疏矩阵G
i
与其他数据方对应的其他稀疏矩阵按照取均值、加权平均之一的方式进行...

【专利技术属性】
技术研发人员:郑龙飞陈超超王力张本宇
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

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

1