掌桥专利:专业的专利平台
掌桥专利
首页

联邦学习参与方的选择方法、装置及电子设备

文献发布时间:2024-04-18 19:52:40


联邦学习参与方的选择方法、装置及电子设备

技术领域

本发明涉及计算机技术领域,尤其是涉及一种联邦学习参与方的选择方法、装置及电子设备。

背景技术

随着数字化技术的高速发展和边缘设备的普及,人们的生活工作也发生了巨大的变化,人工智能技术在极大地改善人们的生活。例如,传统制造业逐渐向数据驱动下的智能制造模式升级,大数据训练的自动驾驶逐步运用到日常驾驶模式。在数据成为重要生产要素的今天,数据共享以及隐私安全迎来全新的挑战。

在传统的数据共享模式中,云服务器需要大量收集数据并进行集中训练,收集数据的过程不仅需要高额的数据运输成本,还涉及到数据泄露等问题。近年来,随着相关法律法规的出台以及用户本身隐私保护意识的加强,使得不同部门之间对于共享数据的要求更加严格,云服务器难以将海量数据集中,这就导致了“数据孤岛”问题。

为了解决“数据孤岛”问题,联邦学习(Federated Learning)技术应运而生。联邦学习是一种分布式机器学习技术,该技术使拥有有限资源的参与方能在不共享私有数据的情况下协同训练模型,有效保护参与方节点的数据隐私。但是,联邦学习系统对参与方没有严格的筛选机制,一般采用平均策略聚合模型参数,这将导致劣质参与方,甚至恶意参与方可能加入到联邦模型的训练过程中,从而影响最终整体模型的性能。

发明内容

有鉴于此,本发明的目的在于提供一种联邦学习参与方的选择方法、装置及电子设备,以提高联邦学习模型的性能和稳定性。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供了一种联邦学习参与方的选择方法,该方法应用于聚合服务器,包括:接收当前联邦学习通信回合多个参与方上传的第一模型参数,并采用夏普利值法对第一模型参数进行聚合得到当前联邦学习通信回合每个参与方的夏普利值;基于夏普利值确定参与方中的劣质参与方;对劣质参与方进行选择得到被选参与方,并确定被选参与方的当前联邦学习通信回合的选择参数;基于被选参与方的上一联邦学习通信回合的选择参数和当前联邦学习通信回合的选择参数,确定第二模型参数和第三模型参数;基于第二模型参数和第三模型参数的正确率,确定当前联邦学习通信回合的最终模型参数,并将最终模型参数发送至各参与方;重复执行上述步骤,直至达到联邦学习的预定通信回合或联邦学习模型达到预期效果。

在一种实施方式中,采用夏普利值法对第一模型参数进行聚合得到当前联邦学习通信回合每个参与方的夏普利值,包括:随机生成当前截断式蒙特卡洛联邦夏普利值法迭代轮次的参与方组,并采用截断式蒙特卡洛联邦夏普利值法对参与方组中的各参与方的贡献值进行计算,得到参与方组中各参与方的夏普利值;重复执行上述步骤直至达到截断式蒙特卡洛联邦夏普利值法的预设迭代次数。

在一种实施方式中,采用截断式蒙特卡洛联邦夏普利值法对参与方组中的各参与方的贡献值进行计算,得到参与方组中各参与方的夏普利值,包括:将参与方组中各参与方上传的第一模型参数进行聚合,得到参与方组中各参与方当前截断式蒙特卡洛联邦夏普利值法迭代轮次的表现分;基于参与方组中各参与方的上一截断式蒙特卡洛联邦夏普利值法迭代轮次的夏普利值和参与方组中各参与方的当前截断式蒙特卡洛联邦夏普利值法迭代轮次的表现分进行加权计算,得到参与方组中各参与方的当前截断式蒙特卡洛联邦夏普利值法迭代轮次的夏普利值。

在一种实施方式中,基于夏普利值确定参与方中的劣质参与方,包括:将夏普利值小于零的参与方确定为劣质参与方,并基于夏普利值确定各参与方的当前联邦学习通信回合的第一选择参数。

在一种实施方式中,对劣质参与方进行选择得到被选参与方,并确定被选参与方的当前联邦学习通信回合的选择参数,包括:基于当前联邦学习通信回合以及预设的第一参数

