[论文阅读](FedProx)Federated Optimization In Heterogeneous Networks

论文链接:https://arxiv.org/abs/1812.06127

FedProx代码:GitHub - litian96/FedProx: Federated Optimization in Heterogeneous Networks (MLSys '20)

摘要

FL与传统分布式学习以两个关键挑战相区别:

        1)系统异构性(设备间通信和计算能力的差异)

        2)统计异构性(用户间数据非独立同分布non-iid)

为解决联邦网络中的异构性,作者提出FedProx。

FedProx可以视作是FedAvg的泛化和重参数化(虽然对FedAvg的改动很微小,但是影响显著)

在理论方面,FedProx保证了当数据为non-iid时模型的收敛性,并允许每个参与设备执行可变的工作量,得以保证了设备级的系统约束。

在实验方面,证明了广义的FedProx在异构网络中更具有稳定性和鲁棒性。

1 引言

为了解决异构型及高通信成本,允许本地更新和低参与的优化方式是联邦学习的流行方法。

虽然FedAvg可用于解决统计异构性问题(即不同设备具有不同的计算能力),但是他不允许参与设备根据其底层系统约束执行可变数量的本地工作;相反,简单的丢弃无法在指定时间窗口内计算E个epoch的设备是很常见的。

【换而言之】:FedAvg算法要求所有参与方在同一时间窗口内执行相同数量的局部训练轮次,然后将本地模型权重进行平均。然而,在实际情况中,由于设备的异构性和底层系统约束,某些设备可能无法满足这个要求。因此,为了保持整体算法的平衡和一致性,常常会简单地排除这些无法满足要求的设备,不让它们参与到联邦学习中。

在FL中,系统异构性和统计异构性相互作用,无论是丢弃落后者,还是合并来自落后者的部分信息,都会隐式地增加统计异构性,不利于收敛。

为缓解这一问题,在目标函数中增加一个近端项来提高稳定性。

【注】:近端项为服务器提供一种原则性的方法来解释与部分信息相关的异构性。

从理论上讲,这些修改能够为FedProx提供收敛保证并分析异质性的影响。

同时,FedProx提高了异构网络中联邦学习的稳定性和整体准确性——在高异构设置中平均提高 22% 的绝对测试精度。

2 背景及相关工作

由于移动终端的数据量增长以及人们对于隐私的更多关注,FL应运而生,被用于解决隐私,异构数据和设备和大规模分布式网络。

针对联邦设置中的特定挑战而量身定制的优化方法比传统的分布式方法(例如 ADMM或小批量方法 )有显著改进,它们允许不精确的局部更新以平衡大型网络中的通信与计算,并且允许在任何通信回合中仅使用部分设备。

例如Smith等人(2017)提出的一种通信效率高的原始-对偶优化方法,通过多任务学习框架学习每个设备的独立但相关的模型,尽管该方法具有理论上的保证和实际的有效性,但这种方法不能推广到非凸问题,例如深度学习(不再保证强对偶性);


FedAvg可用于解决非凸问题,解决了统计异构性

FedAvg是一种基于原始数据的平均局部随机梯度下降(SGD)进行更新的启发式方法,在实际中表现中确实有效,但是由于其本地更新方案、每轮使用的设备很少且数据经常以异构形式分布的问题,导致其并不适用于异构环境。

FedProx(提出近端项,在异构环境下适配,解决了系统异构性)

【注】:FedAvg的缺点

• FedAvg几乎没有考虑系统异构。在实际中,若一些局部模型没能在规定时间内完成训练,系统会丢弃这些模型,从而损失全局模型的准确率。

• 没有从理论上分析其收敛速率等指标

【关于异构性】:

 •  系统异构 ( system heterogeneity) :一个联邦学习的系统中存在许多设备,这些设备的计算能力、存储能力、网络通信能力不尽相同,等待落后的局部模型会拖慢整个系统的训练速度,而抛弃落后的局部模型可能会损失全局模型的准确率( accuracy
 •  统计 异构 ( statistical heterogeneity) :不同设备所持有的数据之间是非独立同分布的( non-IID ),此外还有数据不平衡的情况。

        受 FedAvg 的启发,提出了更广泛的框架 FedProx,该框架能够处理异构联邦环境同时保持相似的隐私和计算成本优势

        通过局部函数之间的统计不相似性特征来分析框架的收敛行为,同时还考虑了实际的系统约束。

        作者的相异表征的灵感来自于求解线性方程组的随机Kaczmarz方法,这是一种类似的假设,用于分析SGD在其他设置中的变体。FedProx为异构联邦网络中的优化提供了改进的鲁棒性和稳定性。

        FedProx 中的近端项和分析中使用的有界差异假设,虽然已经在其他优化文献中进行了研究,但是动机非常不同,在非联邦设置中。为了完整起见,在附录 B 中对此背景工作进行了进一步讨论。

3 联邦优化:算法

        联邦学习方法用于处理收集数据的多个设备和协调整个网络全局学习目标的中央服务器,目标是最小化:

        最小化目标函数 f(w),它是一个关于变量 w 的函数,用于描述一个优化问题的目标或损失。该目标函数可以通过将一系列函数 Fk(w) 按照权重因子 pk 进行加权求和来表示。

  • N 是设备的数量,表示参与优化的设备的个数。
  • pk 是权重因子,满足 pk ≥ 0,并且所有权重因子的总和为1,可设置为nk/n(nk为设备k上的样本数量,n为总样本数量)。
  • Fk(w) 是局部目标函数,它度量了可能对应不同数据分布 Dk 的局部经验风险。具体而言,Fk(w) 可以通过在设备 k 上使用数据集 Dk 上的 nk 个样本进行训练,计算函数 fk(w; xk) 的经验风险的期望值来定义。这里 Exk ∼ Dk 表示在数据集 Dk 上通过抽样得到的 xk 样本,nk 表示每个设备 k 上的样本数量。
  • 文中指出,Fk(w) 可能是非凸函数,也就是说,每个函数 Fk(w) 不一定具有凸性质

        为了减少通信,联邦优化中的一种常见技术是,在每个设备上,基于设备数据的局部目标函数被用作全局目标函数的代理。

        即在每个外部迭代中,选择设备的子集,并使用局部求解器来优化每个选定设备上的局部目标函数。然后,设备将他们的本地模型更新传达给中央服务器,服务器聚合它们并相应地更新全局模型。在这种情况下允许灵活性能的关键是可以不精确地解决每个本地目标。这允许根据执行的局部迭代次数调整本地计算与通信的数量(额外的局部迭代对应于更精确的局部解决方案)。我们在下面正式介绍这个概念,因为它将在整篇论文中使用。

函数 h(w; w0) 的γ-近似解(γ-inexact solution):

  • 函数 h(w; w0) 是关于变量 w 的函数,其中 w0 是一个给定的固定向量。
  • F(w) 是一个函数,表示一个关于变量 w 的目标函数。
  • μ 是正数,表示一个调节参数。
  • ‖w − w0‖^2 表示 w 和 w0 之间的欧几里得距离的平方。
  • γ 是一个取值范围在 [0, 1] 的参数,用来衡量解的近似程度。较小的 γ 对应着更高的准确度。
  • 符号 ∇ 表示梯度,∇F(w) 表示目标函数 F(w) 关于变量 w 的梯度。
  • 符号 ‖∇h(w; w0)‖ 表示函数 h(w; w0) 关于变量 w 在某一点的梯度的范数(即梯度的长度)。

根据定义,当满足条件 ‖∇h(w∗; w0)‖ ≤ γ ‖∇h(w0; w0)‖ 时,称 w∗ 为 h(w; w0) 的 γ-近似解。换句话说,当在 w0 点处计算的梯度的范数与在 w∗ 点处计算的梯度的范数之比不超过 γ 时,w∗ 被定义为 h(w; w0) 的 γ-近似解。

【注】:

        较小的 γ 对应着更高的准确度,即近似解需要更接近精确解。

        此定义可用于描述在优化问题中的近似解的准确程度。

3.1 FedAvg

        在FedAvg 中,设备 k 处全局目标函数的局部代理为 F_{k} (·),局部求解器为随机梯度下降 (SGD),每个设备上使用相同的学习率和本地 epoch 的数量。在每一轮中,选择总设备的子集 K << N 在本地运行 E 个 epoch 数,然后对得到的模型更新进行平均。FedAvg的细节总结在算法1中。

        FedAvg中优化超参数的调整是至关重要的。特别是FedAvg 中的局部 epoch 的数量(即局部更新次数 E)在收敛性中起着重要作用。

        执行更多的局部更新会增加局部计算量并减少通信,从而提高通信受限网络的整体收敛速度;但对异构的局部目标函数,较多局部更新不但会影响收敛,甚至偏离全局目标,还可能使更多的设备无法在给定时间内完成要求次数的更新。

        随着本地数据和可用系统资源的变化,最佳局部更新次数会有所不同,需要增加收敛鲁棒性,且尽可能增大局部更新次数。

        据此提出FedProx,形式化表示局部更新次数随网络特征的变化。       

伪代码分析:

设一共有K个客户机,中心服务器初始化模型参数,执行若干轮(round),每轮选取至少1个至多K个客户机参与训练,接下来每个被选中的客户机同时在自己的本地根据服务器下发的本轮(t轮)模型W_{t}用自己的数据训练自己的模型W^{_{t+1}^{k}},上传回服务器。服务器将收集来的各客户机的模型根据各方样本数量用加权平均的方式进行聚合,得到下一轮的模型W_{t+1}

3.2 FedProx

FedProx(算法2)框架类似于FedAvg,因为在每一轮中选择设备的子集,执行本地更新,然后对这些更新进行平均以形成全局更新。然而,FedProx做了以下简单而关键的修改,这导致了显著的经验改进,并允许我们为该方法提供收敛保证。

容忍部分工作

        由于系统异构性,强制每个设备执行相同数量的工作(即运行相同数量的本地 epoch,E)是不现实的,如 FedAvg 所示。

        在FedProx中,我们通过允许根据可用的系统资源在本地跨设备执行不同数量的工作来推广FedAvg,然后聚合从掉队者发送的部分解决方案(与丢弃这些设备相比)。

总而言之就是:允许局部设备根据其可用系统资源,执行可变数量的工作(而不是丢弃落后设备),即为不同设备和不同迭代,提供可变的γ,并由定义1扩展为定义2。

 从定义1到定义2,做出了以下改进:

  1. 函数形式的变化:定义1中的函数为 h(w; \omega _{0}) = F(w) + μ/2 ‖w − \omega _{0}‖^2,其中 \omega _{0} 是一个给定的固定向量;而定义2中的函数为 h_{k}(w; w_{t}) = F_{k}(w) + μ/2 ‖w − w_{t}‖^2,其中w_{t}是一个特定的固定向量。

  2. 目标函数的变化:定义1中的目标函数为 F(w),是一个整体的目标函数;而定义2中的目标函数为 F_{k}(w),表示每个设备上的局部目标函数。

  3. 梯度的计算方式的变化:定义1中梯度为 ∇h(w; \omega _{0}) = ∇F(w) + μ(w − \omega _{0}),表示整体目标函数 F(w) 相对于变量 w 的梯度;而定义2中梯度为 ∇h_{k}(w; w_{t}) = ∇F_{k}(w) + μ(w − w_{t}),表示每个设备上局部目标函数 F_{k}(w) 相对于变量 w 的梯度。

  4. γ的含义保持不变:在两个定义中,γ 都表示解的近似程度,较小的 γ 值对应更高的准确度。

总之,定义2在定义1的基础上进行了修改,主要是将目标函数和梯度的计算方式改为每个设备上的局部函数,以适应分布式优化问题。这样定义的\gamma _{k}^{t}近似解用于衡量每个设备的解在近似程度上的准确度,对于整体优化问题的近似解质量的评估更加全面。

Proximal term
        虽然容忍跨设备执行的大量工作可以帮助减轻系统异质性的负面影响,但过多的本地更新仍然(可能)导致由于底层异构数据导致方法发散。基于此建议在本地子问题中添加近端项,以有效地限制变量本地更新的影响。特别是,设备 k 不是直接最小化局部函数 F_{k}(·),而是使用其选择的局部求解器来近似最小化以下目标 h_{k}

        通过求解 minw h_{k}(w; w^{^{t}}),旨在找到一个 w 的取值,使 h_{k}(w; w^{^{t}}) 达到最小值。这个最小值表示了在局部目标函数的要求下,变量 w 的最优解。这样的最优解在分布式优化问题中可能对应于每个设备上的最佳解,或者是整体优化问题的一个近似解。

其中,函数 h_{k}(w; w^{^{t}}) 是由两部分组成的:

  • F_{k}(w) 是表示每个设备上的局部目标函数,它是一个关于变量 w 的函数。每个设备都有自己的局部目标函数,由于分布式优化问题的特点。
  • μ/2 ‖w − w^{^{t}}‖^2 是一个正则化项,其中 μ 是一个正数,用于平衡目标函数和正则化项之间的权重。正则化项惩罚了变量 w 和 w^{^{t}}之间的欧几里得距离的平方,从而对 w 和 w^{^{t}} 之间的接近程度进行约束。

近端项从两个方面是有益的:

1) 它通过限制本地更新更接近初始(全局)模型来解决统计异质性的问题,而无需手动设置本地 epoch 的数量

