联邦学习与安全聚合
本节目标
能解释联邦学习(FL)与安全聚合分别做什么,画出客户端、服务器、单轮更新、参与集合和最终模型的可见信息;能分析非 IID、掉线、串谋、恶意客户端、推断与模型记忆。
两个不同概念
联邦学习把模型发送到数据所在方,本地计算更新,再由服务器聚合。它减少原始数据集中搬运,但服务器通常仍可看到更新,最终模型仍可能泄露训练信息。
安全聚合是一类密码协议,使服务器获得多个客户端更新的聚合而非每个更新。它保护的是协议规定下的单个输入可见性,不自动提供差分隐私,不保证客户端输入诚实,也不限制最终聚合或模型能透露什么。
“使用安全聚合”还没有说明是半诚实安全还是恶意安全,也没有说明服务器、客户端和协议角色的串谋阈值。若协议只在诚实但好奇服务器下证明输入隐私,不能把同一结论扩展到恶意服务器操纵参与集合、消息或恢复流程的场景。
服务器下发模型
→ 客户端本地训练/计算
→(可选:裁剪、DP、本地验证)
→ 安全聚合协议隐藏个体更新
→ 服务器得到聚合并更新模型先写威胁模型
至少声明:
- 服务器是诚实、诚实但好奇,还是可恶意偏离协议?
- 最多多少客户端/服务器串谋?
- 最小参与数与掉线阈值是什么?恢复协议会暴露什么?
- 客户端是否可能提交投毒、超界或畸形更新?
- 多轮中服务器能否操纵参与集合做差分,隔离某个客户端?
- 更新、聚合、指标、最终模型和日志分别对谁可见?
- 密钥、身份、设备注册、版本和撤销如何管理?
“数据没离开设备”只描述位置,不是完整保证。
工程难点
非 IID 与参与偏差
各客户端数据分布、数量与在线时间不同;平均更新可能偏向常在线、大数据量或特定地区设备。报告全局效果之外,还要检查群体/客户端分布、掉线和未参与人群。
通信与版本
模型大、网络慢、设备异构。压缩、量化、本地多步训练会影响收敛与隐私分析。客户端必须验证模型/代码版本,服务器要拒绝过期、重复或错误形状的更新。
恶意客户端与投毒
安全聚合会隐藏个体更新,也可能降低服务器发现异常的能力。需要贡献裁剪、格式/范围证明或验证、鲁棒聚合、参与身份和隔离实验;这些控制也各有绕过与效用权衡。
多轮泄露
小参与组、重复选择同一客户端、参与集合差分或服务器定制模型都可能增加推断。聚合值、训练指标、调试日志和最终模型都是输出。安全聚合不能修复过细输出。
与差分隐私组合
常见组合是先限制每个客户端/主体贡献,再对聚合加入经会计的噪声,同时用安全聚合减少服务器看到个体更新的机会。三项作用不同:贡献边界控制敏感度,安全聚合保护计算过程中的可见性,DP 限制发布结果对个体的影响。组合保证需匹配威胁模型、采样、掉线和实现,不能把技术名简单相加。
一个三机构联合训练检查表
- 每家机构的数据目的与合法/治理依据是否一致;
- 客户端、协调器、聚合器、模型接收者的身份与信任;
- 最小参与数、串谋阈值、掉线和恢复;
- 更新裁剪、验证、聚合、DP 和会计顺序;
- 指标与模型访问、成员/属性/反演攻击评测;
- 版本、审计、撤权、事件响应和退出后的数据/模型处置。
常见误区
- 把 FL 等同“数据不出域,因此隐私已解决”。
- 把安全聚合等同 DP,或认为它保护最终模型。
- 只防好奇服务器,不考虑客户端投毒、串谋和参与集合操纵。
- 为调试保存所有单客户端更新,绕开协议目标。
- 用论文中的参与数、性能或阈值直接推断自己的协议实现。
练习与自测
为三家机构联合训练画可见性矩阵:每个参与方能看到原始数据、单个更新、聚合、指标和最终模型中的哪一项。分别分析 1 个客户端掉线、服务器与 1 个客户端串谋、恶意客户端投毒和小组仅 2 人四种情形。
- 能区分 FL、贡献裁剪、安全聚合、鲁棒聚合和 DP 的保证。
- 能解释多轮参与集合为何会改变隐私风险。
- 能同时处理好奇服务器与恶意客户端。
- 能评估最终模型和运行日志,而非只看原始数据位置。
下一步
继续比较 MPC、同态加密与 TEE 的信任模型。
参考资料
- McMahan et al., Communication-Efficient Learning of Deep Networks from Decentralized Data(AISTATS 2017)
- Bonawitz et al., Practical Secure Aggregation for Privacy-Preserving Machine Learning(CCS 2017 版本;获取日期:2026-07-21)