[论文解读] PFLlib: A Beginner-Friendly and Comprehensive Personalized Federated Learning Library and Benchmark
PFLlib 提供一个初学者友好的库,实现了34种最先进的FL和个性化FL算法,并配有一个用于基准测试的综合评估平台,涵盖多种场景和数据集。
Amid the ongoing advancements in Federated Learning (FL), a machine learning paradigm that allows collaborative learning with data privacy protection, personalized FL (pFL)has gained significant prominence as a research direction within the FL domain. Whereas traditional FL (tFL) focuses on jointly learning a global model, pFL aims to balance each client's global and personalized goals in FL settings. To foster the pFL research community, we started and built PFLlib, a comprehensive pFL library with an integrated benchmark platform. In PFLlib, we implemented 37 state-of-the-art FL algorithms (8 tFL algorithms and 29 pFL algorithms) and provided various evaluation environments with three statistically heterogeneous scenarios and 24 datasets. At present, PFLlib has gained more than 1600 stars and 300 forks on GitHub.
研究动机与目标
- 通过提供一个最新、可扩展的SOTA pFL和经典FL算法库,促进pFL研究社区。
- 促进跨异质场景和数据集(覆盖CV、NLP和SSP任务)的可重复评估。
- 提供隐私感知评估工具,包括差分隐私(DP)和泄漏攻击探针,以评估鲁棒性和隐私保护。
- 降低研究人员和实践者学习、比较和扩展pFL方法的门槛。
提出的方法
- 在统一的代码库中实现34种算法(7种经典tFL + 27种pFL)。
- 提供三种统计异质场景(标签偏斜、特征漂移,以及一个真实世界的SSP场景)。
- 支持CV、NLP和SSP领域的14个数据集。
- 融入隐私特性,如差分隐私(Differential Privacy)和基于梯度的深度泄漏攻击(DLG)及PSNR评估。
- 设计一个简单、可扩展的API,包含 serverX.py、clientX.py 和 main.py,以便于新增算法和场景。
- 通过示例命令和评估工作流展示可用性。
实验结果
研究问题
- RQ1一个统一、对初学者友好的库能否覆盖广泛的SOTA FL和pFL算法并实现易扩展性?
- RQ2在不同统计异质性(标签偏斜、特征漂移)以及跨CV、NLP和SSP任务时,不同的pFL方法如何比较?
- RQ3隐私保护机制(DP、DLG评估)对算法性能和隐私保障有什么影响?
- RQ4平台是否能够通过提供标准化的评估流程,促进快速基准测试和方法开发?
主要发现
| 设置 | FMNIST (病态) | CIFAR-100 (病态) | TINY (病态) | FMNIST (实际) | CIFAR-100 (实际) | TINY (实际) | TINY* (实际) | AG News |
|---|---|---|---|---|---|---|---|---|
| FedAvg | 80.41 ± 0.08 | 25.98 ± 0.13 | 14.20 ± 0.47 | 85.85 ± 0.19 | 31.89 ± 0.47 | 19.46 ± 0.20 | 19.45 ± 0.13 | 87.12 ± 0.19 |
| FedProx | 78.08 ± 0.15 | 25.94 ± 0.16 | 13.85 ± 0.25 | 85.63 ± 0.57 | 31.99 ± 0.41 | 19.37 ± 0.22 | 19.27 ± 0.23 | 87.21 ± 0.13 |
| FedGen | 79.76 ± 0.60 | 20.80 ± 1.00 | 13.82 ± 0.09 | 84.90 ± 0.31 | 30.96 ± 0.54 | 19.39 ± 0.18 | 18.53 ± 0.32 | 89.86 ± 0.83 |
| Per-FedAvg | 99.18 ± 0.08 | 56.80 ± 0.26 | 28.06 ± 0.40 | 95.10 ± 0.10 | 44.28 ± 0.33 | 25.07 ± 0.07 | 21.81 ± 0.54 | 87.08 ± 0.26 |
| pFedMe | 99.35 ± 0.14 | 58.20 ± 0.14 | 27.71 ± 0.40 | 97.25 ± 0.17 | 47.34 ± 0.46 | 26.93 ± 0.19 | 33.44 ± 0.33 | 87.08 ± 0.18 |
| Ditto | 99.44 ± 0.06 | 67.23 ± 0.07 | 39.90 ± 0.42 | 97.47 ± 0.04 | 52.87 ± 0.64 | 32.15 ± 0.04 | 35.92 ± 0.43 | 91.89 ± 0.17 |
| APFL | 99.41 ± 0.02 | 64.26 ± 0.13 | 36.47 ± 0.44 | 97.25 ± 0.08 | 46.74 ± 0.60 | 34.86 ± 0.43 | 35.81 ± 0.37 | 89.37 ± 0.86 |
| FedFomo | 99.46 ± 0.01 | 62.49 ± 0.22 | 36.55 ± 0.50 | 97.21 ± 0.02 | 45.39 ± 0.45 | 26.33 ± 0.22 | 26.84 ± 0.11 | 91.20 ± 0.18 |
| FedAMP | 99.42 ± 0.03 | 64.34 ± 0.37 | 36.12 ± 0.30 | 97.20 ± 0.06 | 47.69 ± 0.49 | 27.99 ± 0.11 | 29.11 ± 0.15 | 83.35 ± 0.05 |
| APPLE | 99.30 ± 0.01 | 65.80 ± 0.08 | 36.22 ± 0.40 | 97.06 ± 0.07 | 53.22 ± 0.20 | 35.04 ± 0.47 | 39.93 ± 0.52 | 84.10 ± 0.18 |
| FedALA | 99.57 ± 0.01 | 67.83 ± 0.06 | 40.31 ± 0.30 | 97.66 ± 0.02 | 55.92 ± 0.03 | 40.54 ± 0.02 | 41.94 ± 0.02 | 92.45 ± 0.10 |
| FedPer | 99.47 ± 0.03 | 63.53 ± 0.21 | 39.80 ± 0.39 | 97.44 ± 0.06 | 49.63 ± 0.54 | 33.84 ± 0.34 | 38.45 ± 0.85 | 91.85 ± 0.24 |
| FedRep | 99.56 ± 0.03 | 67.56 ± 0.31 | 40.85 ± 0.37 | 97.56 ± 0.04 | 52.39 ± 0.35 | 37.27 ± 0.20 | 39.95 ± 0.61 | 92.25 ± 0.20 |
| FedRoD | 99.52 ± 0.05 | 62.30 ± 0.02 | 37.95 ± 0.22 | 97.52 ± 0.04 | 50.94 ± 0.11 | 36.43 ± 0.05 | 37.99 ± 0.26 | 92.16 ± 0.12 |
| FedBABU | 99.41 ± 0.05 | 66.85 ± 0.07 | 40.72 ± 0.64 | 97.46 ± 0.07 | 55.02 ± 0.33 | 36.82 ± 0.45 | 34.50 ± 0.62 | 95.86 ± 0.41 |
| FedCP | 99.66 ± 0.04 | 71.80 ± 0.16 | 44.52 ± 0.22 | 97.89 ± 0.05 | 59.56 ± 0.08 | 43.49 ± 0.04 | 44.18 ± 0.21 | 92.89 ± 0.10 |
| GPFL | 99.85 ± 0.08 | 71.78 ± 0.26 | 44.58 ± 0.06 | 97.81 ± 0.09 | 61.86 ± 0.31 | 43.37 ± 0.53 | 43.70 ± 0.44 | 97.97 ± 0.14 |
| FedAvg+DBE | 99.74 ± 0.04 | 73.38 ± 0.18 | 42.89 ± 0.29 | 97.69 ± 0.05 | 64.39 ± 0.27 | 43.32 ± 0.37 | 42.98 ± 0.52 | 96.87 ± 0.18 |
| FedDistill | 99.51 ± 0.03 | 66.78 ± 0.15 | 37.21 ± 0.25 | 97.43 ± 0.04 | 49.93 ± 0.23 | 30.02 ± 0.09 | 29.88 ± 0.41 | 85.76 ± 0.09 |
| FedProto | 99.49 ± 0.04 | 69.18 ± 0.03 | 36.78 ± 0.07 | 97.40 ± 0.02 | 52.70 ± 0.33 | 31.21 ± 0.16 | 26.38 ± 0.40 | 96.34 ± 0.58 |
- PFLlib 实现了34种算法(7种tFL + 27种pFL),并提供多任务评估环境。
- 基准覆盖CV、NLP和SSP领域的14个数据集,包括标签偏斜和特征漂移的异质性场景。
- 实证结果(在选定的CV和NLP任务上)显示不同偏斜设置下不同方法的性能差异,说明方法-场景兼容性的重要性。
- 该库已经获得社区关注,GitHub活动表明被相关项目采用和改编。
- PFLlib 使实验具有可重复性且易于扩展,支持未来增加算法和场景。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。