在一种实施方式中,基于被选参与方的上一联邦学习通信回合的选择参数和当前联邦学习通信回合的选择参数,确定第二模型参数和第三模型参数,包括:基于被选参与方的当前联邦学习通信回合的第一选择参数、贪心选择参数和第一模型参数,确定当前联邦学习通信回合的第二模型参数;基于被选参与方的上一联邦学习通信回合的最终选择参数和第一选择参数,以及被选参与方的当前联邦学习通信回合的第一模型参数,确定当前联邦学习通信回合的第三模型参数。

在一种实施方式中,基于第二模型参数和第三模型参数的正确率,确定当前联邦学习通信回合的最终模型参数,包括:基于第二模型参数和第三模型参数在预先确定的验证集上的正确率,确定当前联邦学习通信回合的最终选择参数;基于当前联邦学习通信回合的最终选择参数、第一选择参数和第一模型参数,确定当前联邦学习通信回合的最终模型参数。

在一种实施方式中,接收当前联邦学习通信回合多个参与方上传的第一模型参数之前,该方法还包括:获取当前联邦学习通信回合的初始模型参数,并将初始模型参数发送至多个参与方,以使各参与方基于初始模型参数进行训练得到第一模型参数。

第二方面,本发明实施例提供了一种联邦学习参与方的选择装置,该装置应用于聚合服务器,包括:第一计算模块,用于接收当前联邦学习通信回合多个参与方上传的第一模型参数,并采用夏普利值法对第一模型参数进行聚合得到当前联邦学习通信回合每个参与方的夏普利值;选择模块,用于基于夏普利值确定参与方中的劣质参与方;第二计算模块,用于对劣质参与方进行选择得到被选参与方,并确定被选参与方的当前联邦学习通信回合的选择参数;第一模型确定模块,用于基于被选参与方的上一联邦学习通信回合的选择参数和当前联邦学习通信回合的选择参数,确定第二模型参数和第三模型参数;第二模型确定模块,用于基于第二模型参数和第三模型参数的正确率,确定当前联邦学习通信回合的最终模型参数,并将最终模型参数发送至各参与方;重复训练模块,用于重复执行上述步骤,直至达到联邦学习的预定通信回合或联邦学习模型达到预期效果。

第三方面,本发明实施例提供了一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的计算机可执行指令,处理器执行计算机可执行指令以实现上述第一方面提供的任一项的方法的步骤。

第四方面,本发明实施例提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述第一方面提供的任一项的方法的步骤。

本发明实施例带来了以下有益效果:

本发明实施例提供的上述联邦学习参与方的选择方法、装置及电子设备,该方法应用于聚合服务器,聚合服务器首先接收当前联邦学习通信回合多个参与方上传的第一模型参数,并采用夏普利值法对第一模型参数进行聚合得到当前联邦学习通信回合每个参与方的夏普利值;然后基于夏普利值确定参与方中的劣质参与方;接着对劣质参与方进行选择得到被选参与方,并确定被选参与方的当前联邦学习通信回合的选择参数;之后基于被选参与方的上一联邦学习通信回合的选择参数和当前联邦学习通信回合的选择参数,确定第二模型参数和第三模型参数;最后基于第二模型参数和第三模型参数的正确率,确定当前联邦学习通信回合的最终模型参数,并将最终模型参数发送至各参与方;并重复执行上述步骤,直至达到联邦学习的预定通信回合或联邦学习模型达到预期效果。

上述联邦学习参与方的选择方法,基于动态规划对联邦学习的参与方进行选择,通过夏普利值对参与方的质量进行评估,动态选择每轮联邦学习的参与方,并在每轮联邦学习中更新模型参数,从而改善了联邦学习中遇到恶意参与方选择的问题,提升了联邦学习模型的性能和稳定性。

本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种联邦学习参与方的选择方法的流程图;

图2为本发明实施例提供的另一种联邦学习参与方的选择方法的流程图;

图3为本发明实施例提供的一种在数据集MNIST上三种算法的准确率对比图;

图4为本发明实施例提供的一种在数据集CIFAR-10上三种算法的准确率对比图;

图5为本发明实施例提供的一种在数据集Fashion-MNIST上三种算法的准确率对比图;

图6为本发明实施例提供的一种在数据集MNIST上三种算法的损失率对比图;

图7为本发明实施例提供的一种在数据集CIFAR-10上三种算法的损失率对比图;

