AI 教学改革实践研究计划AI 教改实践研究计划 全国高等院校计算机基础教育研究会 ×实战云


AI 课件库 › 可信 AI › 隐私保护

联邦学习游乐场:数据不出本地,模型怎么一起训

Federated Learning Playground · 开源项目,TensorFlow 游乐场的联邦学习分支

把神经网络游乐场改造成了联邦学习沙盘:同一份数据被切给 9 个客户端,各自只拿自己那份本地训练,服务器再把大家的模型聚合成一个。四种聚合算法、数据异质性、客户端掉线、差分隐私都做成了可以现场拖的滑块。

适用
联邦学习、隐私计算、分布式机器学习、数据安全与隐私保护、深度学习
概念
联邦学习、联邦平均、本地训练轮数、客户端参与比例、数据异质性、差分隐私、梯度裁剪、通信开销
课时
进阶 · 建议 25 分钟
网络
离线可用(不依赖外网,需能打开本站)

全屏打开实验 ↗ 原作源代码 ↗

交互实验(可直接投屏)

原作是一个完整的网页应用,下面直接嵌入;屏幕小或要投影时,点「全屏打开实验」更清楚。

动手三步

  1. 先在原版模式下跑一遍,记下测试损失与收敛速度作为基准
  2. 点「开启联邦学习」,页面下方出现 9 个本地模型;点播放,看全局模型一轮一轮被聚合出来
  3. 把数据异质性从 10 拉到 0.1 再跑一次,看客户端损失分布怎么被拉开
  4. 把每轮参与比例从 0.2 调到 1.0,对照通信开销与收敛速度两张图,体会其中的取舍
  5. 打开差分隐私,把噪声系数往上调,看隐私保护怎样用精度换来

课堂怎么用

  • 先用原版模式讲清「一个中心、一份数据」的普通训练,再一键切到联邦模式,对比「数据不动、模型动」
  • 用数据异质性做课堂实验:全班分两组各押一个值,跑完比谁收敛更快
  • 讲差分隐私时,让学生自己找「在准确率掉不超过两个点的前提下,噪声最大能调到多少」
  • 接 E-07 隐私保护三讲:那件讲原理,这件让学生自己调参数看代价

思考题

  1. 联邦学习里的「一轮」和普通训练里的「一个 epoch」有什么区别?本地训练轮数调大,为什么不一定更好?
  2. 为什么客户端数据越不均衡,全局模型收敛得越慢?
  3. 加了差分隐私噪声之后模型仍能学出决策边界,这说明噪声是加在哪一步上的?

已知限制

  • 原作自带的统计脚本已移除,只保留一个什么都不做的桩函数(原作交互代码会调用它,删掉会报错)
  • 特征列里的数学记号按原样保留;四种算法名保留英文并加了中文括注
  • 四张联邦指标图的坐标轴只有数值刻度,原作就没有文字标签

原作 Federated Learning Playground(oseltamivir(在 TensorFlow 游乐场基础上扩展;原作版权 Google Inc.),开源项目,TensorFlow 游乐场的联邦学习分支),Apache-2.0 许可(原文),界面已中文化。

← 隐私保护三讲:随机化回答、模型泄露与联邦学习 用 JPEG 压缩防御攻击 →

使用与数据说明 · 来源与许可