Communication-Efficient Learning of Deep Networks form Decentralized Data

引入:

传统数据训练方式,用户将本地数据提交给可信云服务器进行统一集中并训练:①如何保证用户本地数据的隐私性?
②如何保证计算成本和通信开销?

联邦学习的提出,可以较好地解决上述问题。


背景介绍:

分布式训练方法,把资料留在本地端,打造出可部署至上百万支手机的输入字推荐模型。
①个别用户从中央主机下载一套模型,接着在数以万计的用户端,根据用户端的使用行为,来训练Local端模型。

②训练好后,用户手机会上传模型权重(也称参数)至中央主机,中央主机收集一定数量的权重后,就会聚合,计算出一个优化过的权重,再回放到用户端手机,进行下一轮训练。

③这个过程会不断重复,直到模型达到理想的表现。在这过程中,只会上传模型参数,完全不会上传用户资料。

Communication-Efficient Learning of Deep Networks form Decentralized Data_第1张图片


主要贡献:

①引入FederatedAveraging算法,将每个客户端的局部随机梯度下降(SGD)与执行模型平均的服务器相结合
②针对非独立同分布数据集和通信问题进行解决

非独立同分布数据集:

Communication-Efficient Learning of Deep Networks form Decentralized Data_第2张图片

通信问题:
(1)并行化,采用更多的用户参与训练优化
(2)增加每个用户的计算开销,减少通信轮数


联邦平均:(FedAVG算法)

FedAvg算法的计算开销与三个参数相关:
1、C:每轮通信内,执行计算的用户所占的比例(0≤C≤1)
   C=1表示所有用户均参与联邦优化,
   C*K表示参与用户数量,
   C=0表示有且仅有1个用户均参与联邦优化
2、E:每轮通信内,每个用户对其本地数据集进行的训练迭代次数(E≥1)
3、B:用户更新训练本地数据集的小批量大小(B≥1)意思为每次训练给多大的数据

Communication-Efficient Learning of Deep Networks form Decentralized Data_第3张图片

Communication-Efficient Learning of Deep Networks form Decentralized Data_第4张图片


实验:

目标:为了评估本文的联邦优化方法,而不是追求最高的分类精度
论文是围绕图像分类开展实验。

①对于每一个任务,选择一个足够小的代理数据集,研究FedAvg算法的超参数。
②介绍了CIFAR-10图像分类的分类基准。
③证明FedAvg在真实问题和自然数据划分中的有效性,评估大型的数据集任务。

MNIST手写数据集识别:

两个网络:
1、多层感知机:2个隐藏层,200个节点,激活函数用Relu
2、CNN:5x5的卷积层(第一层有32个通道,第二层64个,每一层有2x2的最大池化。一个512个节点的全连接层,总共1663370个参数

为了学习联邦优化,探索数据怎样分布在客户端。
在客户端划分MNIAST数据集:
1、IID:数据随机打乱,划分到100个客户端,每个客户端有600张图片
2、非IID:首先按数字标签对数据进行排序,将其划分为大小为300的200个碎片,指定100个用户,为每个用户分配2个碎片(即100×600)

联邦环境下数据集:

将现有的数据集按照非独立同分布划分:
带标签样本的生成分布看可以表示为
P(x,y)—>P(x,y)=P(x|y)P(y)—>估计P(y)的开销小—>按照样本标签分布划分
K个类别标签,N个client,每个类别标签的样本需要按照不同的比例划分在不同的client上

Communication-Efficient Learning of Deep Networks form Decentralized Data_第5张图片

Communication-Efficient Learning of Deep Networks form Decentralized Data_第6张图片

 PS:上学期课程中汇报的论文,做的ppt,记录一下方便查看

 

你可能感兴趣的:(联邦学习,深度学习)