2) 它允许安全地合并由系统异质性引起的可变数量的本地工作。

本文近端项与其他近端项工作的不同在于:

  • 用于处理联邦网络中的异构性
  • 用于分布式设置中:非独立同分布数据;任意局部求解器;跨设备不精确更新;每轮选择活动设备子集

        我们在算法 2 中总结了 FedProx 的步骤。

特别是,我们注意到 FedAvg 是 FedProx 的一个特例,其中

(1)μ = 0;

(2) 特别选择的局部求解器是 SGD;

(3) 设备之间的常数 γ固定(对应于局部 epoch 的数量)和更新轮(即,没有系统异质性的概念)。

4 FedProx:收敛性分析

非随机算法(如SGD):通过使用恒定的步长来找到静止点

随机算法(如FedAvg,FedProx)通过减小步长使其收敛到静止点

(每轮中仅采样部分设备来执行更新,且各设备上执行的更新可能不准确)

        为了分析具有恒定步长的方法的收敛行为(在实践中通常实现),我们需要量化局部目标函数之间的差异程度。因为FL中无法实现跨设备同构(即无法可以通过假设数据是IID来实现)。

        故而提出一个度量,专用于测量局部函数间的差异,并在此假设下分析FedProx。

4.1 客户端异构

可以通过两种方式证明收敛性:

1)引入一种联邦网络中设备之间的差异度量来证明收敛性;

2)通过梯度的更简单、更限制性的有界方差假设来满足(推论 10)。

定义3:允许统计异构性,为IID假设下有界差异的推广。

        这里E_{k}[\cdot ]表示对质量p_{k}=n_{k}/n\sum_{k-1}^{N}p_{k}= 1的设备的期望(如式1所示)。定义 3 可以看作是具有有限差异的 IID 假设的泛化,同时允许统计异构性。作为健全性检查,当所有局部函数相同时,对于所有 w,我们有 B(w) = 1。然而,在联邦设置中,由于采样差异,数据分布通常是异构的,并且 B>1,即使样本被假定为 IID。让我们考虑F_{k}\left ( \cdot \right )与经验风险目标相关联的情况。如果所有设备上的样本都是同质的,即它们以 IID 方式采样,那么当min_{k}n_{k}\rightarrow \infty 时,每个 w 的 B(w) → 1,因为所有局部函数都收敛到大样本极限中的相同预期风险函数。因此,B(w) ≥ 1 和 B(w) 的值越大,局部函数之间的差异越大。

        使用定义 3,我们现在陈述我们的形式差异假设,我们在收敛分析中使用。这简单地要求定义 3 中定义的相异性是有界的。如前所述,我们的收敛速度是网络中统计异质性/设备差异的函数。 

