联邦学习-FedAvg、FedAMP论文解读

文章目录

  • 联邦学习-FedAvg、FedAMP论文解读
    • FedAvg解读
      • 解决问题
      • 算法原理
      • 实验结果
      • 优缺点
    • FedAMP解读
      • 解决问题
      • FedAMP算法原理
      • HeurFedAMP算法原理
      • 实验结果
      • 优缺点

联邦学习-FedAvg、FedAMP论文解读

参考论文:
FedAVG-《Communication-efficient learning of deep networks from decentralized data》
FedAMP-《Personalized Cross-Silo Federated Learning on Non-IID Data》

FedAvg解读

解决问题

解决FedSGD模型融合耗时过长问题。

算法原理

联邦学习-FedAvg、FedAMP论文解读_第1张图片

  1. 初始化权重w0;
  2. 进行第t轮模型融合,从所有客户端中随机选取St个客户端;
  3. 基于w0在每个客户端上进行finetune,得到新模型wkt+1;
  4. 对k个模型取平均得到wt+1
  5. 依次往复,进行下一轮模型融合;

实验结果

联邦学习-FedAvg、FedAMP论文解读_第2张图片
如上图,FedAVG相对于FedSGD在相同效果情况下,通讯成本大大降低。不过上表未体现本地模型训练耗时。

优缺点

优点:
相对于FedSGD,大大缩短训练耗时。
缺点:
各个客户端公用一个融合模型,对于非独立同分布数据,可能无法满足各个客户端需求。

FedAMP解读

解决问题

传统的联邦学习的目的是为了获得一个全局共享的模型,供所有参与者使用。但当各个参与者数据分布不一致时,全局模型却无法满足每个联邦学习参与者对性能的需求,有的参与者甚至无法获得一个比仅采用本地数据训练模型更优的模型。

FedAMP算法原理

联邦学习-FedAvg、FedAMP论文解读_第3张图片
联邦学习-FedAvg、FedAMP论文解读_第4张图片
结合图1,在云服务,对应每个客户端生成一个个性化模型,该模型由各个客户端模型加权融合获得。
在这里插入图片描述
云服务对应第i个客户端云模型ui来自j客户端模型wj所需要权重 ξ \xi ξi,j由式7计算可得,其中A表示欧氏距离; ξ \xi ξi,i计算如下式,
ξ i , i = 1 − ∑ j ≠ i m ξ i , j \xi_{i,i}=1-\sum^m_{j \neq i}\xi_{i,j} ξi,i=1j=imξi,j

HeurFedAMP算法原理

HeurFedAMP基于FedAMP进行改进,由于模型网络结构复杂,对应参数维度比较大,欧氏距离不足以评估模型之间差异性,因此该用余弦相似度,对应 ξ \xi ξi,j计算如式8,
在这里插入图片描述
其中,
ξ i , i = 1 / ( N i + 1 ) \xi_{i,i}=1/(N_i+1) ξi,i=1/(Ni+1)
Ni表示与客户端i具有相同数据分布的客户端数量。

实验结果

在独立同分布数据集上性能如表1所示,
联邦学习-FedAvg、FedAMP论文解读_第5张图片
在病态的非独立同分布数据集上性能如表2所示,
pathological non-IID data表示每个客户端仅拥有两类数据,客户端数据之间不具有相似性。
联邦学习-FedAvg、FedAMP论文解读_第6张图片
在实际的非独立同分布数据集上性能如表3所示,
practical non-IID data表示对客户端进行分组,在同一组中客户端拥有相似数据分布,不同组织之间数据分布不同。
联邦学习-FedAvg、FedAMP论文解读_第7张图片

优缺点

优点:
一定程度上解决数据非独立同分布问题,对各个客户端进行个性化定制
缺点:
个性化权重计算方式不明确,由于代码未开源,不知余弦相似度计算为针对所有参数还是fc层之前的一维向量进行余弦相似度,若为全部参数,则如何计算,变换为一维向量计算?

注意:本文为个人理解,如有错误之处,烦请指正。

你可能感兴趣的:(深度学习,联邦学习,深度学习,联邦学习)