联邦学习的边缘和末端计算

1. HeirFAVG(from Client-Edge-Cloud Hierarchical Federated Learning)
联邦学习是一个协作的机器学习框架,它可以在不访问客户端私有数据的情况下训练深度学习模型。以前的工作假设一个中心参数服务器,要么在云中,要么在边缘。云服务器可以访问更多的数据,但是需要过多的通信开销和较长的延迟,而边缘服务器可以与客户端进行更有效的通信。为了结合它们的优势,我们提出了一个客户端-边缘云分层联邦学习系统,该系统支持允许多个边缘服务器执行部分模型聚合的HierFAVG算法。通过这种方法,可以更快地训练模型,实现更好的通信计算权衡。对层次法进行了收敛性分析,研究了关键参数对定性设计的影响。实证实验验证了分析结果,并证明了这种分层结构在不同数据分布场景下的优势。特别地,通过引入中间边缘服务器,与基于云的联合学习相比,可以同时减少模型训练时间和终端设备的能耗。

最近在深度学习方面的发展彻底改变了许多应用领域,如图像处理、自然语言处理和视频分析[1]。到目前为止,深度学习模型主要是在一些强大的计算平台上进行训练,例如云数据中心,集中收集大量数据集。尽管如此,在许多应用程序中,数据是在终端设备(如智能手机和传感器)上生成和分发的,将它们移动到中央服务器上进行模型训练将违反日益增长的隐私问题。因此,保护隐私的分配培训开始受到重视。2017年,谷歌提出了联邦学习(FL)和联邦平均(FAVG)算法[2],在数据中心不集中数据的情况下训练深度学习模型。使用该算法,本地设备从云服务器上下载一个全局模型,执行几个时间段的本地训练,然后将模型权值上传到服务器上进行模型聚合。重复这个过程,直到模型达到预期的精度,如图1所示。

在这里插入图片描述

FL通过将过程分解为两个步骤,即,基于客户端本地数据和服务器端全局模型聚合的并行模型更新。在实际应用中验证了该方法的可行性。此后,它引起了学术界和工业界的广泛关注。随着边缘计算平台[5]的出现,大多数关于FL的初始研究都假设是一个云作为参数服务器,而研究人员已经开始研究基于边缘的FL系统[6][8]。对于基于边缘的FL,近端边缘服务器作为参数服务器,在其通信范围内的客户端协作训练深度学习模型。

虽然基于云的和基于边的FL系统都采用了相同的FAVG算法,但是两种系统之间有一些基本的区别,如图1所示。在基于云的FL中,参与的客户总数可达数百万[9],为深度学习提供了所需的海量数据集。同时,与云服务器的通信速度慢,不可预测,如网络拥塞,使得训练过程效率低下,[2],[9]。分析表明,FAVG[10]算法在通信效率和收敛速度之间存在权衡。具体地说,更少的通信需要以更多的本地计算为代价。相反,在基于边缘的FL中,参数服务器被放置在最近的边缘,例如基站。因此,计算的延迟相当于与边缘参数服务器通信的延迟。因此,有可能在计算和通信[7]、[8]之间进行更好的权衡。然而,基于边缘的FL的一个缺点是每个服务器可以访问的客户端数量有限,这将导致不可避免的训练性能损失。

从上面的比较中,我们看到了利用云服务器来访问大量训练样本的必要性,而每个边缘服务器都可以通过其本地客户端享受快速的模型更新。这促使我们提出了如图1右侧所示的客户端-边缘-云分层FL系统,以获得两个系统的最佳效果。与基于云的FL相比,分层的FL将显著减少与云的昂贵通信,并辅以高效的客户端更新,从而显著减少运行时和本地迭代次数。另一方面,由于云服务器可以访问更多的数据,分层FL在模型训练中的表现将优于基于边缘的FL。从图2中可以清楚地看出这两个方面,这是本文结果的预览图。虽然这些优点可以直观地解释,但层次化FL系统的设计并非易事。首先,通过将FAVG算法扩展到层次设置,新算法是否仍然收敛?考虑到模型聚合的两个级别(一个在边缘,一个在云上),在每个级别上聚合模型的频率应该是多少?此外,通过允许频繁的本地更新,是否可以实现更好的延迟能量权衡?在本文中,我们将讨论这些关键问题。首先,给出了训练算法收敛性的严格证明。通过收敛性分析,给出了选择聚合频率的若干定性准则。MNIST[11]和CIFAR-10[12]数据集上的实验结果支持了我们的发现,并证明了与基于云的系统相比,实现更好的通信计算权衡的优势。

2、 增加参与设备上的计算量
3、双流模型增加每个参与设备的计算量(from Two-Stream Federated Learning:Reduce the Communication Costs)
联邦学习算法解决了在由大量现代智能设备组成的分布式网络上训练机器学习模型的问题。它克服了隐私保护、不平衡和非iid数据分发的挑战,并尽可能减少所需的通信轮数。然而,与其他因素如计算成本相比,通信成本仍然是主要的制约因素。在本文中,我们采用了带有MMD(最大平均偏差)约束的两流模型,而不是在标准联合学习环境下在设备上训练的单一模型。随后的实验表明,该模型的性能优于基线方法,特别是在非iid数据分布中,并且在所需的通信轮数中减少了20%以上。

现代电话和平板电脑,可穿戴设备和智能物联网(IoT)设备每天都在生成大量数据,适合用于训练机器学习模型。 但是,丰富的数据通常对隐私敏感并且数量很大。 使用传统方法将此类数据上传到服务器并在服务器上进行培训在隐私或成本方面均无法承受。 由于这些设备的计算能力不断提高,联合学习[1] [2] [3]提供了一种通过汇总本地计算的更新来直接在设备上训练共享模型的方法。 可能的示例包括:学习识别电话用户的活动,预测健康事件或学习个性化的打字推荐系统。 尽管与同步随机梯度下降(SGD)方法相比,联邦学习算法显示出所需的通信次数有所减少,但通信成本仍然是主要约束。

在本文中,我们采用两流模型,该模型通常用于转移学习和领域适应[4] [5] [6],而不是在联合学习环境中在设备上训练的单一模型。 我们还将最大平均差异(MMD)约束[7]引入联邦学习的训练迭代中,这会迫使本地双向模型从其他设备中学习更多知识。 进一步的实验表明,所提出的方法在不影响最终测试性能的情况下减少了所需的交流次数。

我们做出以下贡献:
1)我们首先采用两流模型而不是单一模型来在联合学习环境中的设备上进行训练。
2)我们证明,将MMD约束引入联邦学习的训练迭代中有助于减少所需的交流次数,而不会影响最终性能。
3)我们在不同的数据集中使用不同的模型进行了一系列实验,表明我们的方法是通用的。

在传统的分布式环境中,每个客户端的数据分布都是IID,并且客户端和服务器之间存在高速且高度可靠的网络连接,因此提出了许多优化算法。 例如,仅使用梯度信息的随机一阶方法,包括SGD [8] [9] [10],加速SGD [11]和方差减少SGD [12] [13]的分布式变体,很容易实现。 在联合学习环境中实现但负担不起的通信成本并且无法处理非IID数据分发。

联合学习的目的是从由K个分布式客户端(每个设备都视为客户端)生成的数据{X1,…,XK}中训练模型。 每个客户端t∈[K]以非IID方式生成数据,这意味着客户端t上的数据分布Xt〜Pt不是整个分布的统一样本。

更具体地,联合学习设置假定在各轮通信中进行的同步更新方案。 固定数量的K个客户端,每个客户端都有一个本地数据集。 在每个回合开始时,选择随机的客户分数C参与此回合更新。 服务器将当前的全局模型发送到每个选定的客户端。 然后,每个客户端根据全局模型及其本地数据计算一个唯一的本地模型,并将其报告给服务器。 最后,服务器通过模型平均更新全局模型并开始下一轮。 通过在优化迭代期间在每个客户端上添加更多计算,与传统的基于SGD的方法相比,联合学习算法减少了所需的通信回合。

顾名思义,最大均值误差(MMD)衡量两种数据分布的均值之间的距离,并广泛用于域适应问题[5] [14] [15],描述了源和目标生成的特征之间的差异 域。 通过最小化MMD损失,他们迫使两流模型提取更通用的特征,这与我们学习整个数据集中更好的表示形式的目的非常相似。 在本文中,我们关注由Gretton等人[7]提出的MMD(MKMMD)的多核变体,该变体首先将数据分布映射到可再生内核希尔伯特空间(RKHS)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值