图8为本发明实施例提供的一种在数据集Fashion-MNIST上三种算法的损失率对比图;

图9为本发明实施例提供的一种联邦学习参与方的选择装置的结构示意图;

图10为本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前,联邦学习系统对参与方没有严格的筛选机制,一般采用平均策略聚合模型参数,这将导致劣质参与方,甚至恶意参与方可能加入到联邦模型的训练过程中,从而影响最终整体模型的性能。

基于此,本发明实施例提供的一种联邦学习参与方的选择方法、装置及电子设备,可以提高联邦学习模型的性能和稳定性。

为便于对本实施例进行理解,首先对本发明实施例所公开的一种联邦学习参与方的选择方法进行详细介绍,该方法可以由电子设备执行,诸如智能手机、电脑、iPad等。

实施例一:

本发明实施例提供了一种联邦学习参与方的选择方法,该方法应用于聚合服务器,参见图1所示的一种联邦学习参与方的选择方法的流程图,示意出该方法主要包括以下步骤S10至步骤S60:

步骤S10:接收当前联邦学习通信回合多个参与方上传的第一模型参数,并采用夏普利值法对第一模型参数进行聚合得到当前联邦学习通信回合每个参与方的夏普利值。

在一种实施方式中,在接收当前联邦学习通信回合多个参与方上传的第一模型参数之前,还包括:获取当前联邦学习通信回合的初始模型参数,并将初始模型参数发送至多个参与方,以使各参与方基于初始模型参数进行训练得到第一模型参数。

在具体实施时,聚合服务器首先初始化当前联邦学习通信回合联邦学习基学习器模型的模型参数得到初始模型参数,并将初始模型参数发送给所有的参与方;参与方接收到初始模型参数后,可以根据自身的数据集进行本地训练,在本地训练结束后,各参与方可以将训练好的模型参数(即第一模型参数)上传至聚合服务器;聚合服务器接收到各参与方上传的第一模型参数后,可以采用夏普利值法对各个参与方上传的第一模型参数的贡献值进行评估,得到当前联邦学习通信回合每个参与方的夏普利值。其中,本发明实施例中可以采用卷积神经网络作为联邦学习的基学习器,也可以根据实际情况进行调整,采用普通神经网络或者逻辑斯蒂回归等算法模型作为联邦学习的基学习器。

步骤S20:基于夏普利值确定参与方中的劣质参与方。

在一种实施方式中,聚合服务器可以根据各参与方的夏普利值,生成优质参与方和劣质参与方,具体的,夏普利值小于零的表示在当前联邦学习通信回合中,该参与方对联邦学习模型的贡献为负,即为劣质参与方,反之则为优质参与方。

步骤S30:对劣质参与方进行选择得到被选参与方,并确定被选参与方的当前联邦学习通信回合的选择参数。

在一种实施方式中,聚合服务器可以对劣质参与方进行

步骤S40:基于被选参与方的上一联邦学习通信回合的选择参数和当前联邦学习通信回合的选择参数,确定第二模型参数和第三模型参数。

步骤S50:基于第二模型参数和第三模型参数的正确率,确定当前联邦学习通信回合的最终模型参数,并将最终模型参数发送至各参与方。

在一种实施方式中,聚合服务器可以根据上一联邦学习通信回合的选择参数和当前联邦学习通信回合的选择参数,生成两个新的模型参数,即第二模型参数和第三模型参数;然后通过比较第二模型参数和第三模型参数在验证集上的正确率,选择正确率更高的模型参数作为新的模型参数,即当前联邦学习通信回合的最终模型参数;最后,聚合服务器可以将当前联邦学习通信回合的最终模型参数发送给所有参与方。

步骤S60:重复执行上述步骤,直至达到联邦学习的预定通信回合或联邦学习模型达到预期效果。

在一种实施方式中,聚合服务器可以预先设定联邦学习的预设通信回合,以及预期效果的判断依据,重复上述步骤1至步骤5,直至达到联邦学习的预设通信回合或联邦学习模型达到预期效果。具体的,可以将正确率、损失率、模型精度等参数作为判断联邦学习模型是否达到预期效果的判断依据,比如整体模型的精度到达95%作为判断依据,那么当某一个联邦学习通信回合的精度到达95%及以上,联邦学习就会停止。

本发明实施例提供的上述联邦学习参与方的选择方法,基于动态规划对联邦学习的参与方进行选择,通过夏普利值对参与方的质量进行评估,动态选择每轮联邦学习的参与方,并在每轮联邦学习中更新模型参数,从而改善了联邦学习中遇到恶意参与方选择的问题,提升了联邦学习模型的性能和稳定性。

在一种实施方式中,对于前述步骤S10中,在采用夏普利值法对第一模型参数进行聚合得到当前联邦学习通信回合每个参与方的夏普利值时,可以采用包括但不限于以下方式,包括步骤S101至步骤S102:

步骤S101:随机生成当前截断式蒙特卡洛联邦夏普利值法迭代轮次的参与方组,并采用截断式蒙特卡洛联邦夏普利值法对参与方组中的各参与方的贡献值进行计算,得到参与方组中各参与方的夏普利值。

在具体实施时,聚合服务器可以采用截断式蒙特卡洛联邦夏普利值法对各个参与方的贡献值进行估算,设定截断式蒙特卡洛联邦夏普利值法的预设迭代次数为

聚合服务器遍历参与方组

步骤S1011:将参与方组中各参与方上传的第一模型参数进行聚合,得到参与方组中各参与方当前截断式蒙特卡洛联邦夏普利值法迭代轮次的表现分;

在具体实施时,聚合服务器根据参与方组中各参与方上传的第一模型参数进行聚合,并在聚合服务器的验证集上计算各联邦学习模型的正确率,从而得到参与方组中各参与方当前截断式蒙特卡洛联邦夏普利值法迭代轮次的表现分,其计算方式如下:

(1)

其中,

步骤S1012:基于参与方组中各参与方的上一截断式蒙特卡洛联邦夏普利值法迭代轮次的夏普利值和参与方组中各参与方的当前截断式蒙特卡洛联邦夏普利值法迭代轮次的表现分进行加权计算,得到参与方组中各参与方的当前截断式蒙特卡洛联邦夏普利值法迭代轮次的夏普利值。

在具体实施时,聚合服务器可以通过加权计算参与方组中各参与方的上一截断式蒙特卡洛联邦夏普利值法迭代轮次的夏普利值和参与方组中各参与方的当前截断式蒙特卡洛联邦夏普利值法迭代轮次的表现分,以更新参与方组中各参与方的当前截断式蒙特卡洛联邦夏普利值法迭代轮次的夏普利值,计算方法如下:

(2)

其中,

进一步,当参与方组

步骤S102:重复执行上述步骤直至达到截断式蒙特卡洛联邦夏普利值法的预设迭代次数。

在具体实施时,当截断式蒙特卡洛联邦夏普利值法的迭代次数达到预设迭代次数

在一种实施方式中,对于前述步骤S20,即在基于夏普利值确定参与方中的劣质参与方时,可以采用包括但不限于以下方式:将夏普利值小于零的参与方确定为劣质参与方,并基于夏普利值确定各参与方的当前联邦学习通信回合的第一选择参数。

在具体实施时,聚合服务器可以根据各参与方的夏普利值,生成优质参与方和劣质参与方,其中,夏普利值大于零的代表在联邦学习中,该参与方对联邦学习模型的贡献为正,则为优质参与方,反之则为劣质参与方。基于此,本发明实施例中可以将夏普利值小于零的参与方确定为劣质参与方,并基于夏普利值确定各参与方的当前联邦学习通信回合的第一选择参数,具体计算方式如下:

(3)

其中,

在一种实施方式中,对于前述步骤S30,即在对劣质参与方进行选择得到被选参与方,并确定被选参与方的当前联邦学习通信回合的选择参数时,可以采用包括但不限于以下方式,主要包括以下步骤S301至步骤S302:

步骤S301:基于当前联邦学习通信回合以及预设的第一参数

在具体实施时,聚合服务器可以根据联邦学习的通信回合和第一参数

(4)

其中,

步骤S302:基于第二参数

在具体实施时,聚合服务器可以生成一个随机数

(5)

( 6)

(7)

其中,

在一种实施方式中,对于前述步骤S40,即在基于被选参与方的上一联邦学习通信回合的选择参数和当前联邦学习通信回合的选择参数,确定第二模型参数和第三模型参数时,可以采用包括但不限于以下方式,主要包括以下步骤S401至步骤S402:

