← 文章 / AI技术
Google Research 博客 2小时前 · 2026-10-03 02:27:59 · 2 阅读

迈向可证明隐私的联邦数据学习

2017 年,Google 推出了 联邦学习(FL),这是一种跨去中心化、私有数据训练模型的机器学习技术。它已被用于驱动多项日常实用功能,例如 Gboard 上的 下一词预测和 Smart Compose、Google Messages 中的 回复建议,以及 Android 中的 Smart Text Selection。

我们的 FL 系统开发遵循四大核心隐私原则:(1)数据最小化、(2)数据匿名化、(3)透明度与可控性、(4)可验证性与可审计性。多年来对匿名化的研究演进,使得生产级模型通过强差分隐私(DP)保证得以实现,相关算法包括 矩阵分解 DP-FTRL(MF-DP-FTRL)以及结合 Secure Aggregation 的分布式差分隐私。2025 年,我们引入了基于这四项原则的 FL 演进定义:

联邦学习(FL)是一种机器学习场景,多个实体(客户端)在服务商的协调下协作解决机器学习问题。完整的 FL 系统应允许客户端对其数据、允许访问其数据的负载集合,以及这些负载的匿名化属性保持完全控制。FL 系统还应当向由 FL 客户端管理其数据的用户提供适当的透明度与控制权。

在《迈向可证明隐私的联邦数据学习》中,我们宣布了新一代联邦学习(FL)系统的研究成果。该系统利用可信执行环境(TEE),提供完全可验证且可审计的数据匿名化保障。运行在 TEE 中的逻辑具有远程可证明性(即第三方可以验证正在执行的逻辑),同时也具备机密性(其内部状态不可被观察)和完整性(逻辑运行无法被干扰),不过这取决于当前一代 TEE 的局限性。我们新的基于 TEE 的 FL 系统建立在 TEE 单台机器层面提供的这些特性之上,构建出一个完全可验证的端到端 FL 系统,从而实现更强的隐私保障和更高的准确率。Gboard已经采用了新系统,相比于我们之前的 FL 系统,其计算速度大幅提升。

基于独立 TEE 构建可验证隐私的 FL 系统

我们的 TEE 基础 FL 系统建立在早期关于机密联邦分析和可证明隐私洞察的研究成果之上。

该系统协调运作四个核心概念:

  • 数据上传:客户端设备对训练样本进行本地加密并上传。设备会预先授权一种访问策略,该策略定义了允许处理此数据的一组 TEE 计算任务,这些任务仅会释放匿名化后的结果。客户端要求访问策略必须发布到公共透明度日志中。
  • KMS 和策略验证:由一组实现RAFT 共识协议的 TEE 组成的密钥管理系统(KMS),仅向符合访问策略中计算任务的服务器端 TEE 工作负载提供解密密钥。
  • 工作负载执行:数据处理 TEE 运行一个实现训练循环的 Python 程序。这个"根"TEE 会把可并行的子任务分派给一组 worker TEE。分布式逻辑通过 Federated Language 表达——这是一门开源、框架无关的编排语言,衍生自为我们早期 FL 系统提供支持的 TensorFlow Federated。训练循环会周期性地向数据分析人员发布匿名化后的模型权重。
  • 容错恢复:Python 程序在每轮训练结束时保存一份经 KMS 加密的恢复状态。即便根 TEE 或 worker TEE 出现间歇性故障,也能据此恢复,且不会泄露任何额外的隐私敏感信息。
一张技术架构图,展示了一个具有安全数据流和验证步骤的机密联邦学习系统。

这张图既展示了数据在系统中的流转过程,也展示了验证系统上运行的工作负载隐私保证所需的步骤。

关于基于 TEE 的 FL 系统设计的更多细节,请参阅我们的白皮书 Toward provably private learning from federated data。

基于 TEE 的 FL 如何强化隐私

