• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

联邦学习入门论文笔记

武飞扬头像
liuzeyao_Newton
帮助1

Communication-Efficient Learning of Deep Networks from Decentralized Data

论文结构

Abstract:
1. Introduction:
2. The Federated Averaging Algorithm:
3. Experimental Results:
4. Conclusions and Future Work:

一、摘要核心

背景介绍: 现代移动设备能获取大量适合学习模型的数据,可以极大地促进用户体验。但由于数量庞大和经常设计敏感隐私,可能会阻止日志记录到数据中心和使用传统方法来训练。

文章亮点: 提出了联邦学习,可以训练分布在移动设备上的数据,并通过聚合本地计算的更新来学习共享模型。

文章思想: 提出了一种基于迭代模型平均的深度网络的联邦学习的实用方法,进行了广泛的实证评估 ,并考虑了五种不同的模型架构和四个数据集

贡献: 实验证明,这种方法对不平衡的、非独立同分布的数据具有鲁棒性,相比于同步的随机梯度下降,通信的轮数减少了10-100倍。

二、Introduction

  1. 问题:现有设备可以获得大量的隐私数据,利用这些数据训练出的模型可以大大增加可用性,但是将这些数据存储在一个集中的位置是有风险和责任的。

  2. 联邦学习思想:让用户合作训练出共享模型,而不需要集中存储它。
    每个客户端在本地计算由服务器维护的当前全局模型的更新,只有这个更新可以进行通信

  3. 联邦学习的优点和缺点

优点:解耦模型训练与直接访问原始训练数据的需要。
通过将攻击表面限制在设备上,而不是设备和云上,来减少隐私泄露的风险

缺点:仍然需要对一些合作训练的服务器信任

  1. 主要贡献:
    (1)识别来自移动设备的分散的数据的训练问题
    (2)提出一个直接、实用的算法
    (3)对所提出的方法进行了广泛的实证评价,证明了对不平衡和非独立同分布的数据分布具有鲁棒性,并且可以减少在分散数据上训练深度网络所需的通信轮数。

  2.  

Fedrated Learning
联邦学习的理想问题有三个特性:
(1)与数据中心常用的在代理数据上训练相比,训练来自移动设备的真实数据具有明显的优势;
(2)这些数据对隐私很敏感或规模较大,因此,最好不要纯粹为了模型训练而将其记录到数据中心;
(3)对于受监督的任务,数据上的标签可以从用户交互中推断出来。

Privacy
联邦学习占有明显的隐私优势。
但是即使是“匿名”数据集,也可能通过与其他数据结合而使用户隐私面临风险。

联邦学习传输的信息 是改进特定模型所需的最小更新,更新可以在混合网络上不识别元数据而进行传输

Federated Optimization
联邦优化具有区别于典型的分布式优化问题的几个关键特性:
(1)非独立同分布
(2)本地训练的数据数量不平衡
(3)大规模分布
(4)移动设备通信有限

  1. 详细说明本文思想

本文重点是非IID和不平衡属性的优化,以及通信约束的关键性质。

假设一个同步更新方案
有一组固定的K个客户端,每个客户端都有一个固定的本地数据集。在每一轮开始时,随机选择一部分客户端C,服务器发送当前全局算法统计 e到每个客户端(例如,当前的模型参数),然后,每个选定的客户端根据全局状态及其本地数据集执行本地计算,并向服务器发送一个更新。服务器将这些更新应用于其全局的状态,过程重复。

问题:联邦学习的通信成本高
目标:使用额外的计算增加计算量,以减少训练模型所需的通信轮数。

增加计算量的主要方法:
(1)增加并行性,即每次通信使用更多的客户机独立工作;
(2)增加每个客户端上的计算量(实现加速主要是这个)

  1. 相关工作

三、联邦平均算法

SGD

每轮通信中随机选择一部分客户端,进行单批梯度计算(比如在随机选择的客户端上)。参数C控制全局块大小,其中C=1对应于全批(非随机)梯度下降。我们将此算法称为FederatedSGD(orFedSGD)。

优点:计算效率高
缺点:需要非常多的训练轮数来训练一个好的模型

因此使用大批的同步SGD。

FederatedSGD算法(FedSGD)

在每一轮中选择C比例的客户,并计算这些客户所持有的所有数据的损失梯度。C相当于全局batch size

当C=1时,相当于full-batch梯度下降

FederatedAverage算法(FedAvg)

当C=1时
每个客户端使用本地数据,在现有的模型上做第一步梯度下降,中央服务器得到一个结果模型的加权平均。

可以通过在取平均之前多次迭代本地更新,来增加计算量。
学新通

计算量由三个关键参数决定:

C:在每一轮进行计算的客户占比
E:每一轮训练(更新)中,每个客户端在本地数据集训练(对本地参数进行更新)的通过次数
B:用于客户端更新的本地最小批量的大小

B=∞和E=1,它们完全对应于FedSGD。

不好的模型 解决办法

对普通的非凸对象,在参数空间中平均模型可能会产生任意坏的模型:会过度拟合其局部数据集时的训练量。

充分过度参数化的神经网络的损失表面惊人地表现良好,更不容易出现糟糕的局部最小值