步骤S401:基于被选参与方的当前联邦学习通信回合的第一选择参数、贪心选择参数和第一模型参数,确定当前联邦学习通信回合的第二模型参数。

在具体实施时,聚合服务器可以根据第一选择参数、第一模型参数和贪心选择得到的贪心选择参数聚合,得到当前联邦学习通信回合的第二模型参数,即贪心模型参数。具体的,模型参数聚合可以采用的联邦平均算法,即:

(8)

其中,

步骤S402:基于被选参与方的上一联邦学习通信回合的最终选择参数和第一选择参数,以及被选参与方的当前联邦学习通信回合的第一模型参数,确定当前联邦学习通信回合的第三模型参数。

在具体实施时,聚合服务器可以根据上一联邦学习通信回合的最终选择参数进行聚合,得到当前联邦学习通信回合的第三模型参数。具体的,模型参数聚合采用的联邦平均算法,即:

(9)

其中,

需要说明的是,在联邦学习中,通常会根据第

在一种实施方式中,对于前述步骤S50,即在基于第二模型参数和第三模型参数的正确率,确定当前联邦学习通信回合的最终模型参数时,可以采用包括但不限于以下方式,主要包括以下步骤S501至步骤S502:

步骤S501:基于第二模型参数和第三模型参数在预先确定的验证集上的正确率,确定当前联邦学习通信回合的最终选择参数。

在具体实施时,聚合服务器可以通过比对第二模型参数和第三模型参数在验证集上的正确率,选择出当前联邦学习通信回合的最终选择参数,最终选择参数的计算方法如下:

(10)

其中,

步骤S502:基于当前联邦学习通信回合的最终选择参数、第一选择参数和第一模型参数,确定当前联邦学习通信回合的最终模型参数。

在具体实施时,聚合服务器可以根据当前联邦学习通信回合的最终选择参数、第一选择参数和第一模型参数,确定当前联邦学习通信回合的最终模型参数,计算方法如下:

(11)

其中,

本发明实施例提供的上述方法,基于动态规划对联邦学习的参与方进行选择,将每一轮联邦学习作为一个子问题,通过求解子问题中的最优解找到最优的参与方,并且,在寻找最优参与方的过程中,引入了夏普利值来评估参与方的质量,引用了

实施例二:

本发明实施例还提供了一种联邦学习参与方的选择方法,参见图2所示,本发明通过夏普利值确定参与方的质量,每轮实现动态参与方的选择,每轮联邦学习模型选择参数也会得到更新,具体步骤如下所示:

S1:聚合服务器初始化模型参数,并将初始化后的模型参数发送给所有参与方。

S2:参与方接收聚合服务器分配的模型参数,根据自身数据集在本地训练,本地训练结束后,参与方将训练好的模型参数上传至聚合服务器。

S3:聚合服务器采用夏普利值法对各个参与方上传的模型参数的贡献值进行评估,得到本轮联邦学习每个参与方的夏普利值。

进一步的,步骤S3具体包括:

S31:聚合服务器采用截断式蒙特卡洛联邦夏普利值法对各个参与方的贡献值进行估算,设定截断式蒙特卡洛联邦夏普利值法的迭代次数为

步骤S31进一步包括:

S311:遍历参与方组

S312:通过加权计算上一轮联邦学习对应参与方的夏普利值和本轮联邦学习的表现分,更新得到参与方的夏普利值。具体可采用前述公式(2)进行计算。

S313:当参与方组

S32:当截断式蒙特卡洛联邦夏普利值法的迭代轮数达到

S4:聚合服务器根据各个参与方的夏普利值的正负,将参与方分为优质参与方和劣质参与方。

进一步的,步骤S4具体包括:聚合服务器根据各个参与方夏普利值,生成优质参与方和劣质参与方,其中,夏普利值大于0的代表在本轮联邦学习中,该参与方对联邦学习模型的贡献为正,为优质参与方,反之则认作劣质参与方。具体可采用上述公式(3)进行计算。

S5:聚合服务器对劣质参与方进行

进一步的,步骤S5包括:

S51:聚合服务器根据劣质参与方集合进行

S52:生成随机数

S6:聚合服务器根据上一轮联邦学习的选择参数和本轮联邦学习的选择参数聚合生成两个新的模型参数,比较这两个模型参数在验证集上的正确率,选择正确率更高的模型参数为新的模型参数。

