基于随机变异的泛化联邦学习
来源:AAAI2024
Abstract
问题:
FedAvg 将相同的全局模型派发给客户端进行本地训练,容易陷入尖锐解,导致训练出性能低下的全局模型
提出 FedMut:
本文提出了一种名为 FedMut 的新型FL方法,它根据梯度变化变异全局模型,以生成下一轮训练的几个中间模型。每个中间模型将被派发到客户端进行本地训练。最终,全局模型会收敛到突变模型范围内的平坦区域内
Introduction
当模型收敛到两个客户端的平坦最优区域的重叠区域时,它在大多数客户端中都能实现高推理性能
Relate work
相关工作部分讨论了为了提高传统 FL 的推理性能,已经提出了许多 FL 优化方法。具体来说,这些方法可以分为三类,即
- 基于全局变量的 FL 方法
这类方法通常使用全局变量来指导本地训练朝相似方向进行
FedProx 使用本地模型与全局模型之间的平方距离作为近端项来正则化本地损失函数,从而稳定模型的收敛
SCAFFOLD 生成一个全局控制变量,并使用该变量在本地训练过程中纠正本地模型的优化方向
缺点:需要额外的通信开销来分发全局变量,或者在客户端上计算近端项的额外计算开销
- 基于设备分组的 FL 方法
这类方法尝试根据特定指标对设备进行分组,然后从不同分组中智能选择设备进行本地训练。大多数设备分组方法使用模型相似性作为分组指标,因为由于隐私保护的考虑,直接获取每个客户端的数据分布是困难的
CluSamp 使用样本大小或模型相似性作为客户端分组的指标
FedCluster 将客户端分组,并在每个 FL 轮次中循环地执行 FL
缺点:它们需要获取所有本地模型,这导致 FL 与安全聚合机制不兼容,从而可能引起潜在的隐私泄露风险
- 基于知识蒸馏的 FL 方法
这些方法采用著名的知识蒸馏技术来增强FL的推理性能。具体来说,它们使用一个表现良好的“教师模型”来指导“学生模型”的训练
FedAUX 使用辅助数据集进行数据依赖的蒸馏来初始化服务器模型
FedDF 使用集成模型作为“教师模型”,并使用未标记数据进行蒸馏,以加速FL训练
FedGen 使用内置生成器和代理数据集实现无数据蒸馏,解决了对额外数据集的需求问题
缺点:需要额外的计算开销来进行知识蒸馏和额外的数据集
Motivation
如果全局模型位于平坦区域,那么在其邻域内的模型仍然处于相同平坦区域的概率更高。相反,如果模型位于尖锐区域,那么在其邻域内的模型可能位于其他区域。基于这种直觉,我们变异全局模型以在其中生成多个模型,用于本地训练。当所有变异模型都位于相同区域时,我们可以获得一个泛化良好的全局模型,其邻域是平坦的
如图2(a)所示,云服务器通过模型变异过程生成四个变异模型。由于由变异模型组成的邻域小于初始全局模型所在的平坦区域,所有变异模型仍然位于这个平坦区域内。通过本地训练,所有变异模型都朝着平坦区域的中心优化,聚合后的全局模型相应地更新到平坦区域的中心
如图2(b)所示,由于由变异模型组成的邻域大于平坦区域,三个变异模型位于另一个区域而不是初始全局模型所在的尖锐区域。通过本地训练,三个变异模型朝着平坦区域优化,只有一个变异模型在尖锐区域进行优化。因此,聚合后的全局模型朝平坦区域移动
Settings
- 随机梯度下降(SGD)优化器
- learning rate = 0.01
- momentum = 0.9
- batch size = 50
- epoch = 5
数据集
- CIFAR-10
- CIFAR-100
- Shakespeare
模型
在 CIFAR-10 和 CIFAR-100 上
- CNN、ResNet-18
在 Shakespeare 上
- LSTM
动机验证
实验结果
消融研究