Loading...

文章基本信息

标题: Dordis: Efficient Federated Learning with Dropout-Resilient Differential Privacy

作者:

  • Zhifeng Jiang (香港科技大学)
  • Wei Wang (香港科技大学)
  • Ruichuan Chen (诺基亚贝尔实验室)

发表会议: EuroSys '24

发表日期: 2024年4月22-25日

地点: 希腊雅典

关键字:

  • 联邦学习 (Federated Learning)
  • 分布式差分隐私 (Distributed Differential Privacy)
  • 客户端掉线 (Client Dropout)
  • 安全聚合 (Secure Aggregation)
  • 流水线 (Pipeline)

DOI: 10.1145/3627703.3629559

论文二十问

  1. 论文试图解决什么问题?
    论文试图解决在联邦学习(FL)系统中,如何在客户端掉线的情况下仍然保持差分隐私(DP)保护的问题。现有的分布式DP机制在客户端掉线时会导致隐私保证不足或训练精度降低,同时还存在效率低下的问题。

  2. 这是否是一个新的问题?
    是的,这是一个新的问题。虽然联邦学习和差分隐私已经有不少研究,但如何在客户端掉线的情况下仍然保持有效的隐私保护和训练精度,同时提高效率,是一个新的挑战。

  3. 这篇文章要验证一个什么科学假设?
    论文要验证的科学假设是:通过“先加后移”的噪声方案以及分布式并行架构,能够在客户端掉线情况下维持所需的噪声水平,从而确保隐私保护和训练精度,同时提高训练效率。

  4. 有哪些相关研究?如何归类?谁是这一课题在领域内值得关注的研究员?
    相关研究主要集中在联邦学习、差分隐私、分布式系统以及安全聚合方面。研究员中,值得关注的包括:

    • Kairouz, Peter (联邦学习)
    • Dwork, Cynthia (差分隐私)
    • Bonawitz, Keith (安全聚合)
  5. 论文中提到的解决方案之关键是什么?
    关键在于引入了一种“先加后移”的噪声方案(add-then-remove),确保即使在客户端掉线的情况下,也能保持所需的噪声水平。此外,Dordis框架将通信和计算操作封装成阶段,以分布式并行架构运行,进一步提高了效率。

  6. 论文中的实验是如何设计的?
    实验设计包括在真实的分布式环境中部署Dordis,并使用不同的FL训练任务进行评估,以验证其在客户端掉线情况下的隐私保护、训练精度和效率提升。

  7. 用于定量评估的数据集是什么?代码有没有开源?
    数据集包括CIFAR-10和CIFAR-100。代码是开源的,可以在GitHub找到。

  8. 论文中的实验及结果有没有很好地支持需要验证的科学假设?
    是的,实验结果表明Dordis在各种现实的FL场景中高效处理客户端掉线问题,实现了最佳的隐私-效用平衡,并将训练速度提高了最多2.4倍,支持了其科学假设。

  9. 这篇论文到底有什么贡献?

    • 提出了一种新的“先加后移”噪声方案,能够在客户端掉线的情况下保持差分隐私。
    • 设计并实现了Dordis框架,提高了联邦学习的训练效率。
    • 在大规模部署评估中证明了Dordis的有效性和效率。
  10. 下一步呢?有什么工作可以继续深入?
    下一步工作可以包括:

  • 优化Dordis框架以进一步提高其效率和适应性。
  • 在更多类型的数据集和应用场景中验证Dordis的性能。
  • 研究如何在更大规模和更多变的客户端动态环境中进一步提升隐私保护和训练效率。
  1. 要了解深入,一个模型为什么好?
    Dordis模型好在能够在客户端掉线情况下保持隐私保护和训练精度,并且显著提高了训练效率。

  2. 以前的模型为什么不好?
    以前的模型在客户端掉线情况下难以保证隐私保护和训练精度,同时存在效率低下的问题。

  3. 哪个关键点对性能提升最大?
    “先加后移”噪声方案和分布式并行架构的结合是性能提升的关键点。

  4. 编程怎么实现?
    编程实现包括对噪声的加法和移除、通信和计算操作的分阶段封装,以及使用安全聚合协议来确保数据的隐私和安全。

  5. 论文源代码和paper匹配度怎么样、都覆盖了吗?
    论文源代码和paper匹配度很高,代码开源并且实现了论文中描述的关键方案和实验。

  6. 哪些数学运算是关键的?
    关键的数学运算包括差分隐私的噪声计算、噪声分解与合成、以及安全聚合中的加密和解密运算。

  7. 整个全流程是怎么走的?
    全流程包括客户端下载全局模型,进行本地训练,添加噪声后上传更新,服务器进行安全聚合,移除多余噪声,并更新全局模型。

  8. 数据是怎样流动的?其中是怎样变换的?各个变换有什么实际意义?
    数据从客户端流向服务器过程中被添加噪声保护,通过安全聚合保证隐私,服务器在聚合后移除多余噪声,再更新全局模型。每个步骤都确保了数据隐私和模型更新的有效性。

  9. 既要关注具体实现思路、也要关注上层抽象意义。作者灵感从何而来?
    作者灵感来自于现有FL和DP机制在处理客户端掉线时的不足,通过创新性的“先加后移”方案和分布式并行架构解决了这些问题。

  10. 作者思考路线如何?
    作者通过分析现有机制的不足,提出新的噪声方案和架构设计,验证其有效性和效率,并开源代码以供进一步研究和应用。

Abstract

联邦学习(FL)越来越多地被部署在多个客户端之间,以在分散的数据上训练共享模型。为了解决隐私问题,FL系统需要在训练过程中保护客户端的数据不被泄露,并在暴露于不受信任的领域时控制通过训练模型的数据泄露。分布式差分隐私(DP)在这方面提供了一种有吸引力的解决方案,因为它在没有可信服务器的情况下实现了隐私和效用之间的平衡。然而,现有的分布式DP机制在客户端掉线的情况下不切实际,导致隐私保证差或训练精度降低。此外,这些机制还存在严重的效率问题。

我们提出了Dordis,一个分布式差分隐私的FL框架,它既高效又能适应客户端掉线的情况。 具体来说,我们开发了一种新颖的“先加后移”方案,即使在某些采样客户端掉线的情况下,也能在每轮训练中精确地强制执行所需的噪声水平。这确保了隐私预算的合理使用,尽管客户端的动态不可预测。为了提高性能,Dordis通过将通信和计算操作封装成阶段,作为分布式并行架构运行。它自动将全局模型聚合分成多个块聚合任务,并将它们流水线处理以实现最佳加速。大规模部署评估表明,Dordis在各种现实的FL场景中高效处理客户端掉线问题,实现了最佳的隐私-效用平衡,并将训练速度提高了最多2.4倍。

1.Introduction

联邦学习(FL)允许在中央服务器的协调下,多个客户端(如移动设备和边缘设备)共同训练共享模型。在客户端数量庞大的场景中(如数百万台移动设备),服务器会动态抽取一小部分客户端参与每轮训练。这些客户端从服务器下载全局模型,使用私有数据计算本地更新,并将这些更新上传到服务器进行全局聚合。整个训练过程中,客户端的数据不会直接暴露。FL已经在多个领域中部署,使得许多需要隐私保护的AI应用成为可能。

然而,仅仅将客户端数据保留在设备上并不足以保护数据隐私。最近的研究表明,在FL训练过程中,通过消息交换仍可能暴露敏感数据。此外,利用训练模型的记忆能力,攻击者也可能推断出客户端的数据。

目前的FL系统通常使用差分隐私(DP)来扰动每轮的聚合模型更新,以限制单个客户端数据的泄露。在三种典型的DP模型中(即中央DP、本地DP和分布式DP),分布式DP对FL最有吸引力,因为它不依赖于可信服务器,并且在给定的隐私预算下增加的噪声最少,对训练模型的效用影响很小。具体来说,在分布式DP中,系统首先计算每轮所需的最小随机噪声,然后每个被抽样的客户端在其本地更新中添加一小部分所需的噪声。服务器的聚合更新因此被精确地扰动了最小所需的噪声。在分布式DP中,本地更新通过安全聚合进行,这确保了(不可信的)服务器只能知道聚合结果,而不是单个更新。

然而,现有的分布式DP机制在实际的FL系统中面临两个实际挑战。首先,在客户端掉线的情况下,分布式DP的隐私保证可能会受到影响,客户端掉线可能由于网络错误、低电量或资格变化而随时发生。对于掉线的客户端,其噪声贡献在聚合更新中缺失,导致DP保护不足,每轮消耗的隐私预算超出最初分配的量。这迅速耗尽隐私预算,导致训练提前终止和显著的模型效用损失。一个快速解决方案是主动增加使用的噪声量,但这需要对客户端动态和学习任务有深刻的理解,才能实现最佳的隐私-效用平衡。

其次,除了客户端掉线引起的隐私问题,分布式DP中使用的安全聚合协议(如SecAgg)还面临严重的效率挑战。由于多轮通信和大量的密码计算,每轮训练的时间中最多有97%消耗在这些操作上。最近的一些尝试在改善渐进复杂性方面牺牲了所需的属性(如恶意安全性或掉线容忍度),并且实际收益有限。

本文提出了Dordis,一个高效的FL框架,能够在FL中实现对客户端掉线具有弹性的分布式DP。Dordis通过两个关键贡献解决了FL系统中分布式DP的隐私和效率问题。首先,为确保聚合模型更新在客户端掉线情况下仍被精确地扰动到最小所需噪声,我们设计了一种名为XNoise的“先加后移”方案。XNoise初始让每个选定的客户端在其本地更新中添加过量噪声。聚合后,服务器根据实际的客户端参与情况,移除超过最小噪声要求的部分过量噪声。为应对XNoise执行中的潜在失败,我们使用高效的密码学原语巩固其安全性。XNoise被证明能在恶意服务器与部分客户端勾结的情况下,保护诚实客户端的隐私。

其次,为加快分布式DP的执行,我们将Dordis设计为分布式并行架构,通过将通信和计算密集型操作(如数据编码和传输)分成阶段进行重叠。为实现通用设计,Dordis首先将分布式DP工作流抽象为一系列以不同系统资源为主的阶段。通过将全局聚合任务分为多个块聚合任务,Dordis允许流水线并行处理,并调度它们以并行运行不同的阶段。通过现实的性能模型和分析技术,Dordis通过解决优化问题来识别最佳的流水线配置,以实现最大加速。

我们实现了Dordis作为一个端到端系统,具有支持广泛分布式DP协议的通用设计。我们在具有客户端设备数据和硬件异构性的真实分布式环境中部署了Dordis。我们在各种FL训练任务中的评估显示,Dordis在客户端掉线情况下,能在不损害模型效用的情况下强制执行必要的噪声。此外,Dordis的流水线执行使得基线系统的训练速度提高了最多2.4倍,同时不降低其安全属性。

2. 背景和动机

2.1 场景

联邦学习
联邦学习(FL)允许大量客户端(例如,数百万台移动设备和边缘设备)在不共享本地数据的情况下协作构建全局模型。在FL中,逻辑上集中的服务器维护全局模型并协调迭代训练。在每轮训练开始时,服务器随机抽取一部分可用客户端作为参与者。这些被抽样的客户端使用私有数据对下载的全局模型进行本地训练,并仅向服务器报告模型更新。服务器收集参与者的更新直到某个截止日期,然后聚合这些更新,并使用聚合更新(例如,FedAvg)来优化全局模型。

威胁模型
尽管在FL过程中客户端数据不会直接暴露,但大量研究表明,通过数据重建或成员推理攻击,仍有可能从个别更新或训练后的模型中揭示敏感的客户端数据。例如,攻击者可以从客户端的梯度更新中准确重建其训练数据;攻击者也可以从训练后的语言模型中推断出某客户端的私有文本是否在训练集中。

