一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

敏感场景下可提升系统公平性的横向联邦学习训练方法

2022-10-26 19:49:56 来源:中国专利 TAG:


1.本发明涉及计算机技术领域,特别是涉及一种敏感场景下可提升系统公平性的横向联邦学习训练方法。


背景技术:

2.机器学习技术的发展使得预测算法在某些领域能够发挥比预期更好的效果。但实际中,一个足够有效的模型需要海量数据进行训练,但是一些较敏感的场景下,如不同医院的患者数据,或不同车辆的驾驶数据,单个设备可能没有足够数量和质量的数据来学习一个更加健壮的模型。
3.联邦学习是一种新型的分布式机器学习,每个客户端利用本地数据训练局部模型或参数更新,然后仅传递模型参数到服务器,在云端将所有参数聚合,从而在不需要交换数据的情况下获得一个更完善的模型。但在实际应用中,异质性导致联邦学习性能不小下降,包括高达9.2%的准确率下降,和2.32倍训练时间的延长,同时损害了公平性。例如,如果不同客户端数据分布差异很大,那么模型在不同车辆间的表现可能有很大差距,准确率甚至低于本地模型预测结果。
4.由于联邦学习中不同客户端上数据大小和分布的异质性,在大型网络中单纯以最小化总损失为目标,可能会不成比例地提升或降低模型在一些客户端上的性能,即导致设备的结果均匀性损失。例如,虽然联邦平均精度很高,但网络中单个设备的精度无法得到保障。
5.最近人们开始关注一些公平的机器学习算法,然而,当前方法并不能直接适用于联邦设置当中。最近的工作引入适用于联邦学习的公平性算法,使用了极大极小优化方法,确保不会以牺牲一些客户端表现为代价提升全体公平性,借用资源分配的思想,将公平性作为一种资源进行分配,实现客户端精度的集中分布,在平均梯度之前减轻客户端之间的潜在冲突。但是这些算法都以公平性作为唯一目标,我们可以简单的认为,公平与最佳性能(通常用平均性能表示)之间存在置换关系,因此在真实的联邦学习应用中,人们会自然地希望当他们的程序能够在保障最佳性能的基础上进一步保障公平性。
6.为了反应一个联邦网络的公平程度,提出了用客户端均匀性和精度的标准差等作为衡量网络公平性的指标,然而,标准偏差std等指标与精确度的期望相关,因此,针对不同的应用场景,假设网络a和b的所有客户端测试精度分别为0.07,0.08,0.09和0.7,0.8,0.9,那么尽管两个网络的测试精度的“贫富”差距相当,a的std会更小,从而系统性能量级不同的联邦网络之间无法比较公平程度。


技术实现要素:

7.为了弥补上述背景技术的不足,本发明提出一种敏感场景下可提升系统公平性的横向联邦学习训练方法,以解决不同客户端上数据异构造成的联邦学习收敛缓慢、整体性能下降和跨客户端的性能不公平的问题。
8.本发明的技术问题通过以下的技术方案予以解决:
9.本发明公开一种敏感场景下可提升系统公平性的横向联邦学习训练方法,包括如下步骤:
10.s1、建立联邦聚合的公平性指标;
11.s2、构建基于深度强化学习的影响评估器;
12.s3、基于横向联邦学习,客户端通过迭代聚合来自不同客户端的本地模型,通过聚合方式训练共享的全局模型。
13.在一些实施例中,步骤s1中,采用基尼系数作为联邦聚合的公平性指标。
14.在一些实施例中,所述基尼系数的定义为:设模型一和模型二在n个客户端上的表现分别为ω1、ω2,若g(ω1)《g(ω2),则模型一更加均衡,其中:
[0015][0016]
其中,g表示客户端上的精度的公平系数,acci、accj表示模型中任意客户端测试集上的精度,表示所有客户端平均精度,k表示共有k个客户端,k表示第k个客户端;根据洛伦兹曲线定义模型对所有客户端的公平性,判断公平性的指标是0到1之间的一个比例值。
[0017]
在一些实施例中于,步骤s2具体包括:
[0018]
s2.1、状态由每轮中每个客户端设备的模型参数表示。
[0019]
s2.2、给定当前状态,强化学习智能体会学习到一个策略分布,根据策略计算每个客户端对应的聚合权重,从而更新全局模型。
[0020]
s2.3、将更新后的全局模型参数传输给本地,在本地验证集上观察全局模型在本地的验证精度,由各客户端上的验证精度平均值和基尼系数,得到深度强化学习智能体的奖励函数。
[0021]
在一些实施例中,步骤s2.1具体包括:第t轮的状态由向量表示,分别表示参与更新的k个客户端的模型参数;训练过程中客户端和服务器共同维护模型参数列表其中集合一共有k个客户端,k表示集合中的第k个客户端;每轮联邦学习中,当客户端将训练的本地模型上传到服务器后更新该列表。
[0022]
在一些实施例中,步骤s2.2具体包括:每次状态列表更新后,用参与聚合的客户端模型参数训练深度增强学习智能体,动作空间由向量表示,其中表示一个可学均值,从而第k个客户端得到参与聚合全局模型的权重均值,从而第k个客户端得到参与聚合全局模型的权重来自一个均值为方差固定的高斯分布。
[0023]
在一些实施例中,步骤s2.3具体包括:奖励来自客户端本地的一个小的验证集,定义为r
t
=μ
t
log(g
t
),μ和g分别表示客户端上的平均验证精度和精度的公平系数。
[0024]
在一些实施例中,步骤s2中,基于深度强化学习的影响评估器采用四层全连接层学习最优聚合策略。
[0025]
在一些实施例中,步骤s3具体包括:在每轮迭代中,服务器随机选择一定数量的客户端传输全局模型参数,参与训练的客户端用下载的全局模型训练,之后上传本地训练模
型参数并在服务器聚合成新的全局模型。
[0026]
在一些实施例中,通过聚合方式训练共享的全局模型包括以下步骤:
[0027]
将联邦学习问题写为:
[0028][0029]
其中是第i个客户端的本地损失函数;
[0030]
将不同客户端的损失函数聚合,用基于深度强化学习的影响评估器学习聚合权重pi;将聚合训练过程中的状态-动作转换和奖励抽象为一个马尔科夫决策过程,在第t轮迭代中,基于深度强化学习的影响评估器获得环境观测s
t
,并执行动作a
t
,环境受到智能体的影响转移到状态s
t 1
,智能体获得此过程的回报r
t
。则强化学习智能体的目的是找到一个最大化长期回报期望的最优策略:
[0031]
π
*
=argmax
πeτ~π(τ)
[r(τ)]
ꢀꢀꢀ
(3)
[0032]
其中π表示策略,τ表示使用策略与环境进行交互得到的一条轨迹,e表示均值,r(τ)表示这条轨迹的总体回报。
[0033]
接下来通过展开公式,得到目标函数和基于蒙特卡洛近似的梯度分别为:
[0034][0035]
其中,j是目标函数,θ是关于策略的神经网络参数,d是积分公式中的固定符号;
[0036]
由于联邦学习的训练对于时间成本和计算资源的要求都很高,采用强化学习中的ppo算法,提高样本效率;应用重要性采样的思想,为:
[0037][0038]
其中,π
θ_new
表示新策略,π
θ_old
表示老策略;即应用旧的交互轨迹,学习新的策略。
[0039]
本发明与现有技术对比的有益效果包括:
[0040]
本发明提供的敏感场景下可提升系统公平性的横向联邦学习训练方法,通过建立联邦聚合的公平性指标,构建基于深度强化学习的影响评估器,再基于横向联邦学习,客户端通过迭代聚合来自不同客户端的本地模型,通过聚合方式训练共享的全局模型。本发明基于深度强化学习的影响评估器输出的参数,能够基于横向联邦学习修改不同客户端在全局模型中聚合的权重,从而让模型对不同客户端产生不同程度的偏向性,提升系统公平性。
[0041]
在一些实施例中,本发明根据不同客户端的验证精度分配本轮聚合权重,智能地安排不同客户端每轮聚合时对于全局模型的贡献,从而在保障全局模型表现的同时,进一步保障客户端的公平性。
附图说明
[0042]
图1是本发明实施例的横向联邦学习训练方法流程图。
[0043]
图2是本发明实施例的横向联邦学习训练方法结构示意图。
[0044]
图3a至图3c是本发明实施例的横向联邦学习训练方法与fedavg和fedprox结合的性能(平均精度)对比图。
[0045]
图4a至图4c本发明实施例的横向联邦学习训练方法与fedavg和fedprox结合的公平性(基尼系数的定义)对比图。
[0046]
图5a至图5c是本发明实施例的横向联邦学习训练方法与其他方法应用于联邦学习公平性校正的表现对比图。
具体实施方式
[0047]
下面对照附图并结合优选的实施方式对本发明作进一步说明。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
[0048]
需要说明的是,本实施例中的左、右、上、下、顶、底等方位用语,仅是互为相对概念,或是以产品的正常使用状态为参考的,而不应该认为是具有限制性的。
[0049]
为了克服不同客户端上数据异构造成的联邦学习收敛缓慢、整体性能下降和跨客户端的性能不公平问题,本发明实施例提供了一种敏感场景下可提升系统公平性的横向联邦学习训练方法。该方法能够根据不同客户端的验证精度分配本轮聚合权重,智能地安排不同客户端每轮聚合时对于全局模型的贡献,从而在保障全局模型表现的同时,保障客户端的公平性。
[0050]
本发明实施例需要解决的核心问题包括:(1)设计能够反映客户端粒度公平性的函数;(2)构建一种深度强化学习影响评估器,利用提出的公平性函数自动学习一个公平性策略来分配客户端对全局模型的影响;(3)设计算法,解决在线强化学习的低样本利用率造成的训练效率低下问题。
[0051]
本发明实施例解决问题所采用的方法主要包括:(1)提出用于评估客户端粒度公平性的衡量指标;(2)基于公平系数和客户的验证准确性构建一个基于深度强化学习的高样本利用率影响评估器;(3)保证提出的影响评估器与现有联邦学习方法兼容。
[0052]
如图1所示,本发明实施例的敏感场景下可提升系统公平性的横向联邦学习训练方法包括如下步骤:
[0053]
s1、建立联邦聚合的公平性指标。
[0054]
具体地,本发明实施例采用基尼系数作为衡量系统公平性的指标,该指标能够更好地衡量网络公平程度。
[0055]
基尼系数的定义为:设模型一和模型二在n个客户端上的表现分别为ω1、ω2,若g(ω1)《g(ω2),则模型一更加均衡。
[0056]
其中:
[0057][0058]
其中,acci、accj表示模型中任意客户端测试集上的精度,表示所有客户端平均精度,k表示共有k个客户端,k表示第k个客户端。可以根据洛伦兹曲线定义模型对所有客户端的公平性,判断公平性的指标是0到1之间的一个比例值。
[0059]
与现有的联邦系统公平性定义如均匀性和std不同,本发明提出的gini(基尼系数)描述了恒定分布的离散度,具有尺度不变性的特点。因此,可以将具有不同平均性能的网络的公平程度与一个统一的指标进行比较。
[0060]
s2、构建基于深度强化学习的影响评估器。
[0061]
具体地,联邦学习训练中,由于每轮随机抽取一定比例的客户端参与更新,因此最
优权重分配是不可微的。针对不可微的优化瓶颈有多种处理方法,本发明实施例采用强化学习的方式,通过最大化奖励函数来寻求最优分配策略。同时,强化学习鼓励随机的探索,因此将不同本地模型在全局模型所占比重的分配问题建模成为一个强化学习问题,探索最优聚合策略。
[0062]
因此,联邦学习过程可以建模成一个马尔科夫决策过程,状态由每轮中每个客户端设备的模型参数表示。给定当前状态,强化学习智能体会学习到一个策略分布,根据策略计算每个客户端对应的聚合权重,从而更新全局模型。之后将更新后的全局模型参数传输给本地,在本地验证集上,会观察到全局模型在本地的验证精度,由各客户端上的验证精度平均值和基尼系数,得到深度强化学习智能体的奖励函数,目的是训练深度强化学习智能体尽可能快地收敛到目标精度和公平性。具体设置如下:
[0063]
状态s
t
:第t轮的状态由向量表示,分别表示参与更新的k个客户端的模型参数。训练过程中客户端和服务器共同维护模型参数列表每轮联邦学习中,当客户端将训练的本地模型上传到服务器后更新该列表。
[0064]
动作:每次状态列表更新后,我们用参与聚合的客户端模型参数训练深度增强学习智能体,动作空间由向量表示,其中表示一个可学均值,是k个客户端上的动作,从而第k个客户端得到它参与聚合全局模型的权重来自一个均值为方差固定的高斯分布。
[0065]
奖励:奖励来自客户端本地的一个小的验证集,定义为r
t
=μ
t
log(g
t
)。μ和g分别表示客户端上的平均验证精度和精度的公平系数(见基尼系数的定义),通过这样的设置鼓励联邦模型达到最佳性能和公平的表现。
[0066]
本发明实施例中,基于深度强化学习的影响评估器采用四层全连接层学习最优聚合策略。
[0067]
s3、基于横向联邦学习,客户端通过迭代聚合来自不同客户端的本地模型,通过聚合方式训练共享的全局模型。
[0068]
具体地,在每轮迭代中,服务器随机选择一定数量的客户端传输全局模型参数,参与培训的客户端用下载的全局模型训练,之后上传本地训练模型参数并在服务器聚合成新的全局模型。
[0069]
本发明实施例以一个分类任务为例,将问题定义在一个c分类问题中,此时一个最普遍的联邦学习问题,可以写为:
[0070][0071]
其中是第i个客户端的本地损失函数。
[0072]
将不同客户端的损失函数聚合,假设有n个客户端对数据进行了分区,用基于深度强化学习的影响评估器学习聚合权重pi。将聚合训练过程中的状态-动作转换和奖励抽象为一个马尔科夫决策过程,在第t轮迭代中,基于深度强化学习的影响评估器获得环境观测s
t
,并执行动作a
t
,a
t
表示第t轮所有动作的向量集合,环境受到智能体的影响转移到状态s
t 1
,智能体获得此过程的回报r
t
。则强化学习智能体的目的是找到一个最大化长期回报期
望的最优策略:
[0073]
π*=argmax
πeτ~π(τ)
[r(t)]
ꢀꢀꢀ
(3)
[0074]
其中π表示策略,τ表示使用策略与环境进行交互得到的一条轨迹,e表示均值,r(τ)表示这条轨迹的总体回报。接下来通过展开公式,可以得到目标函数和基于蒙特卡洛近似的梯度分别为:
[0075][0076]
其中,j是目标函数,θ是关于策略的神经网络参数,d是积分公式中的固定符号;
[0077]
由于联邦学习的训练对于时间成本和计算资源的要求都很高,采用强化学习中的ppo算法,提高样本效率。应用重要性采样的思想,可有:
[0078][0079]
其中π表示策略,τ表示使用策略与环境进行交互得到的一条轨迹,r(τ)表示这条轨迹的总体回报,π
θ_new
表示新策略,π
θ_old
表示老策略。
[0080]
即应用旧的交互轨迹,学习新的策略。
[0081]
在一些实施例中,敏感场景下可提升系统公平性的横向联邦学习训练方法的结构示意图如图2所示,图中的ω
globa
是全局参数,即对于每个客户端上传的本地参数ωi、基于深度强化学习的影响评估器输出的pi,根据图中服务器内的公式计算,得到的全局参数为ω
globa
。图2对应的流程如下:
[0082]
(1)所有n个数据大小和分布不完全相同的可用设备签入服务器作为客户端,服务器按照一定的比例c,选择参与更新的客户端k=n*c,初始化模型参数ω
init
并传到被选中的客户端,客户端利用全局模型参数在验证集上得到验证精度,然后在本地数据上训练,并返回本地模型参数{ω
i1
,k∈k}和验证精度{acc
k1
,k∈k}。
[0083]
(2)第t轮迭代中,服务器根据回传的acc_k^t计算平均精度μ^t和基尼系数gini^t,计算客户端k参与全局更新的权重p_{k},然后根据{ω
kt
,k∈k}和{p
it
,k∈k}更新全局模型参数。
[0084]
(3)服务器随机选择一定比例的客户端参与更新,被选中的客户端用上一轮全局模型ω
globa
^{t}进行本地训练后,上传本地更新后的模型参数和验证精度。
[0085]
图3a至图3c和图4a至图4c展示了本发明实施例提出的敏感场景下可提升系统公平性的横向联邦学习训练方法分别与fedavg(联邦学习)和fedprox(联邦聚合)结合后的效率。仿真设置了100个客户端,分别在cifar10、cifar100和fashion-mnist数据集上进行训练,客户端的本地数据分布呈高度异质性。在模型选择上,cifar10和cifar100我们采用cnn(卷积神经网络)模型训练,fashion-mnist则采用一个四层的mlp(多层感知器)。可以观察到,本发明实施例的方法基本保持与基线相同的收敛速度,平均精度都有小幅度提升或更加平稳,而公平性都有显著增强。
[0086]
接下来,本发明实施例的方法与其他旨在提升公平性的联邦学习方法在同一数据集上测试。为了适应基线算法,采用与现有技术相同的实验设置,本发明实施例提取出标有三个类别的数据子集——衬衫/上衣、套头衫和衬衫,并将这个子集分成三个领域,每个领域包含一类服装。然后,使用逻辑回归和adam优化器为这三个类训练一个分类器。由于这里
的客户端唯一地标识标签,在这个实验中,本发明实施例没有与在特定域上训练的模型进行比较。验证结果如图5a至图5c所示,每个客户端上左、中、右的数据分别是q-ffl算法、afl算法和本发明实施例方法的结果,gini越小越公平,其中,客户端1、客户端2和客户端3中的左边均为q-ffl算法的结果,gini为0.084,中间均为afl算法的结果,gini为0.046;右边均为本实施例方法的结果,gini为0.027。从图5a至图5c中可以观察到,不论是最终的平均精度还是客户端之间的公平性,本发明实施例的方法都表现得更好。
[0087]
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干等同替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献