Federated Learning with Non-IID Data 论文笔记

  本文提出联邦学习中的由于Non-IID数据分布而精度降低是因为权重分散(weight divergence),而权重散度可以用搬土距离(EMD)量化,最后提出了一种策略:通过创建一个在所有边缘设备之间全局共享的数据子集来改进Non-IID数据的训练以此来提高模型精度。。

论文地址:Federated Learning with Non-IID Data


  联邦学习使资源受限的边缘计算设备(如移动电话和物联网设备)能够学习用于预测的共享模型,同时保持训练数据的本地性。这种分散的训练模型方法提供了隐私、安全、监管和经济效益。在这项工作中,我们关注的是当本地数据是Non-IID时,联邦学习的统计挑战。我们首先看到,对于为高度倾斜的Non-IID数据训练的神经网络来说,联合学习的准确性显著降低,降低高达55%,其中每个客户端设备只对一类数据进行训练。我们进一步证明,这种精度降低可以用权重分散来解释,权重分散可以通过每个设备上的类分布和总体分布之间的搬土距离(EMD)来量化。作为解决方案,我们提出了一种策略,通过创建一个在所有边缘设备之间全局共享的数据子集来改进Non-IID数据的训练。实验表明,对于只有5%的全局共享数据的CIFAR-10数据集,准确率可以提高30%。



一、introduction

  近年来,移动设备数量和由这些设备生成的数据大大增加,但是这些数据由于隐私、安全、监管或者经济,这些数据不能传输到服务器。因此提出了联邦学习,使得数据可以在本地进行训练并共享模型。但联邦学习有两个挑战:

1.联邦学习的通信。如如何传递深层网络权值,由网络连通性、功耗和计算限制而导致的意外丢失或同步延迟。
解决办法:开发了一个高效的安全聚合协议,允许服务器从移动设备执行高维数据的计算;提出结构化更新和草图更新,将通信成本降低两个数量级;提出了深度梯度压缩(DGC)将通信带宽降低两个数量级来训练高质量的模型。

2.每个边缘设备上的数据是IID。
解决办法:提出了多任务学习(MTL)框架,并开发了MOCHA来解决MTL中的系统挑战;FedAvg可以处理某些Non-IID数据。

  对于高度倾斜的Non-IID数据,FedAvg训练的卷积神经网路精度大大降低,对于MNIST,CIFAR-10和关键字识别(KWS)数据集的准确率分别高达11%、51%和55%。对于这问题,在第三节指出精度降低是因为权重分散,权重分散量化了在初始权重相同的情况下两个不同训练过程中权重的差异。然后作者证明了训练中的权重散度是由每个设备(或客户端)上的类的分布和总体分布之间的搬土距离所限定的。这个界限受学习速率、同步步数和梯度的影响。最后,在第4节中,我们提出了一种数据共享策略,通过分配少量的全局共享数据(包含每个类中的示例)来改进非IID数据的FedAvg。这就需要在准确性和集中性之间进行权衡。实验表明,在CIFAR-10上,如果我们愿意集中和分发5%的共享数据,则准确率可以提高30%。


二、FedAvg on Non-IID Data

数据集
1.MNIST
2.CIFAR-10
3.Speech commands datasets。该数据集由35个单词组成,每个单词持续1秒。为了使其一致,我们使用一个包含10个关键字的数据子集作为关键字定位(KWS)数据集。对于每个音频片段,我们提取了10个MFCC特征,每帧30ms,步长为20ms,生成50x10个特征,用于神经网络训练。

数据分布设置
  训练集被均匀地分为10个客户机。对于IID设置,每个客户端随机分配10个类的统一分布。对于Non-IID设置,数据按类排序并划分为两种极端情况:(a)1类非IID,每个客户端仅从单个类接收数据分区;(b)2类非IID,其中排序的数据被分成20个分区,每个客户端从2个类中随机分配2个分区。