事实上,当我们从相同的随机初始化中启动两个模型,然后再在数据的不同子集上独立地训练每个模型时,我们发现了这个初始参数算平均的结果出奇地好:这两个模型的平均值,1/2w 1/2w’,在整个MNIST训练集上获得的损失明显低于 在任何一个小数据集上训练所获得的最佳模型。虽然图1从随机初始化开始,但注意每一轮FedAvg都使用共享的起始模型wt,所以同样的直觉也适用。

四、实验结果

我们首先选择了一个大小足够适中的代理数据集,以便我们可以彻底研究FedAvg算法的超参数
虽然每个单独的训练运行都相对较小,但我们为这些实验训练了2000多个单独的模型。
然后,我们展示了基准的CIFAR-10图像分类任务的结果。
为了演示FedAvg在客户端数据自然分区的真实问题上的有效性,我们在一个大型语言建模任务上进行了评估。

① 我们最初的研究包括在两个数据集上的三个模型族

(1)MNIST数字识别

1)一个简单的多层感知器,有2个隐藏层,每个层有200个单元,使用ReLu激活(199,210个参数),我们称之为MNIST 2NN。
2)一个CNN有两个5x5卷积层(第一层有32个通道,第二个有64个,每个随后是2x2最大池化),一个完全连接的层有512个单元和ReLu激活,最后一个 softmax输出层(1663370个总参数)。

我们研究了在客户端上划分MNIST数据的两种方法:IID;Non-IID

(2)语言模型

我们为每个说话角色中的每个说话角色构建一个客户端数据集。
对于每个客户机,我们将数据分成训练集(角色的前80%的行)和测试集(最后20%,四舍五入到至少一条行)。
所得到的数据集在训练集中有3,564,579个字符,在测试集中有870,014个字符

在这些数据上,我们训练了一个堆叠的字符级LSTM语言模型,该模型在阅读了一行中的每个字符后,预测了下一个字符

该模型以一系列字符作为输入,并将每个字符嵌入到一个学习到的8维空间中。嵌入的符通过2个LSTM层进行处理,每个层有256个节点。芬 最后,第二个LSTM层的输出被发送到每个字符有一个节点的softmax输出层。完整的模型有866,578个参数,我们使用80个字符的展开长度进行训练。

(3)表格分析

学新通

表1描述的是图像分类任务:参数C对E=1的MNIST 2NN和E=5的CNN的影响。

其中C=0表示每次选择一个客户端的数据进行更新。对于MINST 2NN来说,总的客户端数量为100,即五行分别表示1,10,20,50,100个客户端。

每个表格条目给出了实现2NN的97%和CNN的99%的测试集精度所需的通信轮数,以及相对于C=0这一baseline的加速比。

学新通
表2描述的是语言模型:LSTM语言模型,该模型在读取一行中的每个字符后预测下一个字符。

该模型以一系列字符作为输入,并将每个字符嵌入到8维空间中,然后通过2个LSTM层处理嵌入的字符,每个层具有256个节点。

每个表格给出了在某一参数环境下,FedSGD要达到目标精度所需要进行的通讯次数。

SGD对学习率参数η的调整很敏感,本文的η是基于网格搜索法找到的。

② 小标题

Increasing parallelism 增强并行性
学新通
上图给出了特定参数设置下要达到阈值精度(图中灰线)所需要进行的通讯轮数。使用形成曲线的离散点之间的线性插值来计算曲线穿过目标精度的轮数。

Increasing computation per client 增加每个客户端的计算量

固定C=0.1,并在每一轮中为每个客户端添加更多的计算量,要么减少B,要么增加E

学新通
如图,随着B减小或者E增加,达到目标精度所需的通讯次数是减小的,也就是说:每轮添加更多本地SGD更新可以显著降低通信成本。

表2量化这些加速。
学新通
我们看到通过改变E和B来增加u是有效的

对于所有三个模型类,FedAvg比基线FedSGD模型收敛到更高级别的测试集精度。

我们主要关注泛化的是泛化性能,但FedAvg在优化训练损失方面也很有效,甚至超过了测试集精度稳定的程度。

Can we over-optimize on the client datasets? 我们能对客户端数据集进行过度优化吗?

对于大的E值,进行很多次本地更新,但收敛速度并没有显著的下降。
学新通

CIFAR experiments
数据预处理:
作为训练输入管道的一部分,对图像进行预处理,该管道包括将图像裁剪到24x24,随机左右翻转,调整对比度、亮度和白化

Large-scale LSTM experiments

五、结论和未来工作

我们的实验表明,联邦学习实用,因为FedAvg使用相对较少的几轮通信训练高质量的模型,各种模型的结果证明了这一点 架构:一个多层感知器,两个不同的卷积神经网络,一个两层字符LSTM,和一个大规模的字级LSTM。

虽然联邦学习提供了许多实际的隐私好处,通过差分隐私,安全的多方计算,或它们的组合提供更强的保证,为未来的工作提供诱人的方向。

六、其他

数据中心优化 VS 联邦优化
数据中心化:通信成本低,但是计算成本高
联邦优化:通信成本高
与数据中心通常可用的代理数据培训相比,来自移动设备的真实数据培训具有明显的优势。
与数据持久化数据中心训练相比,联邦学习具有明显的隐私优势

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgagege
系列文章
更多 icon
同类精品
更多 icon
继续加载