进一步的,步骤S6包括:

S61:聚合服务器根据贪心选择得到的选择参数聚合,得到本轮联邦学习的贪心模型参数,模型参数聚合采用的联邦平均算法可参见上述公式(8)。

S62:聚合服务器根据上一轮联邦学习的最终选择参数聚合,得到下一轮的模型参数,模型参数聚合采用的联邦平均算法可参见上述公式(9)。

S63:聚合服务器通过比对两个模型参数在验证集上的正确率,选择出本轮联邦学习的最终的模型参数和选择参数,具体可采用前述公式(10)和公式(11)进行计算。

S7:聚合服务器将新的模型参数发送给所有参与方。

S8:重复S2至S7,直至联邦学习达到预定轮数或联邦学习模型达到预期效果。

为了便于理解,本发明实施例中以下述三个数据集为例进行说明,以下是在本实施例中所用三个数据集的简介:

MNIST. MNIST是一个公开的手写数字数据集,每个样本是一张28*28的灰度图像,包含数字0-9,十个标签类别,总计60000个样本的训练集,和10000个样本的测试集。

CIFAR-10. CIFAR-10是一个公开的彩色图像数据集,每个样本是一张三通道的32*32的彩色RPG图像,包含10个物体类别,总计50000个样本的训练集和10000个样本的测试集。

Fashion-MNIST. Fashion-MNIST是一个公开的时装数据集,每个样本是一张28*28的灰度图像,包含了衣服,鞋子,裙子等是个类别,总计60000样本的训练集,和10000个样本的测试集。

对于每个数据集,本实施例中将数据集中的训练集样本打乱发送给各个参与方,将测试集样本作为聚合服务器的验证集;采用维度翻转和打乱标签两种攻击方法,用以模拟劣质参与方或者恶意参与方的数据集。表1和表2为本实施例中参与方参数的设置,其中,表1为不同数据集参数设置,表2为不同数据集卷积神经网络参数设置。

本实施例中采用的模型性能度量指标为准确性和损失值,通过比对本发明提供的方法和两个FedAvg算法来验证本发明的优越性。其中,第一个FedAvg算法选取所有的参与方进行聚合,第二个FedAvg算法则选取没经过攻击处理的优质参与方进行聚合。

表1 不同数据集参数设置

表2 不同数据集卷积神经网络参数设置

为了辨别以上提到的三种算法,将本发明提供的方法称作FedWeight,在图中用线段表示;将第(1)个FedAvg算法称作FedAvg,在图中用实线表示;将第(2)个FedAvg算法称作FedBest,在图中用点线表示。

参见图3、图4、图5可以看出,在三个数据集上,本发明实施例提供的方法,在收敛速度和性能上,明显优于普通的FedAvg算法,受劣质参与方占比的影响较小,在高劣质参与方占比的情况下也可以较快的达到收敛效果,并且震荡幅度小,说明联邦学习模型稳定,体现了较强的鲁棒性;相比较于FedBest算法,不论是低劣质参与方占比还是高劣质参与方占比,在准确率上两者相差无几。

参见图6、图7、图8可以看出,在损失值上,本发明实施例提供的方法略优于FedBest算法,在收敛速度上,两者几乎在同个轮次收敛。由真实数据集实验结果可知,本发明实施例提供的参与方优化选择方法能高效地完成联邦学习参与方选择的任务。

需要说明的是,图5至图8中的联邦轮次即为联邦学习通信回合,本发明实施中提供的具体数值,仅为是示例性的,在此不做限定。

实施例三:

本发明实施例提供了一种联邦学习参与方的选择装置,该装置应用于聚合服务器,参见图9所示的一种联邦学习参与方的选择装置的结构示意图,示意出该装置可以包括以下部分:

第一计算模块901,用于接收当前联邦学习通信回合多个参与方上传的第一模型参数,并采用夏普利值法对第一模型参数进行聚合得到当前联邦学习通信回合每个参与方的夏普利值。

选择模块902,用于基于夏普利值确定参与方中的劣质参与方。

第二计算模块903,用于对劣质参与方进行选择得到被选参与方,并确定被选参与方的当前联邦学习通信回合的选择参数。

第一模型确定模块904,用于基于被选参与方的上一联邦学习通信回合的选择参数和当前联邦学习通信回合的选择参数,确定第二模型参数和第三模型参数。