参数设置
B,batch 大小;E,本地epoch的数量;
对于MMIST:B=10或100,E=1,learning rate=0.1,dacay rate=0.995;
对于CIFAR-10:B=10或100,E=1和5,learning rate=0.1,dacay rate=0.992;
对于KWS:B=10和50,E=1和5,learning rate=0.05,dacay rate=0.992
对于SGD: 学习率和衰减率是相同的,但B是10倍大。这是因为FedAvg的全局模型在每次同步时平均分布在10个客户机上。

实验结果
对于IID实验,三个数据集的FedAvg收敛曲线和SGD的大部分相同。
对于Non-IID实验,FedAvg模型的精度大幅度降低。其中1类Non-IID降得最多。使用更多的Epoch(E-5)不能减少降低。FedAgv对Non-IID数据进行预训练时,精度仍然下降。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


三、Weight Divergence due to Non-IID Data

  测试精度取决于训练的权重,另一种比较FedAvg和SGD的方法是在相同的权重初始化的情况下,查看相对于SGD的权重的差异。它被称为重量发散,可通过以下公式计算:
在这里插入图片描述
如图下所示,随着数据变得越来越Non-IID,从IID到2级Non-IID再到1级Non-IID,所有层的权重发散都会增大。
在这里插入图片描述

1.Mathematical demonstration

下面给出权重分散的数学分析。给定紧致空间 X X X,类别空间 Y = [ C ] Y=[C] Y=[C],其中 [ C ] = 1 , . . . , C [C]={1,...,C} [C]=1,...,C。点对 x , y {x,y} x,y的分布是 P P P。函数 f : X → S f:X \rightarrow S f:XS X X X到对应概率单纯型 S S S 的映射,其中 S = { z ∣ Σ i = 1 C z i = 1 , z i ≥ 0 , ∀ i ∈ [ C ] } S=\{{z|\Sigma^{C}_{i=1}z_{i}=1,z_{i}\geq 0,\forall i\in[C]}\} S={zΣi=1Czi=1,zi0,i[C]} f i f_{i} fi表示第 i 类的概率, f f f 在假设类别 w w w上参数化处理,例如神经网络的权重。基于广泛应用的交叉熵损失损失函数 l(w) 为:
在这里插入图片描述
忽略泛化误差,直接优化种群损失,则学习问题变为:
在这里插入图片描述
使用 SGD 循环优化计算 w 值。中心化的 SGD 执行以下更新, w t ( c ) w^{(c)}_{t} wt(c)表示中央服务器第i次更新后的权重。
在这里插入图片描述
在联邦学习问题中,假设有 K 个客户端,在每个客户端本地执行单独的 SGD 优化。 n t n_{t} nt表示k客户端的本地数据集, w t k w_{t}^{k} wtk表示客户端k第t轮更新后的权值。
在这里插入图片描述
每执行 T 轮优化后在中央服务器端进行一次同步处理,其中 w m T ( f ) w^{(f)}_{mT} wmT(f)表示全局模型第T次同步后的权值
在这里插入图片描述
w m T ( f ) w^{(f)}_{mT} wmT(f) w m T ( c ) w^{(c)}_{mT} wmT(c)之间的权重分散可以用下图理解。如果数据集是IID,对于每个客户端K,本地的权值分散 w m T ( f ) w^{(f)}_{mT} wmT(f)和中央服务器的权值分散 w m T ( c ) w^{(c)}_{mT} wmT(c)的差距是很小的。如果数据是Non-IID,由于数据分布问题,客户端权重分散和中央服务器的权值分散的差距随着迭代次数的增加会加大。
在这里插入图片描述

为了正式约束 w m T ( f ) w^{(f)}_{mT} wmT(f) w m T ( c ) w^{(c)}_{mT} wmT(c)之间的权重分散,作者提出以下建议:

Proposition 3.1. 对于 K 个客户端,每个客户端都有 n ( k ) n^{(k)} n(k)个 IID 样本,第 k 个客户端数据分布为 p ( k ) p^{(k)} p(k)。如果有对于每一类 i 都为 lambda-Lipschitz 的
每隔 T 步骤进行一次同步处理,则 m 次同步后的权重散度有如下不等式
在这里插入图片描述
Remark3.2. 第m次同步后权重分散主要来自两个地方。1.第m-1次同步后的权重分散;2.客户端 k 上数据分布的概率距离相对于实际整体分布的权重散度。

