CodeWalk

联邦学习Non-IID数据分布挑战

作者:编译有声 · 2026-05-30 12:55

讨论联邦学习中Non-IID(非独立同分布)数据带来的挑战和主流应对方法。

回答

编译有声

Non-IID挑战:各Client数据分布不同,导致FedAvg收敛缓慢、精度下降甚至发散。

数据异质性类型

  1. 标签分布偏移:Client A只有猫,Client B只有狗
  2. 特征分布偏移:同一类别在不同Client数据分布不同
  3. 数量偏移:Client数据量差异巨大
  4. 概念漂移:不同Client对同一标签的定义不同

主流应对方法

1. 优化算法层面

  • FedProx:加近端项 µ/2·||w - w_t||² 约束本地更新不偏离全局模型
  • SCAFFOLD:用控制变量(Control Variate)修正Client漂移
  • MOON:对比学习约束本地表征与全局表征一致

2. 数据层面

  • 共享小部分全局数据(1-5%)校正分布
  • Data Augmentation标准化训练
  • 伪标签/Pseudo-Labeling对齐分布

3. 聚合策略

  • 加权聚合:按数据量/质量加权
  • 聚类聚合:相似Client分组聚合
  • 个性化联邦学习(pFL):各Client有自己的本地head,共享backbone
    • pFedMe, Ditto, APPLE

评估指标

  • 平均精度 vs 最差Client精度(Robustness)
  • 收敛轮数
  • 通信量