# Federated Learning

> Use when working with federated learning — privacy-preserving ML, FATE, PySyft, FedAvg

- Skill: `liaosw97/federated-learning` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add liaosw97/federated-learning`
- Raw SKILL.md: https://api.skillmd.com/api/skills/liaosw97/federated-learning/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Research & Search
- Author: liaosw97 (https://skillmd.com/u/liaosw97)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/liaosw97/federated-learning

---


## 核心原则
- 数据不出域：原始数据始终保留在本地，仅传输模型更新参数
- 隐私保护优先：采用差分隐私、安全多方计算等技术保护数据隐私
- 公平性保障：确保各参与方的贡献得到公平对待和合理回报
- 通信效率优化：最小化通信轮次和数据传输量
- 鲁棒性设计：系统应能容忍参与方掉线、数据异构和恶意攻击

## 技术栈
- FATE：微众银行开源的工业级联邦学习框架，支持横向/纵向联邦
- PySyft：OpenMined开发的隐私保护深度学习库，支持联邦训练和安全计算
- TensorFlow Federated：Google开源的联邦学习框架，与TF生态深度集成
- NVIDIA FLARE：NVIDIA开发的联邦学习平台，支持医疗AI应用
- FedML：分布式联邦学习开源库，支持跨云和边缘部署
- 差分隐私（DP）：通过添加噪声保护个体隐私的数学框架
- 安全聚合（Secure Aggregation）：密码学协议保护聚合过程中的参数隐私

## 最佳实践
1. **数据分区策略**：横向联邦适用于特征相同但样本不同的场景；纵向联邦适用于相同样本但特征不同的场景；混合联邦结合两者优势处理复杂数据分布

2. **隐私预算管理**：合理分配差分隐私预算（ε, δ），平衡隐私保护程度和模型效用；采用隐私放大技术如子采样、洗牌减少隐私消耗

3. **模型聚合优化**：使用FedAvg作为基准算法，根据数据异构程度选择FedProx、SCAFFOLD等改进算法；实施梯度裁剪防止异常更新影响全局模型

4. **通信压缩**：采用梯度稀疏化、量化压缩传输数据量；使用异步更新策略容忍网络延迟和参与方异构性

5. **安全机制**：实施拜占庭容错机制防御恶意参与方；采用可验证聚合验证服务器计算正确性；建立参与方身份认证和访问控制体系

## 关键约定
1. 每轮参与训练的客户端比例建议不低于 10%，确保模型更新代表性
2. 差分隐私噪声参数应根据数据敏感度和隐私预算动态调整
3. 学习率应随训练轮次衰减，建议使用分层学习率策略
4. 模型更新前需进行梯度裁剪，推荐裁剪范数为 1.0
5. 建立完整的联邦学习日志和审计机制，记录所有模型更新和聚合过程

