深度学习篇---联邦学习
一、什么是联邦学习框架联邦学习Federated Learning, FL是一种分布式机器学习范式其核心思想是数据不动模型动。即在保护用户隐私的前提下让多个参与方如手机、医院、银行在不共享原始数据的情况下协同训练一个全局模型。联邦学习框架则是支持这种训练模式的软件平台或系统架构负责管理通信、模型分发、聚合策略、安全机制等关键环节。二、联邦学习的关键组成与角色中心服务器Coordinator / Aggregator初始化全局模型分发模型给各客户端接收客户端上传的模型更新梯度或权重进行聚合如 FedAvg客户端Client / Participant持有本地数据不离私有环境接收全局模型后用本地数据训练只上传模型更新不上传原始数据通信协议加密传输TLS、同态加密、安全聚合断点续传、异步通信等聚合算法典型FedAvg加权平均进阶FedProx处理数据异构、SCAFFOLD减少通信轮次等隐私与安全机制差分隐私DP安全多方计算SMPC可信执行环境TEE三、主流联邦学习框架对比框架名称特点与适用场景语言典型支持TensorFlow Federated (TFF)与 TensorFlow 生态深度集成适合学术研究PythonFedAvg, DPPySyft提供强大的隐私保护原语多方计算、同态加密Python集成 PyTorchFATE企业级联邦学习平台支持横向、纵向、迁移FLPython多种安全协议Flower框架无关PyTorch/TF/SciKit-learn等轻松扩展Python多种聚合策略OpenFLIntel 出品侧重于医疗/物联网场景Python协作式工作流FedML支持跨设备、跨孤岛、移动端等多种场景Python/C分布式高效训练四、联邦学习的典型工作流程服务器初始化全局模型参数选择参与本轮训练的客户端可以是全部或随机子集服务器下发当前全局模型客户端本地训练若干 epoch用本地数据客户端上传模型更新梯度或增量服务器聚合更新如 FedAvg更新全局模型循环直至收敛或满足精度要求五、联邦学习框架的 Mermaid 总结框图下面这张图概括了联邦学习框架的核心架构、参与角色、关键流程六、联邦学习的挑战与框架应对挑战框架提供的解决方法通信效率低压缩梯度、本地多轮更新提升计算通信比数据非独立同分布个性化联邦学习、FedProx、聚类 FL设备异构掉线、慢异步聚合、容错机制、半同步策略隐私攻击安全聚合、差分隐私、可信执行环境恶意客户端鲁棒聚合Trimmed Mean、Krum、几何中位数七、一句话总结联邦学习框架是一套支持“数据不动模型协同”的分布式训练系统通过中央聚合机制与本地训练分离的设计在保护数据隐私的同时完成全局模型学习并借助安全聚合与加密通信抵御隐私风险。