在联邦学习中,数据加密是通过保护模型更新而不是原始数据来间接处理的。由于联邦学习的核心原则是保持数据分散,因此原始用户数据永远不会离开本地设备。相反,加密技术侧重于保护客户端和中央服务器之间共享的模型参数或梯度。三种常见的方法是安全聚合、同态加密和差分隐私。这些方法确保敏感信息在训练过程中不会暴露,即使更新被拦截或分析。
安全聚合是一种广泛使用的协议,它在合并来自多个客户端的模型更新之前对其进行加密。例如,谷歌用于移动键盘预测的联邦学习系统就使用了这种方法。客户端使用加密密钥对其本地模型梯度进行加密,服务器只能解密所有更新的聚合结果,而不能解密单个贡献。同态加密更进一步,允许对加密数据进行计算——客户端发送加密的模型更新,服务器在不解密的情况下执行数学运算(例如平均)。医疗保健应用程序可以使用此方法来确保患者数据在跨医院训练共享模型时保持私密。差分隐私会向模型更新添加噪声,以防止对原始数据进行逆向工程。苹果公司在 Siri 建议等功能中采用了这种方法,其中将随机噪声注入到更新中,以模糊单个用户模式。
每种方法都有其权衡。安全聚合需要客户端之间的协调来管理加密密钥,这增加了复杂性。同态加密的计算成本很高,使其对于大型模型不切实际。如果添加的噪声过多,差分隐私会降低模型准确性。开发人员通常将这些技术结合使用——例如,使用安全聚合和轻量级差分隐私——以平衡隐私和效率。 TensorFlow Federated 和 PySyft 等库提供了实现这些方法的工具,抽象了加密细节。关键在于,联邦学习中的加密不是关于加密数据本身,而是确保共享信息(模型更新)在协作期间不会泄露敏感细节。