联邦学习 (FL) 通过在去中心化设备上训练模型,而无需共享原始数据来保护隐私。主要的隐私技术包括差分隐私、安全多方计算 (SMPC) 和同态加密。这些方法解决了模型更新或聚合期间的数据泄露等风险,同时保持模型效用。下面,我将用实际术语向开发人员解释每种技术。
差分隐私 (DP) 向数据或模型更新添加受控噪声,以防止暴露单个数据点。 例如,FL 中的客户端可以在将本地模型梯度发送到服务器进行聚合之前,将噪声注入到其中。 像 epsilon (ε) 这样的参数决定了隐私-准确性权衡:较低的 ε 意味着更强的隐私,但可能会降低模型性能。 TensorFlow Federated 和 PySyft 等框架通过裁剪梯度并添加高斯或拉普拉斯噪声来支持 DP。 常见的实现是 DP-SGD 算法,该算法确保即使攻击者访问聚合更新,他们也无法逆向工程单个贡献。 开发人员必须仔细调整 ε 以平衡隐私保证和模型效用。
安全多方计算 (SMPC) 使用密码协议来聚合模型更新,而无需泄露单个贡献。 一种方法是秘密共享,其中客户端将其更新拆分为加密的份额,这些份额分布在多个服务器中。 服务器在不查看原始数据的情况下计算聚合结果。 另一种方法是安全聚合,用于 Google 的 FL 框架:客户端使用成对密钥加密更新,服务器对它们求和,以便单个值保持屏蔽。 例如,如果两个客户端共享一个秘密掩码,则它们组合的掩码会在聚合期间抵消。 这确保服务器只看到更新的总和,而不是单个值。 SMPC 对于大规模 FL 来说是高效的,但需要各方协调来管理加密密钥和通信。
同态加密 (HE) 允许对加密数据进行计算,使客户端能够将加密的模型更新发送到服务器。 服务器聚合这些密文并返回加密的结果,只有授权方才能解密。 例如,医疗保健 FL 系统可能会使用 HE 来确保敏感的患者数据保持端到端加密。 然而,HE 在计算上是密集型的,使其不太适合实时应用程序。 Microsoft SEAL 或 TenSEAL 等库为开发人员提供 HE 工具,但通常需要诸如部分加密(仅将 HE 应用于关键参数)之类的优化。 虽然 HE 提供强大的隐私性,但与 DP 或 SMPC 相比,其开销限制了可扩展性,使其更适合于高安全性、低延迟容忍的场景。