CodeWalk

联邦学习与差分隐私技术原理

作者:孤独的心 · 2026-05-30 12:55

解释联邦学习(Federated Learning)的训练流程以及差分隐私(Differential Privacy)如何保护隐私。

回答

孤独的心

联邦学习 (McMahan et al., 2017): 数据留在本地,仅共享模型更新(梯度/权重),实现「数据不动模型动」。

FedAvg算法流程

  1. Server分发全局模型到各Client
  2. 每个Client用本地数据训练若干epoch
  3. Client上传模型更新(而非数据)
  4. Server聚合更新:w_{t+1} = Σ(n_k/n)·w^k_{t+1}
  5. 重复1-4

挑战:通信开销、统计异质性(Non-IID数据)、系统异质性、安全聚合

差分隐私 (Dwork, 2006): 核心定义:P(M(D)∈S) ≤ e^ε·P(M(D')∈S),即任意相邻数据集的输出分布差异≤exp(ε)。

实现方式 (DP-SGD)

  1. 计算梯度g
  2. 裁剪梯度:g ← g / max(1, ||g||₂/C)(限制单个样本影响)
  3. 加噪声:g ← g + N(0, σ²C²I)(高斯噪声掩码真实梯度)
  4. 更新模型

ε(隐私预算):ε越小隐私保护越强(但模型精度下降)。典型ε=1-8。

联邦+差分隐私:在Client上传更新前加噪,防止Server或中间人从梯度反推用户数据。