【注】:

        当所有局部函数相同时,B(w)=1,其余B>1。B(w)越大,局部函数越不相似。要求定义3中的差异有界,可得到收敛性分析用到的正式差异假设。

假设1:有界差异 

        对于大多数实际的机器学习问题,不需要解决问题来高度精确的平稳解,也就是说,\epsilon 通常不是很小。事实上,众所周知,由于过度拟合,解决超出某个阈值的问题甚至可能损害泛化性能。尽管在实际联邦学习问题中,样本不是 IID,但它们仍然是从不完全不相关的分布中采样的(如果是这种情况,例如,跨设备拟合单个全局模型\omega将是不明智的)。

        因此,可以合理地假设局部函数之间的差异在整个训练过程中保持不变。我们还在 5.3.3 节中凭经验测量了真实数据集和合成数据集上的相异度量,并表明该指标捕获了现实世界的统计异质性,并且与实际性能相关(差异越小,收敛越好)。

4.2 FedProx分析

        使用有界相异假设(假设 1),我们现在分析执行 FedProx 一步时目标的预期减少量。我们的收敛速度(定理 6)可以直接从每轮更新的预期下降的结果中得出。我们为任何 k, t 假定相同的 \gamma _{k}^{t},以简化以下分析中的符号。

 定理4:非凸FedProx收敛性(B-局部差异)

        根据定理4(非凸FedProx收敛:B-local dissimilarity),假设满足假设1。假设函数Fk是非凸的、L-Lipschitz平滑的,并且存在L_ > 0,使得\bigtriangledown ^{2}F_{k}\succeq -L_{-}I,其中\frac{}{\mu }:=\mu -L_{-}>0 。假设w^{t}不是一个稳定解,且局部函数F_{k}是B-dissimilar,即B(w^{t}) ≤ B。如果在算法2中选择了适当的μ、K和γ,使得

,那么在算法2的第t次迭代中,我们有以下全局目标的期望减小:

,其中S_{t}是在第t次迭代中选择的K个设备的集合。

        定理 4 使用定义 3 中的相异性来识别 FedProx 每次迭代目标值的充分减少。在附录 A.2 中,我们提供了一个推论,用更常见的(尽管限制稍多)有界方差假设来表征性能。这个假设是常用的,例如,在分析 SGD 等方法时。接下来,我们提供了足够的(但不是必要的)条件,以确保定理 4 中的 ρ>0,以便在每一轮之后都可以实现足够的减少。

【注】:

        由执行一次FedProx,目标值的预期减少量(根据假设1),可进一步推导出收敛速度。使用定义3中的差异性,来确定每次迭代时目标值足够减小。        

 备注5:定理4中参数设置及原因

         最后,我们可以使用上述充分减小来表征在有界相异假设下收敛到近似平稳解集S_{s}=\left \{ w|E[\left \| \bigtriangledown f(w)^2) \right \|<\epsilon ] \right \}的速率,假设 1。请注意,这些结果适用于一般的非凸 F_{k}(·)。

