主要看收敛性证明,顺带重新看一遍这个论文。
为了锻炼写作能力,从这里开始我会顺带总结一些英文论文比较好的写作语句:
- is one of the main grounds that:是....的主要原因
- it has been shown that:已经表明...
- significantly suffer in:在...方面受到严重影响
- diverge:(表示数据或者结果出现偏差)
- Device-dependency:设备依赖性
- necessitate:需要;迫使
- communication overhead:通信开销
0. 摘要
本文的主要目标是开发一种健壮的联邦学习算法,该算法能够在用户样本的分布变化中获得令人满意的性能。为了实现这一目标,作者首先考虑用户数据中的结构化仿射分布转换,该转换捕获了联邦设置中依赖于设备的数据异构性。该扰动模型适用于各种联邦学习问题,例如图像分类,其中图像经历依赖于设备的缺陷,例如不同的强度、对比度和亮度。
为了解决用户之间的仿射分布偏移,作者提出了一种面向仿射分布变化的鲁棒联邦学习框架(FLRA),该框架对观测样本分布的仿射分配变化具有鲁棒性。
数值实验证明:仿射分布偏移确实足以显著降低模型的性能,并且与标准联邦学习和对抗训练方法相比,算法提供了显著的增益。
1. 引言
说了一堆,表明了现有的FedAvg并没有完全解决数据异构的问题,准确性会受到严重影响,因为即使是简单的线性分类器都足以显著降低FedAvg在图像识别任务中的性能。
然后引出了所谓FLRA的关键点,即队训练数据的异质性进行了建模,即,通过仿射变换将存储在第i个设备xi上的样本从正确的分布进行偏移:
实际生产场景中,这些变换可以是相机的失真,数据传输的噪声等等。
特别地,该变换能推广到一般应用场景中,即扰动失真:
进一步推广,这种失真也可以全局相同:
基于上述模型,FLRA把任务归结为一个极大极小鲁棒优化问题,该问题要寻找一个全局最优模型,使得(由局部仿射变换引起的)最坏情况下,总损失函数最小化。文章提到,解决这类问题的一种方法是使用对抗训练中的技术。
(有关对抗训练的知识,可以参考这篇文章:一文详解对抗训练方法)
然而,这种方法在联邦学习中是不可取的,因为它需要在每个设备上使用大量的计算资源,每次迭代时都要完全解决对抗性优化问题。
虽然FLRA极小极大问题通常是非凸非凹的,文章表明,在扰动和参数模型变量之间交替的FedRobust将收敛到满足Polyak-Łojasiewicz(PL)条件的极小极大目标中的一个稳定点。该算法也可以扩展到更一般的非凸非凹分布极小极大优化问题。
作为论文的另一个主要贡献,文章使用PAC贝叶斯框架证明了FLRA学习分类器的泛化误差界。另外,经过训练的分类器在对抗标准FGSM和PGD攻击时表现强劲,并优于FedAvg。
2. 联邦学习场景
n个节点,每个节点i可以访问大小为m的数据集,表示为:
对于给定的损失函数 和损失函数集
,经典的联邦学习问题即是通过解决以下经验风险最小化问题(ERM)将模型
与nm个数据相拟合:
为了模拟联合学习中数据的非一致分布特性,我们假设每个节点的数据点从共同分布发生了局部分布偏移。准确来说,在 中的每个样本都是根据共同的分布
的仿射变换
获得的,将每个服从
的
通过仿射变换
,其中
,
。不难看出
就是输入变量
的维数。根据该模型,不同的节点有不同的仿射变换
,但存储在特定节点
的所有样本都受到相同仿射变换的影响。
这样的模型适用于很多现实情况,例如,在每个设备中生成和存储的数据都是相同分布的失真,而不同的设备经历不同的失真。我们考虑一个对移动电话设备拍摄和维护的图像,执行联邦图像分类任务,根据所提出的模型,这种分布偏移被捕获为仿射变换。
为了控制扰动幅度,这里我们考虑Frobenius范数和L2范数 和
,强制仿射变换与恒等变换具有有界距离。于是基于上述模型,我们的目标是解决以下分布式鲁棒联邦学习模型:
上述公式可以解释为n+1个耦合优化问题。首先,对于n个内部最大化问题,对于给定的全局模型 ,每个节点都会根据自己拥有的m个数据,通过求解
,来找到能使损失函数最大化的仿射参数
。然后外部最小化问题找到在n个节点上产生最小累计损失值的全局模型。
总之,先使用服务器传来的全局模型 来计算仿射参数,再以这个仿射参数来优化本地的模型。(但是作者指出这样通信量和计算成本过大)
文章提出,为了防止仿射分布偏移,每个节点改为解决以下问题,其中 为拉格朗日乘子:
(至于为什么是拉格朗日乘子,可以参考KKT条件的知识和拉格朗日乘子法)
这里,我们使用平方范数惩罚,要求可行的仿射变换和恒等映射之间具有有界距离,并找到导致节点i的样本损失最大的最坏情况仿射变换。这使我们解决鲁棒联邦学习问题的方法正式化,我们称之为“鲁棒仿射分布转移的联邦学习框架”,简称FLRA。总问题可以写为如下形式:
接下来我们介绍求解FLRA的方法FedRobust。
3. FedRobust聚合算法
所提出的FedRobust算法是一种迭代方案,它应用随机梯度下降-上升(SGDA)更新来解决极大极小问题。算法流程图如下:
实际上,在每个局部更新的迭代 中,每个节点采取随机梯度上升法更新仿射参数
(由于是求max问题,梯度上升的方向就是极大值点的方向,所以学习率前的符号为正)。同时通过随机梯度下降法更新本地权重
。请注意,每个节点在每次迭代中仅更新一次其扰动参数,这与标准对抗训练方法相比产生了较低的计算成本。由于在本地更新了
轮才与服务器交互,这使得通信成本也对应减少了
倍。
值得注意的是本地的仿射参数 是耦合的。这是因为新的模型
来自所有节点更新模型的平均值,所以更新节点
的
将会在接下来的迭代中进一步地影响节点
的
。这是在第4.1节中FedRobust的优化证明时出现的重要技术挑战。
4. 理论保障:优化、泛化性和鲁棒性。
本节非常重要,可以说前面的看看就行,这里才是重点。
本节建立了作者的主要理论结果:
- 描述了算法中FedRobust的收敛性;
- 证明了学习的假设可以从训练数据适当地推广到未知的测试样本;
- 最后证明,解决FLRA的极小极大问题会产生一个鲁棒分类器,用于跨节点的Wasserstein移位。
4.1 优化保证(收敛性证明)
本节进行了收敛性证明,并表明FedRobust找到了两类损失函数的(2)中极小极大问题的鞍点。首先进行了以下的符号定义:我们令 为仿射参数的增广矩阵,对于n个节点的n个此类变量集合由矩阵
,于是极大极小问题可以改写为:
其中 和
表示受惩罚的全局损失函数和本地损失函数。即,对于每一个节点
都有:
我们同时也定义 表示求max后取定仿射参数的损失函数,定义
为求min后取定最优模型参数网络后的损失函数值。
正如前文所示,我们的各个本地数据都是异构的,接下来我们介绍几个可以量化数据中异构程度的概念
假设1(有界异构度)
我们假设当没有扰动时,局部梯度相对于全局梯度的方差是有界的,也就是说存在 使得对于
,
以及任意的模型权重
,都有:
假设2(随机梯度)
对于每个节点 ,随机梯度
和
都同属于无偏估计,各自的方差由
和
所限定:(关于无偏估计对于方差系数分母为什么是n-1,这篇文章给出了很好的证明:(1条消息) 无偏估计_你吃过卤汁牛肉吗的博客-CSDN博客_无偏估计)
假设3(利普希茨梯度)
所有局部损失函数都具有利普希茨梯度。(关于利普西茨条件和梯度,可见详细解析深度学习中的 Lipschitz 条件 - 知乎 (zhihu.com))也就是说,对于节点 ,对于任意的
我们都有:
也就是通过这四个常数 ,我们限制了梯度的增长。Lipschitz continuous用在函数值上是为了不让函数值变化的太快,保证了函数不会无限制的增长。
接下来文章对于两类损失函数:PL-PL和非凸-PL,证明了FedRobust收敛性,接下来我们将简要描述主要成果。
我们说一个函数 满足PL条件(Polyak-Lojasiewicz),则意味着如果该函数的最小值
存在且有界,则必然存在一个常数
,使得对于任意的自变量
,都有
类似地,我们可以为我们的极小极大目标函数定义双侧PL条件
假设4(PL 条件)
全局目标函数 满足双侧PL条件,即存在常数
,使得:
换句话说,假设4表明了满足各自的PL条件。为了量化在
轮时的最优差距,我们定义了势函数
。其中
,为该
时刻,计算仿射优化后的损失函数值期望,与最优损失函数值的差值;其中
,为仿射优化后损失函数值与原始经验损失函数值之差的期望。
注意, 和
都是非负的,如果
接近零,那么意味着
接近极大极小点。
定理1 (PL-PL损失的收敛性证明)
考虑算法1中FedRobust的迭代,令假设1、3、4成立。
那么对于任意的 ,最优差距
满足以下不等式: