论文名字

SCAFFOLD: Stochastic Controlled Averaging for On-Device Federated Learning

来源

 

年份

2020

作者

 

核心点

解决联邦学习在数据异构(non-iid)中的“客户漂移(client-drift)”现象

阅读日期

2021.3.24

影响因子

页数

引用数

引用

内容总结

文章主要解决的问题及解决方案:

主要解决联邦学习在数据异构(non-iid)中的“客户漂移(client-drift)”现象,也就是小部分客户端的收敛方向与其他大部分的客户端的收敛方向有所偏差。

文章的主要工作:

1、对FedAvg算法做出改进,获得了更快的收敛速度。

2、证明了当数据是异构的(non-iid)时,会遭受“客户漂移”,导致不稳定和缓慢的收敛。

3、提出名为“SCAFFOLD”的算法,其使用控制变量(方差减少)来纠正其本地更新中的“客户漂移”。

4、证明了(对于二次曲线)SCAFFOLD可以利用客户端数据的相似性产生更快的收敛。

5、文中指出当前联邦学习中的主要挑战是:1)客户端和服务器端之间不可靠和连接慢的网络连接;2)在给定时间内能实现用小量的客户端进行模型的训练;3)不同的客户端之间存在大量的异构数据(no-iid)。

6、FedAvg的核心是客户端的多次本地训练,同时,文中表明,即使使用了全部梯度,并且所有客户都参与了训练这种客户漂移仍然存在。

7、文中的算法主要是计算客户端和服务器端的差异来获取,其不受客户的抽样的影响。

8、FedAvg的两个公式:

9、算法1流程:

SCAFFOLD: Stochastic Controlled Averaging for federated learning

1

server input: initial x and c, and global step-size ηg

2

client i’s input: ci, and local step-size ηt

3

for each round r=1,…,R do

4

sample clients

5

communicate  to all clients

6

on client  in parallel do

7

initialize local model

8

for  do

9

compute mini-batch gradient giyi

10

11

end for

12

13

communicate 

14

15

end on client

16

17

18

end for

10、

11、文中指出当客户端之间的数据集为异构(non-iid)数据的话,那么他们在模型训练过程中,一些客户端会带偏整个系统的收敛结果,图中,黑色点是全局模型,也就是每个训练轮次各个局部模型的“训练起点”,假设在某一轮训练中,服务器选择了client1和client2两个客户端来训练,然后client1是偏离整个系统的客户端,那么在客户端上训练三个轮次中,我们可以看到client1上的局部模型已经偏离了训练的方向(所在的方向),然后聚合得到的server model也会稍微偏离,使得系统向着偏离学习模型的方向上收敛。最终的结果不是造成整个系统的性能下降就是导致整个系统收敛缓慢

12、使用控制变量后的结果:

文章内容:

实验结果:

附录:

参考文献:

论文阅读:SCAFFOLD: Stochastic Controlled Averaging for On-Device Federated Learning相关推荐

  1. SCAFFOLD: Stochastic Controlled Averaging for Federated Learning学习

    SCAFFOLD: Stochastic Controlled Averaging for Federated Learning学习 背景 贡献 论文思想 算法 局部更新方式 全局更新方式 实验 总结 ...

  2. SCAFFOLD: Stochastic Controlled Averaging for Federated Learning

    背景 传统的联邦学习在数据异构(non-iid)的场景中很容易产生"客户漂移"(client-drift)的现象,这会导致系统的收敛不稳定或者缓慢 贡献 提出了考虑到client ...

  3. 论文阅读:HybridAlpha: An Efficient Approach for Privacy-Preserving Federated Learning

    论文名字 HybridAlpha: An Efficient Approach for Privacy-Preserving Federated Learning 来源 会议 the 12th ACM ...

  4. 【论文阅读】CAFE: Catastrophic Data Leakage in Vertical Federated Learning

    本文主要讲述了 恶意server 如何在VFL环境下根据数据索引来还原完整的训练数据. 这里写目录标题 现有工作的不足 主要贡献 实现 assumption & target 为什么大批量数据 ...

  5. 【论文阅读】DouZero: Mastering DouDizhu with Self-Play Deep Reinforcement Learning

    [论文阅读]DouZero: Mastering DouDizhu with Self-Play Deep Reinforcement Learning 1 本文解决了什么问题? 斗地主是一个非常具有 ...

  6. 论文阅读笔记(一)【Journal of Machine Learning Research】Natural Language Processing (Almost) from Scratch(未完)

    学习内容 题目: 自然语言从零开始 Natural Language Processing (Almost) from Scratch 2021年7月28日 1-5页 这将是一个长期的过程,因为本文长 ...

  7. 论文阅读笔记五十三:Libra R-CNN: Towards Balanced Learning for Object Detection(CVPR2019)

    论文原址:https://arxiv.org/pdf/1904.02701.pdf github:https://github.com/OceanPang/Libra_R-CNN 摘要 相比模型的结构 ...

  8. RL论文阅读【一】Playing Atari with Deep Reinforcement Learning

    1 废话 开始要认真的读论文的,计划每天晚上回宿舍看一半,两天看完一篇,第三天写博客总结,虽然有点慢吧,但是积少成多嘛~ 今天先介绍第一篇,也是深度强化学习的开山之作. 2 动机 一般把这篇论文称作深 ...

  9. 论文阅读笔记《Adaptive Image-Based Visual Servoing Using Reinforcement Learning With Fuzzy State Coding》

    核心思想   该文提出一种利用模糊状态编码的强化学习(Q-learning)算法来实现自适应基于图像的视觉伺服控制.基于图像的视觉伺服过程中,图像雅可比矩阵中的距离参数ZZZ是未知的,需要对其进行估计 ...

  10. 【论文阅读|cryoET】Isotropic reconstruction for electrontomography with deep learning (解决缺失楔问题降噪)

    论文题目 Isotropic reconstruction(各向同性重建)for electron tomography with deep learning 期刊:Nature communicat ...

最新文章

  1. 圣何塞与 Microsoft 宣布该市为超过 5,000 名市府公务员选择 Office 365、Windows Azure 和 StorSimple...
  2. 量化人类社会交互行为
  3. Spring Boot定时任务-Quartz基本使用
  4. Eclipse 答疑:Eclipse 如何更换夜间及外部主题?如何修改代码样式、背景颜色、字体大小?为何注释文字大小不一?
  5. QNX Software Development Platform
  6. 报错 插入更新_CentOS中linux网络报错 connect: Network is unreachable问题
  7. 性能测试之JMeter配置元件【随机变量】
  8. js-权威指南学习笔记4
  9. 《内网安全攻防:渗透测试实战指南》读书笔记(三):隐藏通信隧道技术
  10. JeecgBoot 2.1.1 代码生成器AI版本发布,基于SpringBoot+AntDesign的JAVA快速开发平台
  11. Adobe:Flash中存在高危零日漏洞
  12. 海康摄像头SDK二次开发错误问题解决方案(一):2. 错误号64:NET_DVR_LOADPLAYERSDKFAILED 64 载入当前目录下 Player Sdk 出错
  13. Unity 3D游戏开发 - U3D入门 | 游戏场景基本操作
  14. 取消IPV4自动配置
  15. multisim 常见报错
  16. itk调整图像的像素值范围
  17. .NET桌面开发的一些思考
  18. Java端飞书接口开发
  19. Win11任务栏里华为电脑管家图标重叠怎么办?
  20. [LeetCode788] Rotated Digits 旋转数字

热门文章

  1. Vbox虚拟机无法启动错误Mark
  2. magento 开发 -- 入门深入理解第五章 – Magento资源配置
  3. 布同:如何循序渐进学习Python语言
  4. google aviator:Java逻辑公式引擎
  5. linux winqq 不能输入中文的解决办法
  6. 使用Python自动提取内容摘要
  7. *TEST 5 for NOIP 。。。
  8. 实验四 201421440038 徐凤娇
  9. 漏洞库:爬取CNVD-国家信息安全漏洞共享平台漏洞库
  10. oracle+alert删除日志,清除alert log