我们的目标是控制上述攻击中诚实客户端数据的暴露。根据安全多方计算(SMPC)文献,我们针对半诚实环境(所有参与方都遵循协议)和恶意环境(攻击者可以任意偏离协议)。在这两种环境中,攻击者都渴望窥探诚实客户端的数据,且可能与服务器和部分被抽样的客户端勾结以增强其优势。我们假设客户端的勾结是轻微的,因为在实际部署中,客户端数量通常很大,使得攻击者难以腐化大量客户端。例如,在苹果生态系统(超过20亿活跃设备)的规模下,即使仅破坏1%的设备也意味着约2000万个节点。因此,如果服务器遵循约定的抽样算法,被抽样的勾结客户端数量很小。即使服务器在客户端抽样中表现出恶意行为,公钥基础设施和签名方案的使用也能防止其模拟大量客户端,诚实客户端可以验证所收到消息的来源并检测此类行为。此外,当部署可验证随机函数(VRFs)以确保随机客户端抽样的正确性时,我们也可以防止服务器挑选勾结的客户端。

2.2 差分隐私

重构和成员推理攻击通过寻找使观察到的消息(例如,单个更新或训练后的模型)更有可能包含客户端数据的方式来工作。差分隐私(DP)有效地防止这些攻击,确保没有特定客户端的参与能显著增加这些观察消息的可能性。这个保证通过两个参数𝜖和𝛿来衡量。给定任何只在包含单个客户端数据上不同的相邻训练集𝐷和𝐷′,如果聚合过程𝑓是(𝜖, 𝛿)-差分隐私的,那么对于任何输出集合𝑅,有Pr[𝑓(𝐷) ∈ 𝑅] ≤ 𝑒𝜖 · Pr[𝑓(𝐷′) ∈ 𝑅] + 𝛿。

换句话说,客户端参与的变化最多只会导致任何输出概率的一个𝑒𝜖倍的变化,除非以𝛿的概率。直观上,较小的𝜖和𝛿表示更强的隐私保证。DP的一个关键属性是组合性,即在同一个数据集上运行(𝜖1, 𝛿1)-DP和(𝜖2, 𝛿2)-DP计算的过程是(𝜖1 + 𝜖2, 𝛿1 + 𝛿2)-DP。这使得人们可以计算由一系列DP计算输出(如FL中的多个聚合更新发布)导致的隐私损失。

中央DP和本地DP
在FL中应用DP的一种方法是让服务器向聚合更新添加符合DP要求的噪声,即中央DP方案。然而,服务器必须是可信的,因为它可以访问(未保护的)聚合更新。虽然服务器可以建立一个具有硬件支持的可信执行环境(TEE),但它仍然易受各种攻击(如侧信道攻击)的影响。另一种DP方案是本地DP,在这种方案中,每个被抽样的客户端向其本地更新添加DP噪声。只要客户端添加的噪声足以保证DP,它的隐私就能得到保护,无论其他客户端或服务器的行为如何。然而,这会导致聚合更新中积累过多的噪声,显著损害模型效用。

分布式DP
与中央和本地DP相比,分布式DP在FL场景中提供了一种有吸引力的解决方案,因为它:1)不需要可信服务器,2)在给定的隐私预算下增加的噪声最少。在分布式DP中,隐私目标被指定为全局隐私预算(𝜖𝐺, 𝛿𝐺),它可以被视为一种不可再生的资源,由每次聚合更新发布消耗。理想情况下,到训练完成时,剩余的隐私预算应该为零,以最小的DP噪声和模型效用损失达到隐私目标。

这要求系统提前进行离线噪声规划,确定每轮训练中应添加到聚合更新中的最小所需噪声,以控制隐私损失。然后系统进行在线噪声强制。在每轮训练中,它将噪声添加任务均匀分配给所有被抽样的客户端。每个客户端通过添加一小部分所需的噪声来略微扰动其更新。然后,客户端使用安全聚合(SecAgg)协议将更新掩码后发送到服务器,这确保服务器只知道被精确扰动了最小所需噪声的聚合更新。需要注意的是,除了常用的SecAgg外,分布式DP还可以使用其他方法实现,如安全洗牌。本文集中讨论使用SecAgg的方法,因为它在FL中很受欢迎。

2.3 分布式DP的实际问题

虽然分布式DP能够实现有吸引力的隐私-效用平衡,但其在实际应用中存在显著问题。

2.3.1 由客户端掉线引起的隐私问题

在FL训练中,客户端掉线可能随时发生,例如由于电量不足、连接不良或切换到计量网络。在实际系统中普遍观察到的客户端掉线现象,给分布式DP带来了严重的隐私问题。具体来说,如果客户端在被抽样后掉线,缺少它们的噪声贡献,总噪声会低于最低所需水平。这导致数据暴露增加,迫使系统每轮消耗比计划更多的隐私预算。无法确定性地强制消耗隐私预算,系统可能无法激励客户端参与或遵守隐私法规。

为说明这一问题,我们分析了一个现实的FL任务。我们运行了两个FL测试平台,其中100个客户端分别在CIFAR-10和CIFAR-100数据集上联合训练ResNet-18模型150轮和300轮。为了模拟客户端的动态,我们使用了一个覆盖136k移动设备的大规模用户行为数据集,并提取了100个不稳定用户。我们每轮抽样16个客户端进行训练,观察到它们的可用性具有很大的动态性。在这种情况下,原始分布式DP训练在CIFAR-10和CIFAR-100数据集上,由于掉线客户端的噪声缺失,分别在第150轮和第300轮消耗了8.6和7.9的隐私预算(见图1b和1c中的Orig)。

简单的解决方案和局限性
一个解决方案是在隐私预算耗尽时提前停止训练(Early)。然而,这不可避免地损害了模型效用。如图1b和1c所示,Early使模型效用降低了19-29%,与非隐私训练相比。另一种解决方案是在离线噪声规划期间对每轮掉线率进行保守估计。然而,平衡隐私-效用的良好估计需要准确的客户端动态和学习任务信息。例如,在没有准确的客户端动态信息的情况下(如图1a),一种常见的做法是高估掉线严重性(如Con8中的80%),这会导致次优的模型效用,而低估它(如Con2中的20%)则会导致隐私预算的过度消耗。即使预先了解客户端动态,因其任务特定性质,权衡仍然难以通过反复试验来导航。例如,假设每轮掉线率为50%(Con5)可为CIFAR-10带来接近最优的隐私-效用平衡,但对CIFAR-100却会造成明显的效用下降(16%)。

客户端掉线率的影响
为了进一步将隐私违规与掉线严重性联系起来,我们让客户端在被抽样后随机掉线,配置掉线率。图1d显示,对于CIFAR-10测试平台,随着掉线率增加,更多的客户端数据在训练过程中暴露,导致更大的隐私缺失,无论预算如何。

2.3.2 由安全聚合引起的性能问题

除了由客户端掉线引起的隐私问题,分布式DP中使用的SecAgg算法还带来了严重的性能问题。具体来说,为确保服务器从任何客户端仅能得知聚合更新而不能得知单个更新,SecAgg让客户端同步密钥并使用它们生成零和掩码。这涉及大量的成对掩码和秘密共享的使用,导致计算和通信复杂度很高。

为了量化SecAgg的性能影响,我们参考图2a,显示了前面实验中不同数量被抽样客户端情况下每轮训练的平均运行时间分解。为了对比,我们还运行了未向聚合更新添加DP噪声的SecAgg实验。在所有实验中,SecAgg的成本占据主导地位,占每轮训练时间的86-91%,而带DP的SecAgg比不带DP的SecAgg略显严重的瓶颈。此外,SecAgg在规模上更是显著占据主导地位。

现有解决方案和局限性
已经有很多研究致力于改善安全聚合的性能,但它们都有显著的局限性。例如,SecAgg提供的一个保证是对恶意对手的输入隐私保护,而TurboAgg、FastSecAgg和LightSecAgg只处理半诚实的对手。此外,它们改进的复杂性以牺牲掉线容忍度为代价,并且在FL实践中的通信成本仍然很高。在SecAgg的后续研究中,SecAgg+是最先进的,它在轻微妥协安全性和鲁棒性的情况下改善了渐近复杂性。然而,如图2b所示,仍需进一步改进,鉴于SecAgg+在训练时间上持续占据主导地位。

3. 针对掉线客户端的噪声增强

为了解决第2.3.1节中提到的隐私问题,我们首先形式化了在客户端掉线情况下的噪声增强问题,并提出了解决该问题的技术直觉。然后,我们描述了一种新的“先加后移”噪声增强方法,该方法在实际部署中通过安全整合实现,接着进行了安全性分析。在不失一般性的情况下,我们假设DP中使用的随机噪声分布𝜒(𝜎²)在方差𝜎²下是封闭的。也就是说,给定两个独立的噪声𝑋1 ~ 𝜒 (𝜎1²) 和 𝑋2 ~ 𝜒 (𝜎2²),我们有𝑋1 ± 𝑋2 ~ 𝜒 (𝜎1² + 𝜎2²)。例如,高斯分布和斯克拉姆分布都具有这种性质。

3.1 技术直觉

我们从对分布式DP中原始噪声添加过程的形式描述开始,称之为Orig。

定义1 (Orig)
给定一轮训练中的采样客户端集合𝑈和目标噪声水平𝜎²,Orig让每个客户端𝑐𝑗 ∈ 𝑈通过添加噪声𝒏𝑗 ~ 𝜒(𝜎²/|𝑈|)来扰动其更新𝚫𝑗,并将结果𝚫 ̃𝑗 = 𝚫𝑗 + 𝒏𝑗上传到服务器进行聚合。

如第2.3.1节所述,Orig的问题在于,当某些客户端在被采样后掉线时,它们的噪声贡献会缺失;因此,服务器聚合的最终噪声将不足。一个潜在的修复方法是让服务器添加掉线客户端贡献的缺失噪声。然而,这在我们的威胁模型下不可行,其中服务器可能是攻击者的一部分,可以从扰动不足的聚合结果中推断客户端的数据,并获得无限的优势(半诚实)或甚至省略噪声添加任务(恶意)。

“先加后移”噪声增强
为了确保聚合噪声不会低于最低所需水平,我们设计了一种“先加后移”噪声增强方案:

  1. 每个被采样的客户端首先向其模型更新中添加超过所需量的噪声,即使客户端掉线也会导致过度扰动的聚合更新;
  2. 服务器根据实际的掉线情况移除多余的聚合噪声部分。该方案可以通过两种可能的方法实现:
  • 重置
    在噪声添加过程中,每个被采样的客户端将其噪声份额𝒏𝑜添加到本地更新中,并将整个噪声更新发送到服务器。为了方便噪声移除,每个存活的客户端根据实际的客户端掉线情况计算新需噪声𝒏𝑢,并减去原始噪声份额𝒏𝑜。为了确保噪声移除是隐私保护的,仅传输“𝒏𝑢 − 𝒏𝑜”到服务器并添加到聚合更新中。

  • 分解
    每个被采样的客户端将其噪声份额分解为多个可分别添加到客户端本地更新中的添加组件。为了隐私保护的噪声移除,每个存活的客户端仅将超出新需噪声量的噪声组件发送到服务器,以从聚合中移除这些噪声。

比较
这两种方法的一个区别在于它们的通信效率。在FL中,DP噪声是一系列与模型长度(如数百万到数十亿)相同的伪随机数(PRN),可以通过将种子(如20字节)输入PRN生成器来唯一生成。在噪声移除过程中,“分解”允许每个存活的客户端将相关种子发送到服务器,以生成需要移除的每个噪声组件。然而,“重置”要求每个存活的客户端生成并发送更新的噪声𝒏𝑢 − 𝒏𝑜作为一个整体,以隐藏两个单独的噪声。否则,服务器可以使用它们来重建无噪声的聚合更新。随着模型规模的不断增长,这会导致噪声移除的通信成本急剧增加。在第6.3节中,我们比较了两种方法在通信中的可扩展性。

另一个区别在于它们的鲁棒性。在现实中,存活的客户端也可能在噪声移除过程中掉线。由于缺少它们的噪声种子,服务器无法完全移除添加到聚合更新中的多余噪声。为了解决这个问题,“分解”可以通过在模型聚合之前通过秘密共享(例如,通过Shamir方案)来有效备份每个噪声组件的种子。然而,这种方案不适用于“重置”,因为要传输的更新噪声既不能用种子生成,也不能在聚合前确定。

挑战
由于“重置”方法的效率低下和鲁棒性差,我们选择通过“分解”来实例化“先加后移”噪声增强方案,并在其设计中解决两个技术挑战:

  • 在训练轮次的各种掉线结果下,如何分解客户端的噪声份额以满足噪声移除期间的每个可能需求?
  • 在实际部署中,如何在安全的情况下高效地实现噪声增强方法?