第二模型确定模块905,用于基于第二模型参数和第三模型参数的正确率,确定当前联邦学习通信回合的最终模型参数,并将最终模型参数发送至各参与方。

重复训练模块906,用于重复执行上述步骤,直至达到联邦学习的预定通信回合或联邦学习模型达到预期效果。

本发明实施例提供的上述联邦学习参与方的选择装置,基于动态规划对联邦学习的参与方进行选择,通过夏普利值对参与方的质量进行评估,动态选择每轮联邦学习的参与方,并在每轮联邦学习中更新模型参数,从而改善了联邦学习中遇到恶意参与方选择的问题,提升了联邦学习模型的性能和稳定性。

在一种实施方式中,上述第一计算模块901进一步还用于:随机生成当前截断式蒙特卡洛联邦夏普利值法迭代轮次的参与方组,并采用截断式蒙特卡洛联邦夏普利值法对参与方组中的各参与方的贡献值进行计算,得到参与方组中各参与方的夏普利值;重复执行上述步骤直至达到截断式蒙特卡洛联邦夏普利值法的预设迭代次数。

在一种实施方式中,上述第一计算模块901进一步还用于:将参与方组中各参与方上传的第一模型参数进行聚合,得到参与方组中各参与方当前截断式蒙特卡洛联邦夏普利值法迭代轮次的表现分;基于参与方组中各参与方的上一截断式蒙特卡洛联邦夏普利值法迭代轮次的夏普利值和参与方组中各参与方的当前截断式蒙特卡洛联邦夏普利值法迭代轮次的表现分进行加权计算,得到参与方组中各参与方的当前截断式蒙特卡洛联邦夏普利值法迭代轮次的夏普利值。

在一种实施方式中,上述选择模块902进一步还用于:将夏普利值小于零的参与方确定为劣质参与方,并基于夏普利值确定各参与方的当前联邦学习通信回合的第一选择参数。

在一种实施方式中,上述第二计算模块903进一步还用于:基于当前联邦学习通信回合以及预设的第一参数

在一种实施方式中,上述第一模型确定模块904进一步还用于:基于被选参与方的当前联邦学习通信回合的第一选择参数、贪心选择参数和第一模型参数,确定当前联邦学习通信回合的第二模型参数;基于被选参与方的上一联邦学习通信回合的最终选择参数和第一选择参数,以及被选参与方的当前联邦学习通信回合的第一模型参数,确定当前联邦学习通信回合的第三模型参数。

在一种实施方式中,上述第二模型确定模块905进一步还用于:基于第二模型参数和第三模型参数在预先确定的验证集上的正确率,确定当前联邦学习通信回合的最终选择参数;基于当前联邦学习通信回合的最终选择参数、第一选择参数和第一模型参数,确定当前联邦学习通信回合的最终模型参数。

在一种实施方式中,上述装置还包括初始化模块,用于:获取当前联邦学习通信回合的初始模型参数,并将初始模型参数发送至多个参与方,以使各参与方基于初始模型参数进行训练得到第一模型参数。

本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

本发明实施例还提供了一种电子设备,具体的,该电子设备包括处理器和存储装置;存储装置上存储有计算机程序,计算机程序在被处理器运行时执行如上实施方式的任一项所述的方法。

图10为本发明实施例提供的一种电子设备的结构示意图,该电子设备100包括:处理器101,存储器102,总线103和通信接口104,所述处理器101、通信接口104和存储器102通过总线103连接;处理器101用于执行存储器102中存储的可执行模块,例如计算机程序。

其中,存储器102可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口104(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。

总线103可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

其中,存储器102用于存储程序,所述处理器101在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器101中,或者由处理器101实现。

处理器101可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器101中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器101可以是通用处理器,包括中央处理器(CentralProcessingUnit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器102,处理器101读取存储器102中的信息,结合其硬件完成上述方法的步骤。

本发明实施例所提供的可读存储介质的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见前述方法实施例,在此不再赘述。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

相关技术
  • 一种学习管理方法、学习管理装置及电子设备
  • 多平台下埋点归一方法及装置和电子设备
  • 过滤第三方网页广告的方法、装置、电子设备及存储介质
  • 基于联邦学习场景的训练参与方的选择方法及装置
  • 联邦学习参与方筛选方法、装置、电子设备及存储介质
技术分类

06120116335143