SCAFFOLD: Stochastic Controlled Averaging for On-Device Federated Learning
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! 以下是对本文关键部分的摘抄翻译,详情请参见原文。
arXiv:1910.06378v1 [cs.LG] 14 Oct 2019

Abstract
联邦学习是现代大规模机器学习中的一个关键场景。在这种情况下,训练数据仍然分布在大量的客户机上,这些客户机可能是电话、其他移动设备或网络传感器,并且在不通过网络传输客户机数据的情况下学习集中式模型。此方案中使用的标准优化算法是联邦平均(FedAvg)。然而,当客户端数据是异质的(这在应用程序中是典型的)时,FedAvg并不能保证良好的收敛性。这是因为客户机上的本地更新可能会发散开来,这也解释了FedAvg在实践中的缓慢收敛和难以调整的特性。本文提出了一种新的随机控制平均算法(SCAFFOLD),该算法利用控制变量来减少不同客户之间的漂移。我们证明了该算法需要的通信次数明显减少,并且有良好的收敛性保证。
1. Introduction
在现代大规模应用程序中起关键作用的学习场景是联邦学习。与标准设置不同,标准设置使用存储在中央服务器中的大型数据集训练模型(Dean et al., 2012; Iandola et al., 2016; Goyal et al., 2017),在联邦学习中,训练数据仍然分布在大量客户机上,这些客户机可能是电话、其他移动设备、网络传感器或其他本地信息源(Konečn`y et al., 2016b,a; McMahan et al., 2017b; Mohri et al., 2019)。在不通过网络传输客户端数据的情况下,对集中式模型进行学习,从而确保了基本的隐私级别并限制了网络通信。
这种集中式模型受益于所有客户机数据,通常可以带来更优的性能,如在多个任务中所报告的,包括下一个单词预测(Hard et al., 2018; Yang et al., 2018),emoji预测(Ramaswamy et al., 2019),解码模型(Chen et al.,2019b),词汇估计(Chen et al., 2019a),低延迟车对车通信(Samarakoon et al., 2018)和健康预测模型(Brisimi et al., 2018)。尽管如此,联邦学习提出了几种类型的问题,并已成为多个研究工作的主题,研究该场景中的学习和泛化特性(Mohri et al., 2019),系统、网络和通信瓶颈问题,这些问题是由于中央服务器和客户机之间频繁的交换造成的,具有不可靠或相对较慢的网络连接(McMahan et al., 2017a)和许多其他连接。
本文讨论了联邦学习中优化任务的关键问题,特别是设计一个具有收敛性保证的高效优化解的关键问题。联邦学习中的优化问题一直是众多研究工作的主题。包括设计更有效的沟通策略(Konečn`y et al., 2016b,a; Suresh et al., 2017; Stich et al., 2018; Karimireddy et al., 2019; Basu et al., 2019),具有依赖图的并行随机优化的下界研究(Woodworth et al., 2018b),利用差异隐私保证设计高效的分布式优化方法(Agarwal et al., 2018),不可知公式的随机优化解决方案(Mohri et al.,2019),以及结合密码技术(Bonawitz et al.,2017),参见(Li et al.,2019a)以深入了解联邦学习的最新工作。
联邦学习的训练通常包括交替的通讯和本地更新。在每一轮中,客户机的子集被采样,每个采样的客户机接收共享的全局模型。然后,客户机对该模型执行本地更新,仅涉及其本地训练数据。然后,在回合结束时,采样的客户机将其更新发送到服务器,服务器聚合更新以形成新的全局模型。区分联邦学习和并行或分布式训练的关键有三个方面:(1)不同客户机上的数据以及损失函数可能非常异质,这远远不能代表联合数据;(2)只有中央服务器选择的设备的一小部分参与每一轮;(3)服务器从不跟踪任何单个客户端信息,只使用聚合来确保隐私。
SCAFFOLD: Stochastic Controlled Averaging for On-Device Federated Learning的更多相关文章
- 【流行前沿】联邦学习 Partial Model Averaging in Federated Learning: Performance Guarantees and Benefits
Sunwoo Lee, , Anit Kumar Sahu, Chaoyang He, and Salman Avestimehr. "Partial Model Averaging in ...
- 【流行前沿】联邦学习 Federated Learning with Only Positive Labels
核心问题:如果每个用户只有一类数据,如何进行联邦学习? Felix X. Yu, , Ankit Singh Rawat, Aditya Krishna Menon, and Sanjiv Kumar ...
- Local Model Poisoning Attacks to Byzantine-Robust Federated Learning
In federated learning, multiple client devices jointly learn a machine learning model: each client d ...
- 【论文笔记】A Survey on Federated Learning: The Journey From Centralized to Distributed On-Site Learning and Beyond(综述)
A Survey on Federated Learning: The Journey From Centralized to Distributed On-Site Learning and Bey ...
- 联邦学习(Federated Learning)
联邦学习简介 联邦学习(Federated Learning)是一种新兴的人工智能基础技术,在 2016 年由谷歌最先提出,原本用于解决安卓手机终端用户在本地更新模型的问题,其设计目标是 ...
- 联邦学习 Federated Learning 相关资料整理
本文链接:https://blog.csdn.net/Sinsa110/article/details/90697728代码微众银行+杨强教授团队的联邦学习FATE框架代码:https://githu ...
- Advances and Open Problems in Federated Learning
挖个大坑,等有空了再回来填.心心念念的大综述呀(吐血三升)! 郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! 项目地址:https://github.com/open-intellige ...
- Federated Learning: Challenges, Methods, and Future Directions
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! arXiv:1908.07873v1 [cs.LG] 21 Aug 2019 Abstract 联邦学习包括通过远程设备或孤立的数据中心( ...
- Overcoming Forgetting in Federated Learning on Non-IID Data
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! 以下是对本文关键部分的摘抄翻译,详情请参见原文. NeurIPS 2019 Workshop on Federated Learning ...
随机推荐
- String字符串缓冲区、StringBuffer
String字符串缓冲区 1.StringBuffer类 StringBuffer又称为可变字符序列,字符串缓冲区支持可变的字符串, StringBuffer是个字符串的缓冲区,即就是它是一个容器,容 ...
- LQB2013A01高斯日记
诶,今天发生了点不是很开心的事.说实话挺影响心情的啊(谁遇见这种事不生气呢啊啊啊啊) 但是不能水更,还是得好好更新呀. 这个题居然直接用excel哈哈哈哈 那,,就这样吧!
- PHP quoted_printable_decode() 函数
实例 对经过 quoted-printable 编码后的字符串进行解码,返回 8 位的 ASCII 字符串: <?php高佣联盟 www.cgewang.com$str = "Hell ...
- PHP asXML() 函数
实例 格式化 XML(版本 1.0)中的 SimpleXML 对象的数据: <?php$note=<<<XML<note>高佣联盟 www.cgewang.com& ...
- IntelliJIDEA的安装、配置与使用
引言: IDEA,全称 IntelliJ IDEA,是 Java 语言的集成开发环境,IDEA 在业界被公认为是 最好的 java 开发工具之一,尤其在智能代码助手.代码自动提示.重构.J2EE 支持 ...
- 002_解析go语言中的回调函数
回调函数是一种特殊的函数写法,在很多场景中发挥广泛的作用.但是对于初学者来说,回调函数是比较头疼的一个东西,不太好懂,笔者研究了一番,以网上的一个例子详细说明一下 首先看一个代码示例(来源于网上) p ...
- jpa jpql @query 动态查询
需求/背景 假设有一个用户表, 对应的用户实体: public class User { @Id Long id; //姓名 String name; //性别,男0女1 String sex; // ...
- 2020-05-27:SpringCloud用了那些组件?分布式追踪链怎么做的?熔断器工作原理?
福哥答案2020-05-27: SpringCloud分布式开发五大组件详解服务发现——Netflix Eureka客服端负载均衡——Netflix Ribbon断路器——Netflix Hystri ...
- 单元测试报错:Mybatis中数据库语句错误
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.Persiste ...
- 碰到 Json_CSRF 怎么办?
前言 在最近挖洞的时候,老是碰到 POST 传参采用 JSON 格式,而不是传统的parameter=value的格式,之前也没接触过,所以也不知道该怎么搞,所以打算学习一下,此文作为一个笔记梳理. ...