定理6:FedProx的收敛速度 

        虽然迄今为止的结果适用于非凸 F_{k}(·),但我们也可以表征凸损失函数的特殊情况的收敛性,在局部目标方面具有精确最小化(推论 7)。附录 A.3 中提供了证明。

推论7:凸情况下的收敛性

        请注意,假设 1 中的小 \epsilon 转换为更大的 B_{\epsilon} 。推论 7 表明,为了解决使用 FedProx 精度越来越高的问题,需要适当地增加 μ。我们凭经验验证 μ > 0 在第 5.3 节中会导致更稳定的收敛。此外,在推论 7 中,如果我们在有界方差假设 (推论 10) 下插入B_{\epsilon}的上限,则实现精度 \epsilon 所需的步骤数为 O(\frac{L\Delta }{\epsilon } + \frac{L\Delta\sigma ^{2} }{\epsilon^{2} })。当局部函数不同时,我们的分析有助于表征FedProx和相似方法的性能。

【注】:

        精确度增高时,增大µ会使收敛更稳定;可推得实现某精度需要的步骤数,借此分析局部函数不同时,FedProx和类似方法的性能。

 备注8:与SGD相比较        

        为了为定理 6 中的速率提供上下文,我们在备注 8 的凸情况下将其与 SGD 进行比较。一般来说,我们对 FedProx 的分析不会产生改进经典分布式 SGD(无需本地更新)的收敛速度——尽管 FedProx 在每一轮通信中可能在本地执行更多工作。事实上,当数据以非相同分布的方式生成时,FedProx 等本地更新方案的性能可能比分布式 SGD 差。因此,我们的理论结果不一定证明了FedProx优于分布式SGD的优越性;相反,它们为FedProx收敛提供了足够的(但不是必要的)条件。我们的分析是第一个我们知道在异构设置中分析问题 (1) 的任何联邦(即,使用本地更新方案和低设备参与)优化方法的人。

       最后,我们注意到先前的分析假设没有系统异质性,并且对所有设备和迭代使用相同的 γ。但是,我们可以扩展它们以允许 γ 因设备和迭代而异(如定义 2 所示),这对应于允许设备执行由本地系统条件确定的可变数量的工作。我们在下面提供变量 γ 的收敛结果。

推论9:应用可变γ的收敛性

        前面的分析假设γ不变,这里考虑系统异构性,扩展为γ可变。

五、实验

5.1 实验细节

        在第 5.1 节和第附录 C 中提供了实验设置的全面细节。

        我们在不同的任务、模型和现实世界的联邦数据集上评估FedProx。为了更好地表征统计异构性并研究其对收敛性的影响,我们还评估了一组合成数据,这允许更精确地操纵统计异构性。我们通过将不同数量的本地工作分配给不同的设备来模拟系统的异构性。

Synthetic data

        为了生成合成数据,我们遵循与Shamir等人(2014)类似的设置,另外在设备之间施加异质性。

Real data

Implementation

        在 Tensorflow 中实现 FedAvg(算法 1)和 FedProx(算法 2)(Abadi 等人,2016)。为了与FedAvg进行公平的比较,我们使用SGD作为FedProx的局部求解器,并采用与算法1和算法2相比略有不同的设备采样方案:均匀采样设备,然后用与局部数据点数量成比例的权重对更新进行平均(如McMahan等人(2017)最初提出的)。虽然我们的分析不支持这种抽样方案,但我们观察到FedProx与FedAvg的相对行为是否使用了它。有趣的是,我们还观察到本文提出的采样方案实际上导致两种方法的性能更加稳定(参见附录 C.3.4,图 12)。这表明所提出框架的额外好处。附录 C.2 中提供了完整的详细信息。

