第一部分:解决的问题
- 联邦学习(FL) 是一种分布式机器学习方法,允许设备在不共享本地数据的情况下协同训练模型。
- 在个性化联邦学习中,目标是为每个设备训练个性化模型,而不是一个通用的全局模型。然而,由于设备之间数据分布的异质性,传统方法会导致模型偏差。
第二部分:解决的方法/idea
论文提出了一种基于偏差校正的个性化联邦学习算法,能够更好地适应不同设备的个性化目标。
使用了元学习方法,如Model-Agnostic Meta-Learning (MAML) 和 Prototypical Networks (ProtoNet),实现快速适应用户特定任务。
MAML:不需要额外的参数进行定制化
ProtoNet:其中元模型作为特征表示,用于训练任务定制分类器
在大多数情况下,基于MAML的PFL性能良好,而基于protoNet的PFL在需要对新任务进行泛化,或者需要跨设备对类别名称进行匿名化的情况下尤为有效。
我们的目标:(与元学习一致),是训练一个能够适应多种任务的元模型,从而使该模型能够快速重新用于解决新的任务或现有任务,只需使用少量的训练样本。
论文提出了两种个性化联邦学习算法:
- PFLDyn: 扩展了FedDyn算法,减少了设备间数据异质性对全局优化的影响。
- PFLScaf: 基于SCAFFOLD算法的改进,增加了梯度校正步骤。
第三部分:效果/优势
- 在高异质性数据设置下,与传统方法(如FedAvg、Per-FedAvg)相比,新算法显著减少了通信成本,并在平均、最优和最差设备性能上均取得更优结果。
- 通信效率提升: 在一些实验场景中,PFLDyn的通信成本相比基准方法减少了5-10倍。
- 集中化性能接近: PFL算法在没有共享设备数据的情况下,性能接近于集中式训练模型的效果。
第四部分:算法详解
(1)个性化联邦学习(PFL)中的核心目标(MAML)
注:这个个性化变换函数来自“元学习思想”
(2)个性化变换函数Ti(MAML)
目的: 通过梯度下降的方法,对元模型进行一次更新,从而生成适合设备 i数据的个性化模型。
(3)基于 Prototypical Networks (ProtoNet) 的元学习方法
①ProtoNet的基本特征
- 无参数个性化:
- ProtoNet 是一种非参数方法,个性化模型的生成并不直接调整模型参数,而是通过特征嵌入和类别原型来完成任务。
- 标签匿名化:
- 由于只依赖类别原型表示,不需要显式地共享类别标签信息,因此适用于隐私要求较高的场景。
②ProtoNet 的核心思想
- 目标: ProtoNet 的目的是通过构造每个类别的“原型(Prototype)”表示来完成分类任务。
- 类别表示: 原型是类别内数据点的平均表示,用于代表该类别的特征中心。
③具体公式表示
核心思想就是对新样本x通过计算距离d来进行分到某个标签类别。
④实际例子
⑤ProtoNet在元学习中的应用
- w: 元模型,用于生成特征嵌入。
- x: 测试样本,是需要分类的输入。
- d(⋅,⋅): 距离函数,用来比较测试样本与类别原型之间的相似性。
(4)ProtoNet非参数化模型和MAML参数化模型之间的区别
(5)个性化联邦学习中的设备偏差(Device Bias)问题(MAML)
(6)去偏过程debiasing
(7)调整局部目标函数(Local Objectives)来实现去偏(Debiasing)
(8)两种方法来近似地优化目标函数w*
解决思路1:
同时,如果不加入这一项,那么就会导致“这会冻结更新,使设备的模型停留在服务器模型上”,也就是模型会一直朝着wt,而不会再有更进,而wt可不一定是w*
解决思路2:
两种方法的对比: