本文讨论了联邦学习的独特特征和挑战,提供了当前方法的广泛概述,并概述了与广泛的研究社区相关的未来工作的几个方向。
-
背景:现代分布式网络中的设备(如移动电话、可穿戴设备和自动驾驶汽车等)每天会产生大量数据,由于这些设备的计算能力不断增强,以及对传输私人信息的担忧,在本地存储数据并将网络计算推向边缘的需求日益增加。
-
概念:联邦学习是直接在远程设备上训练统计模型的一种学习方式,它与传统的分布式环境不同,需要在隐私、大规模机器学习和分布式优化等领域取得根本性的进展。
-
核心挑战:
- 昂贵的通信:联邦网络中的通信是一个关键瓶颈,需要开发高效的通信方法,以减少通信轮数和降低每轮传输消息的大小。
- 系统异构性:联邦网络中设备的存储、计算和通信能力存在差异,且只有一小部分设备同时活跃,设备也可能不可靠,因此联邦学习方法需要考虑这些因素。
- 统计异构性:设备生成和收集的数据通常是非独立同分布的,这违反了分布式优化中常用的假设,增加了训练的复杂性,同时也需要考虑个性化或设备特定的建模。
- 隐私问题:联邦学习中的隐私问题是一个主要关注点,虽然通过共享模型更新(如梯度信息)而不是原始数据来保护每个设备上生成的数据,但通信模型更新仍可能泄露敏感信息,如何在理论和实践上理解和平衡隐私与模型性能、系统效率之间的权衡是一个挑战。
上图是联邦学习在移动电话上的下一个单词预测任务的示例应用。为了保护文本数据的隐私并减少网络上的压力,作者试图以分布式方式训练预测器,而不是将原始数据发送到中央服务器。
1.1 Problem Formulation
在联邦学习的问题表述(Problem Formulation)中,核心公式为:
其中各符号的含义如下:
-
m :表示远程设备的总数。 m:表示远程设备的总数。 m:表示远程设备的总数。
-
p k :表示第个设备的相对影响权重。 p_k:表示第个设备的相对影响权重。 pk:表示第个设备的相对影响权重。
-
F k ( w ):表示第 k 个设备的本地目标函数。 F_k(w):表示第k个设备的本地目标函数。 Fk(w):表示第k个设备的本地目标函数。
-
w :模型的参数。 w:模型的参数。 w:模型的参数。
本地目标函数通常定义为本地数据上的经验风险,即:
其中:
-
n k :表示第 k 个设备本地可用的样本数量。 n_k:表示第k个设备本地可用的样本数量。 nk:表示第k个设备本地可用的样本数量。
( f j k ( w ; x j k , y j k ) :表示在给定参数 w 、输入特征 x j k 和标签 y j k 时的损失函数。 (f_{j_{k}}(w ; x_{j_{k}}, y_{j_{k}}):表示在给定参数w、输入特征x_{j_{k}}和标签y_{j_{k}}时的损失函数。 (fjk(w;xjk,yjk):表示在给定参数w、输入特征xjk和标签yjk时的损失函数。
这个公式的目标是找到一组模型参数w,使得全局目标函数F(w)最小化。全局目标函数是由各个设备的本地目标函数加权求和得到的,权重为p_k。在联邦学习中,通常希望在满足数据存储和处理在本地进行的约束下,通过与中央服务器的周期性通信来学习这个全局模型。不同的应用场景可能会对p_k的设置有不同的考虑。
1.2 Core Challenges
这部分主要描述了与解决公式(1)中提出的分布式优化问题相关的四个核心挑战,这些挑战使联邦学习环境与其他经典问题(如数据中心环境中的分布式学习或传统的私有数据分析)截然不同,具体内容总结如下:
- 昂贵的通信:
- 关键瓶颈:通信是联邦网络中的关键瓶颈,由于隐私问题,数据需在本地存储和处理,这使得网络中的通信(可能比本地计算慢许多个数量级)变得至关重要。
- 考虑方面:为了使模型适应联邦网络中设备生成的数据,需要开发通信高效的方法,具体可从两个关键方面考虑,一是减少通信总轮数,二是降低每轮通信中传输消息的大小。
- 系统异构性:
- 系统差异:联邦网络中设备的硬件(CPU、内存)、网络连接性(3G、4G、5G、wifi)和电源(电池水平)等存在差异,导致存储、计算和通信能力各不相同。此外,网络规模和设备的系统相关约束通常导致只有一小部分设备同时活跃,且设备可能不可靠,会在迭代中随时掉线。
- 应对方向:联邦学习方法必须能够应对这些挑战,包括预期低参与度、容忍异构硬件以及对网络中设备掉线具有鲁棒性.
- 统计异构性:
- 数据特点:设备在网络中以非独立同分布的方式生成和收集数据,例如在预测下一个单词的任务中,移动电话用户的语言使用方式各不相同,而且设备间的数据点数量可能差异很大,可能存在潜在结构捕获设备及其相关分布之间的关系。
- 影响分析:这种数据生成范式违反了分布式优化中常用的独立同分布(I.I.D.)假设,增加了掉队者的可能性,并可能在建模、分析和评估方面增加复杂性。虽然经典联邦学习问题旨在学习单个全局模型,但也存在其他替代方案,如通过多任务学习框架同时学习不同的本地模型,这与元学习也有密切联系。多任务和元学习的视角都有助于实现个性化或设备特定的建模,这通常是处理数据统计异构性的更自然方法。
- 隐私问题:
- 隐私保护:隐私是联邦学习应用中的主要关注点,联邦学习通过共享模型更新(如梯度信息)而不是原始数据来保护每个设备上生成的数据,但在训练过程中通信模型更新仍可能泄露敏感信息。
- 权衡挑战:虽然近期的方法试图使用安全多方计算或差分隐私等工具来增强联邦学习的隐私性,但这些方法往往以降低模型性能或系统效率为代价来提供隐私保护。从理论和实践上理解和平衡这些权衡是实现私有联邦学习系统的重大挑战。
2 Survey of Related and Current Work
-
左:分布式(小批量)SGD。每个设备k在本地计算从小批量数据点到近似rFk (w)的梯度,并将聚合的小批量更新应用于服务器。
-
右:本地更新方案。每个设备在计算完本地更新(例如梯度)后立即应用本地更新,服务器在变量数量的本地更新后执行全局聚合。
本地更新方案可以通过在本地执行额外的工作来减少通信。
通信方面指出三个一般的方向,将其分为
(1)本地更新方法
这部分主要介绍了联邦学习中本地更新(Local Updating)的相关内容,具体如下:
-
传统方法的局限性:在数据中心环境中,迷你批处理优化方法(Mini - batch optimization methods)已成为分布式机器学习的常用范式,但在实践中,它们在适应通信 - 计算权衡以充分利用分布式数据处理方面灵活性有限。
-
新方法的提出:为了提高分布式环境中的通信效率,近期提出了一些允许在每台机器上并行应用可变数量的本地更新的方法。对于凸目标,分布式局部更新原始 - 对偶方法(distributed local - updating primal - dual methods)成为解决此问题的一种流行方式,这些方法利用对偶结构有效地将全局目标分解为可在每个通信轮并行解决的子问题。此外,也提出了一些分布式局部更新原始方法(distributed local - updating primal methods),其优点是适用于非凸目标。
-
方法的优势与实践效果:这些方法在实践中大大提高了性能,已被证明比传统的迷你批处理方法或分布式方法(如 ADMM)在实际数据中心环境中实现了数量级的加速。 在联邦学习中的应用:在联邦设置中,允许灵活本地更新和低客户端参与的优化方法已成为事实上的求解器。联邦学习中最常用的方法是联邦平均(Federated Averaging,FedAvg),它基于对原始问题的局部随机梯度下降(SGD)更新的平均。FedAvg 在实践中效果良好,尤其对于非凸问题,但没有收敛保证,在数据异构时在实际设置中可能会发散。 综上所述,这部分内容强调了本地更新方法在提高联邦学习通信效率和性能方面的重要性,以及当前常用方法的特点和局限性。
(2)压缩方案
这部分主要讨论了模型压缩方案(Compression Schemes)在联邦学习环境中的应用,具体内容如下:
-
背景:模型压缩方案如稀疏化、子采样和量化等,在之前的文献中已被广泛研究,无论是在经验上还是理论上,特别是在数据中心环境的分布式训练中。
-
挑战:在联邦环境中,设备的低参与度、非独立同分布的本地数据和本地更新方案给这些模型压缩方法带来了新的挑战。例如,在经典分布式学习中常用的误差补偿技术在联邦设置中不能直接应用,因为如果设备不经常被采样,本地累积的误差可能会过时。
-
实践策略:尽管存在挑战,但一些工作提出了在联邦设置中的实用策略,如强制更新模型为稀疏和低秩;使用结构化随机旋转进行量化;使用有损压缩和 dropout 来减少服务器到设备的通信;应用 Golomb 无损编码等。
-
理论情况:从理论角度看,虽然之前的工作已经探索了在存在非独立同分布数据的情况下低精度训练的收敛保证,但所做的假设没有考虑到联邦设置的常见特征,如低设备参与度或本地更新优化方法。 综上所述,这部分内容介绍了模型压缩方案在联邦学习中面临的挑战以及一些应对策略和理论研究现状。
(3)分散训练。
这部分主要讨论了去中心化训练(Decentralized Training)在联邦学习中的相关内容,具体如下:
-
联邦学习中的主流拓扑结构:在联邦学习中,星型网络(中央服务器连接所有远程设备)是主要的通信拓扑结构,文章主要关注此结构。
-
去中心化拓扑结构的讨论:虽然去中心化拓扑结构(设备仅与邻居通信)在通信到服务器成为瓶颈时是一种潜在的替代方案,但在数据中心环境中,去中心化训练只有在特定条件下才被证明比中心化训练更优。例如,当在低带宽或高延迟的网络中操作时,去中心化训练可能更快,但一些近期的工作在联邦学习中研究去中心化训练时存在限制,如要么局限于线性模型,要么假设设备全参与。
-
分层通信模式:为了进一步减轻中央服务器的负担,有人提出了分层通信模式,即先利用边缘服务器聚合边缘设备的更新,然后依靠云服务器聚合边缘服务器的更新。然而,这种方法虽然有希望减少通信,但并不适用于所有网络,因为这种物理层次结构可能不存在或事先未知。 综上所述,这部分内容介绍了去中心化训练在联邦学习中的现状和存在的问题,以及一种分层通信模式的可能性。
右边这种分散式拓扑是一种对于左边的星型拓扑的潜在的替代方案。
系统异构性
联邦学习中的系统异质性。设备在网络连接、电源和硬件方面可能有所不同。
2.2.1 Asynchronous Communication(异步通信):
-
传统设置中的通信方案:在传统的数据中心设置中,同步和异步方案都常用于并行化迭代优化算法,各有优缺点。同步方案简单,保证串行等效计算模型,但更容易受到设备差异导致的掉队者影响。异步方案则是缓解异构环境中掉队者问题的一种有吸引力的方法,特别是在共享内存系统中。
-
异步方案在联邦设置中的问题:异步参数服务器在分布式数据中心中取得了成功,但经典的有界延迟假设在联邦设置中可能不现实,因为联邦设置中的延迟可能长达数小时到数天,甚至完全无界。
2.2.2 Active Sampling(主动采样):
-
联邦网络中设备参与的现状:在联邦网络中,通常每轮训练只有一小部分设备参与,而大多数联邦方法是被动的,不影响哪些设备参与。
-
主动选择设备参与的方法:一种替代方法是主动选择每轮参与的设备,例如Nishio和Yonetani基于系统资源探索了新的设备采样策略,目的是让服务器在预定义的时间窗口内聚合尽可能多的设备更新。Kang等人在设计激励机制时考虑了每个设备的系统开销,以鼓励具有更高质量数据的设备参与学习过程。
-
该方法存在的问题:这些方法假设网络的系统特征是静态模型,但如何扩展这些方法来处理计算和通信延迟中实时的、设备特定的波动仍然是一个未解决的问题。此外,值得考虑的是根据潜在的统计结构主动采样一组小而充分代表性的设备。
2.2.3 Fault Tolerance(容错):
-
容错在系统社区中的研究情况:容错在系统社区中已被广泛研究,是经典分布式系统的基本考虑因素,近期的一些工作也针对数据中心环境中的机器学习工作负载研究了容错。
-
联邦学习中容错的重要性及问题:在远程设备上学习时,容错变得更加关键,因为一些参与设备在给定训练迭代完成之前退出是很常见的。一种实际的策略是简单地忽略这种设备故障,但这可能会给设备采样方案带来偏差。例如,来自偏远地区的设备可能由于网络连接不良而更有可能掉线,从而导致训练的联邦模型偏向于具有良好网络条件的设备。
-
解决容错问题的方法:从理论上讲,虽然近期一些工作研究了联邦学习方法变体的收敛保证,但很少有分析允许低参与度,或者直接研究掉线设备的影响。编码计算是通过引入算法冗余来容忍设备故障的另一种选择,但在联邦网络中,由于隐私约束和网络规模,跨设备共享数据/复制通常是不可行的,这给该方法带来了挑战。 综上所述,这三部分分别从异步通信、主动采样和容错三个方面讨论了联邦学习中系统异构性的问题及应对策略。
隐私
这部分主要讨论了联邦学习中的隐私问题,具体内容总结如下:
隐私在机器学习中的重要性:隐私保护学习在机器学习、系统和理论等社区中都得到了广泛研究,主要策略包括差分隐私、同态加密和安全函数评估或多方计算。
差分隐私:
-
定义与应用:差分隐私是一种广泛使用的隐私保护方法,其核心思想是随机化机制使得单个输入元素的改变不会对输出分布产生太大影响,从而保证在学习过程中无法推断出特定样本是否被使用。在梯度学习方法中,常用的方法是在每次迭代时随机扰动中间输出(如通过高斯噪声、拉普拉斯噪声或二项式噪声等),并在扰动前裁剪梯度以控制每个样本对整体更新的影响。
-
隐私与模型精度的权衡:差分隐私存在隐私与模型精度的权衡,添加更多噪声会增加隐私,但可能会显著降低模型精度。此外,还有其他隐私定义,如k - 匿名、δ - 存在和距离相关等,可能适用于不同的学习问题。
同态加密和安全多方计算:
-
同态加密:可以用于通过在加密数据上计算来保护学习过程,但目前应用有限,例如训练线性模型或涉及少数实体。
-
安全多方计算:当敏感数据集分布在不同数据所有者之间时,可以通过安全多方计算进行隐私保护学习,其协议可以使多方在不泄露输入信息的情况下协作计算商定的函数,但可能无法保证完全防止信息泄露,可与差分隐私结合以实现更强的隐私保证。然而,这些方法在大规模机器学习场景中可能会带来大量额外的通信和计算成本,且需要针对目标学习算法中的每个操作进行精心设计和实现。
联邦学习中的隐私挑战与分类:
- 挑战:在联邦学习中,共享模型更新作为训练过程的一部分也可能泄露敏感用户信息。
- 分类:联邦学习中的隐私定义通常可分为全局隐私和局部隐私两类。全局隐私要求模型更新对所有除中央服务器之外的第三方保密,而局部隐私进一步要求模型更新对服务器也保密。
现有提高联邦学习隐私的方法:
- 基于SMC的方法:Bonawitz等人引入了一种SMC协议来保护个人模型更新,中央服务器无法看到任何本地更新,但仍能观察到每轮的精确聚合结果。该方法是无损的,能在保证高度隐私的同时保留原始精度,但会带来显著的额外通信成本。
- 基于差分隐私的方法:其他一些工作将差分隐私应用于联邦学习并提供全局差分隐私,这些方法的一些超参数会影响通信和精度,后续工作提出了自适应梯度裁剪策略来缓解这一问题。
- 其他方法:Bhowmick等人引入了一种限制潜在对手权力的局部隐私放松版本,其隐私保证强于全局隐私,模型性能优于严格的局部隐私。Li等人提出了在元学习背景下的局部差分隐私算法,可应用于联邦学习的个性化,同时在凸设置下提供可证明的学习保证。此外,差分隐私还可以与模型压缩技术结合,以减少通信并同时获得隐私收益。 综上所述,这部分内容强调了隐私在联邦学习中的重要性,讨论了现有隐私保护方法在联邦学习中的应用以及面临的挑战。
未来方向
这部分主要讨论了联邦学习未来的研究方向,包括当前挑战的深入研究和一些新的挑战,具体内容总结如下:
- 极端通信方案:联邦学习中通信的必要性仍有待研究,虽然机器学习中的优化方法能容忍一定程度的不精确,且这种误差有助于泛化,但在大规模或统计异构网络中,一些通信方案(如one - shot或divide - and - conquer)的行为尚未被充分理解,近期提出的one - shot / few - shot启发式方法也有待理论分析和大规模评估。
- 通信减少与帕累托前沿:为了创建一个现实的联邦学习系统,需要理解减少通信的各种技术(如本地更新和模型压缩)如何相互配合,并系统地分析每种方法在准确性和通信之间的权衡。最有用的技术应在帕累托前沿展示改进,即在相同通信预算下实现比其他方法更高的准确性,并理想地在广泛的通信/准确性配置文件中表现出色。
- 新颖的异步模型:传统分布式优化中研究的同步和异步通信方案在数据中心环境中更现实,但在联邦网络中,每个设备通常不专门用于当前任务,且大多数设备在任何给定迭代中都不活跃。因此,研究更符合实际的设备中心通信方案(每个设备可以决定何时“唤醒”并以事件触发的方式与中央服务器交互)的效果是有价值的。
- 异构性诊断:近期工作试图通过一些指标(如局部不相似性和地球移动者距离)来量化统计异构性,但这些指标在训练前难以在联邦网络中计算。因此,一些问题有待解决,如是否存在简单的诊断方法来快速确定联邦网络中异构性的水平,是否能开发类似的诊断方法来量化系统相关异构性的数量,以及当前或新的异构性定义能否用于进一步改善联邦优化方法的收敛性。
- 粒度隐私约束:目前的隐私定义涵盖了网络中所有设备的本地或全局隐私,但在实践中,可能需要在更细粒度上定义隐私,因为隐私约束可能因设备或单个设备上的数据点而异。例如,最近提出的样本特定的隐私保证提供了一种较弱的隐私形式以换取更准确的模型,开发处理混合隐私限制的方法是一个有趣的未来研究方向。
- 超越监督学习:目前讨论的方法主要针对监督学习,假设联邦网络中的数据都有标签,但实际上许多数据可能是无标签或弱标签的,且问题可能不是拟合模型,而是进行探索性数据分析、确定聚合统计或执行强化学习等更复杂的任务。解决联邦网络中超越监督学习的问题可能需要解决类似的可扩展性、异构性和隐私挑战。
- 生产化联邦学习:在实际生产中运行联邦学习还存在一些实际问题,如概念漂移(底层数据生成模型随时间变化)、昼夜变化(设备在一天或一周的不同时间表现出不同行为)和冷启动问题(新设备进入网络)等,需要谨慎处理。
,且问题可能不是拟合模型,而是进行探索性数据分析、确定聚合统计或执行强化学习等更复杂的任务。解决联邦网络中超越监督学习的问题可能需要解决类似的可扩展性、异构性和隐私挑战。 - 生产化联邦学习:在实际生产中运行联邦学习还存在一些实际问题,如概念漂移(底层数据生成模型随时间变化)、昼夜变化(设备在一天或一周的不同时间表现出不同行为)和冷启动问题(新设备进入网络)等,需要谨慎处理。
- 基准测试:联邦学习是一个新兴领域,为了确保其发展基于现实世界的设置、假设和数据集,建立基准测试非常关键。需要进一步基于现有的实现和基准测试工具(如LEAF和TensorFlow Federated),促进实证结果的可重复性和新解决方案的传播。 综上所述,这部分内容为联邦学习的未来研究指出了一些有前途的方向,解决这些问题需要跨学科的努力。