Remark 3.3. 第(m-1) 次同步后的权重分散以下式的强度增强:在这里插入图片描述
因为 a ( k ) ≥ 0 a^{(k)} \geq0 a(k)0,所以上式 ≥ 0 \geq0 0。因此,如果联邦学习中不同的客户端从不同的初始 权值开始,那么即使数据遵循 IID 仍然会遇到较大的权重差异,从而导致精度下降。

Remark 3.4. 当所有客户端从相同的权值初始化,那权值分散的的根本原因是在这里插入图片描述
该值为客户端 k 上的数据分布和中央服务器端总体分布之间的搬土距离(EMD)。EMD 受学习速率、同步前步数 T 和梯度的影响。

2 Experimental Validation

  该实验设置个8个EMD值,每个EMD生成5种分布,计算这种5分布权重分散的平均值和变化。

  WeightDivergencevs. EMD 对于这三个数据集,每一层的权重散度随着EMD的增加而增加,如下图所示。对于每个数据集上的所有SGD、IID和Non-IID实验,初始权重相同。因此,根据Remark3.2,1次同步后的权重散度不受(m−1)次权值分散的影响,因为当m=1时, ∣ ∣ w m − 1 f − w m − 1 c ∣ ∣ ||w_{m-1}^{f}-w_{m-1}^{c}|| wm1fwm1c为0。因此,图4中的结果支持Proposition 3.1,即权重发散的界受EMD的影响。这种影响在第一个卷积层和最后一个完全连接层中更为显著。
在这里插入图片描述

  Test Accuracy vs. EMD 对于每个EMD,在相同的5个分布上计算测试精度的平均值和标准差,结果汇总在下表中。在这里插入图片描述

  对于这三个数据集,随着数据 Non-IID 程度加强,下降速度也越来越快。因此,在平衡IID数据和提高FedAvg的准确性之间存在一种权衡。

  为了更仔细地观察测试精度变化,当EMD=1.44时,箱线图显示了5次运行的测试精度。此外,表2显示,MNIST、CIFAR-10和KWS的最大变化分别小于0.086%、2%和1%。因此,精度受EMD的影响,而不是受潜在分布的影响。结果表明,在给定数据分布的情况下,EMD可以用来估计FedAvg的精度。
在这里插入图片描述


四、Weight Divergence due to Non-IID Data

  从上图,当EMD超过一定阈值时,测试精度急剧下降。作者提出一个数据共享策略:由各类数据的统一分布组成的全局共享数据集G集中在云中。在FedAvg初始化阶段,将用数据集G的模型和G的随机 α \alpha α部分分发给每个客户端。每个客户机的本地模型根据G的子集和私有数据进行训练。然后,云从客户端聚合本地模型,用FedAvg训练一个全局模型。