Hyperparameters & evaluation metrics

        对于每个数据集,我们在 FedAvg(E=1 和没有系统异质性)上调整学习率,并为该数据集上的所有实验使用相同的学习率。对于所有数据集上的所有实验,我们将所选设备的数量设置为 10。

        对于每个比较,我们修复了所有运行中随机选择的设备、掉队和小批量顺序。我们根据全局目标 f (w) 报告所有指标。请注意,在我们的模拟中(详见第 5.2 节),我们假设每一轮通信都对应于特定的聚合时间戳(以真实世界的全局挂钟时间测量)——因此,我们报告了轮次而不是 FLOP 或挂钟时间的结果。有关附录 C.2 中的超参数的详细信息。

5.2 系统异构:容忍部分工作

        在第 5.2 节中,我们展示了 FedProx 在系统异构性的情况下容忍部分解决方案的改进性能。

        为了衡量允许发送部分解决方案以处理具有FedProx的系统异构性的效果,我们模拟了具有不同系统异构性的联邦设置,如下所述:

Systems heterogeneity simulations

        假设在训练期间存在一个全局时钟,每个参与设备将本地工作量确定为该时钟周期及其系统约束的函数。这个指定的本地计算量对应于第 t 次迭代时设备 k 的一些隐式值γkt。并且在模拟时设置全局局部更新次数E,而后让一部分设备执行比E少的更新,局部更新次数是在[1,E]中随机选择的,然后将随机选择出的局部更新次数分配给0%50%90%的所选设备。

        0%时,也就是没有设备执行比E少的更新,此时没有系统异构;90%时系统高度异构

        用于对比的FedAvg是直接删除了0%50%90%的落后设备,而FedProx聚合所有所选设备(部分)的更新。

        从图上可以看到,在0%时没看到fedavg的变化趋势,其实是因为在这个过程中μ=0且落后设备为0%的FedProx是等同于FedAvg的对比FedAvg和μ=0的FedProx:发现系统异构性越大,收敛性越差,与放弃受限设备相比,加入可变工作量有利于更快更稳定的收敛;

        对比μ=0和μ>0的FedProx:(表明增加近端项的优势)发现不论系统异构性如何,适当的μ可以提高稳定性,使发散的方法收敛;在大多数情况下μ>0的准确性更高也就是FedProx更为普遍适用(特别是高度异构环境中)

5.3 统计异构:近端项

        在第 5.3 节中,我们展示了 FedProx 在具有统计异构性(无论系统异构性如何)的环境中的有效性。我们还研究了统计异构性对收敛性的影响(第 5.3.1 节),并展示了经验收敛性如何与我们的理论有界相异假设(假设 1)相关(第 5.3.3 节)。

        为了更好地理解近端项如何在异构设置中有益,我们首先表明随着统计异构性的增加,收敛可能会变得更糟。

5.3.1 统计异构性的影响

        上图给出了损失随着通信轮数增加的变化情况,数据的异构性从左到右依次增加,其中 μ = 0 表示FedAvg。可以发现,数据间异构性越强,收敛越慢,但如果我们让μ > 0 ,将有效缓解这一情况,也就是模型将更快收敛。

        下图展示了四个合成数据集的相应差异测量(梯度的方差)。该指标捕获统计异质性并与训练损失一致——较小的差异表明收敛性更好。

5.3.2 μ > 0的影响

影响FedProx性能的关键参数为Eμ

        增大E会使局部模型偏离全局初始点过远,导致分歧;

        而合适的μ可以约束局部更新轨迹,使之更接近全局模型,保证收敛性。

自适应选择μ的方法:   

        当连续5轮出现损失增加/减少时,将μ增加/减少0.1 。对于完全IID的数据,初始化μ=1,对synthetic(1,1),初始化μ=0

六、结论

        提出优化框架FedProx,用于处理联邦网络中固有的系统和统计异质性。FedProx允许跨设备在本地执行不同数量的工作,并依靠近端术语来帮助稳定该方法。

        作者在设备相异假设下为FedProx在现实联邦设置中提供了收敛保证,同时也考虑了掉队等实际问题,并进行了实验验证。

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值