在早期的 FL 系统中,设备数据会被上传并立即聚合,但外部观察者无法验证这些数据从未被记录或查看过。后来,Secure Aggregation 让上传的数据可以通过密码学手段得到保护,但却与最先进的中央 DP 保证不兼容。我们新的基于 TEE 的系统,是我们持续致力于彻底消除对服务器运营方信任需求的又一个里程碑。

在新的基于 TEE 的 FL 系统中,工作负载运营方只能看到指标和差分隐私模型权重。从设备收集的加密训练数据,只能在访问策略所指定的运行 Python 训练程序的 TEE 内部解密和处理,且仅限上传后的一段有限时间内。

公开的透明日志与可复现构建

在基于 TEE 的新型联邦学习(FL)系统中,参与设备明确知道哪些服务器端工作负载可能会访问它们上传的数据。代表这些未来潜在服务器工作负载的访问策略会发布到 Rekor(一个公共透明日志)上,外部审计人员能够查看这些日志,从而追踪设备可能参与的所有服务器端工作负载。联邦学习系统中使用的 KMS 和数据处理二进制文件,可以根据发布在 Confidential Federated Compute GitHub 仓库中的开源代码进行可复现构建。 动态外挂的可验证执行 在早期的联邦学习系统中,服务器端运行的逻辑既无法被设备验证,也无法被审计人员验证,因此需要依赖我们的信誉,确保为梯度总和正确添加随机噪声以实现差分隐私。在基于 TEE 的新型联邦学习系统中,发布到 Rekor 上的访问策略直接描述了表达联邦学习训练逻辑的 Python 程序。为保护专有模型架构和数据预处理逻辑,同时保持可审计性,我们的数据处理 TEE 支持在运行时将序列化信息外挂到 Python 程序中。只要所有与隐私相关的逻辑都硬编码在 Python 程序中,这种外挂功能就允许必须保持专有的逻辑在 TEE 内运行,同时提供强的、外部可验证的隐私保证(关于侧信道观察的讨论见下文)。 Gboard 如何使用基于 TEE 的联邦学习 Gboard 已部署该基于 TEE 的联邦学习系统,发布了隐私保证更强、准确率更高的英文和日文下一词预测模型。这些改进可归功于新系统设计的多个方面。 缓解昼夜可用性限制 通过先收集所有设备的上传数据,再执行服务器端训练任务,我们无需再担心设备可用性的昼夜变化影响训练进度。在服务器端执行时,程序内可动态计算最优的设备参与调度方案,并据此调整其他 DP 参数。 A line graph comparing privacy-utility curves between a previous federated learning system and a new TEE-based system. 该图展示了基于新 TEE 系统通过优化设备参与调度,所能实现的更强隐私保证和/或更小的噪声乘数。这些曲线源自在两套系统上,使用 6500 台设备组成的队列,对英语下一词预测模型进行 5000 轮训练的结果。

训练加速

过去,训练此类 FL 模型每个需耗时 1-2 个月,进度受限于设备可用性、端侧算力以及多个训练任务争抢同一批设备资源。新的基于 TEE 的系统将瓶颈转移至服务器端,跨多机器的计算并行化显著缩短了训练时间,目前主要受限于 TEE 资源可用性。

下一步是什么?

在新的基于 TEE 的 FL 系统中,客户端梯度的计算转移至服务器,解除了早期系统中端侧计算资源的限制。这为使用 FL 技术训练规模日益增大的模型铺平了道路。将 TEE 与加速器相结合,将在此类应用场景中发挥重要作用。

上述系统不仅能以可验证的方式执行 FL 训练任务,还能执行任何可用 Python 表达的任务。我们正尝试在该基础设施上运行其他类型的工作负载,例如合成数据生成任务。另一个探索方向是:将执行任意 Python 代码的数据处理 TEE,与专注于 LLM 推理等特定功能的其他数据处理 TEE 相结合使用。

原始来源: Google Research 博客

评论 (0)