在这里插入图片描述
这个策略有两个参数调节准确度:
1.测试准确度和G大小之间的权衡, β = ∣ ∣ G ∣ ∣ ∣ ∣ D ∣ ∣ ∗ 100 % \beta=\frac{||G||}{||D||}*100\% β=DG100%,其中 D D D是全部客户端数据的大小。
2.测试精度和 α \alpha α之间的权衡。 α \alpha α为分发给一个客户端的数据占整个共享数据G的比例。

  本实验中将 CIFAR-10 训练集分为两部分,其中客户端 D 包含 40000 个样本数据,剩余部分 H 包含 10000 个样本。D 划分为 10 个 1 类 Non-IID 数据分区,H 生成 10 个随机的(belta=2.5% 至 25%) G s ′ G^{'}_{s} Gs子集。实验结果见下图
在这里插入图片描述
  随着 belta 值的增大,测试准确度不断提升,最高达到 78.72%。即使 belta 取值较小( β \beta β=10%),对于 1 类 Non-IID 数据的准确度也能达到 74.12%,而在没有使用数据共享策略的情况下,准确度仅为 44%。此外,图 7(b)的实验表明,在进行数据分发时并不需要将 G 整体分发到客户端,相反,只需要将 G 的一个随机部分分发给每个客户端就可以获得很好的效果。

  • 7
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: "Federated learning with non-iid data" 的含义是:在非独立同分布数据(non-iid data)的情况下进行联邦学习联邦学习是一种分布式学习的方法,其特点是模型的训练和更新是在本地设备上进行,而不是在心服务器上进行。而非独立同分布数据则意味着不同设备之间的数据具有不同的分布和特征,这会对联邦学习的效果造成挑战。因此,在进行联邦学习时,需要考虑如何处理这种情况,以提高模型的准确性和鲁棒性。 ### 回答2: 联邦学习是近年来备受关注的一种机器学习方法,其核心精神是通过多个客户端设备在本地进行数据处理和训练模型,不必将原始数据汇集到一起,避免了隐私泄露和数据传输带来的风险。但实际上,大多数现实场景的数据并不是独立同分布的(non-iid),多个客户端设备所在的数据分布也极有可能不同,如何在保持原有联邦学习思路的基础上应对非iid数据,也成为了当前研究的热门问题。 目前,学界和产业界对非iid联邦学习的解决方案尝试有很多,其一些典型的方法包括: 一、联邦聚类(Federated Clustering)。该方法利用监督和非监督的数据聚类模型,对处理不同数据分布的客户端设备进行分类,形成若干个数据分布相似的组,然后在每个组进行联合学习,对每个组得到的模型结果进行合并。 二、联邦迁移学习(Federated Transfer Learning)。该方法通过在源域数据上进行模型训练和参数更新,再通过一定的方法将已训练的模型迁移到目标域进行更新和优化,从而使得目标域数据更好地适应模型。 三、混合学习(Federated Hybrid Learning)。该方法结合了联邦学习和分层模型的想法,将多个客户端设备的数据层级化,在相同维度的数据上进行联邦学习,但不同层级内的数据各自训练特定的模型。 以上这些方法都对非iid联邦学习的问题提供了一定的思路和解决方案,在应用场景也得到了初步的应用。但是,不同于iid数据的不同分布、语义、类别之间的差异使得非iid联邦学习更具挑战性,其数据分布、协作策略、学习算法等方面的问题都需要进一步研究和提高。未来,我们需要不断探索更好、更高效、更准确的非iid联邦学习的方法和方案,应用到各个行业领域提高数据的利用效率和隐私保护水平。 ### 回答3: 联邦学习是一种先进的机器学习技术,它允许多个参与方共同训练一个模型,而不需要将原始数据集集在单个位置。这种分布式学习的方式可以最大程度地保护用户的数据隐私和安全。 然而,在实际应用,有时候我们会遇到一些具有不同的分布性质的非IID数据集。因为数据的不均匀和异构性质,使得对于分布在不同的机器上的数据进行联合训练变得更加困难。这种情况也称为不相同的数据偏移或数据漂移。不同分布性质的数据会导致训练模型的性能下降,因为模型无法对不同的数据进行适应。这也使得联合学习更具挑战性。 为了解决这个问题,可以对数据进行采样和重新加权,以便在融合时使每个本地模型对于不同的数据立场相对均衡。一种基于采样的方案是Federated Averaging with Local Adapation(FALA),它是一种高效的算法,它通过对于权值进行本地的调整,减少了由于数据偏移带来的下降的性能。此外,类别抽样和异质性采样也可以用来处理iid 的数据集之间的不相同。在数据偏移情况下,这需要更多的小样本和多轮次迭代。 另一种方法是加入对模型的个性化贡献,即在联合优化时分配不同的权重给本地模型或者对于不同的参与方使用不同的模型。例如,对于基于 神经网络的模型,可以采用逻辑斯蒂回归模型或者线性模型,以提高对于多样性的应对能力。 总而言之,对于不同的非IID数据,需要在联合训练时采用合适的方案,以克服分布不均带来的挑战并获得更好的结果。需要根据不同的实际情况选择最佳的方法,以满足不同的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值