Advances and Open Problems in Federated Learning
2023.11.27周一,最近支原体肺炎高发。研一上课结了一部分,赶紧看论文。
时隔大半年,今天开始学习联邦学习的大综述————Advances and Open Problems in Federated Learning(联邦学习中的最新进展和开放问题)
这篇综述的内容分为8个章节:
- 引言
- 联邦学习在新兴环境和场景中的应用
- 提升效率和有效性
- 保护用户数据隐私
- 防御攻击与故障
- 公平性保证和处理偏差来源
- 处理系统挑战
1 Introduction
联邦学习(FL)是一种机器学习设置,其中许多客户端(例如移动设备或整个组织)在中央服务器(例如服务提供商)的编排下协作训练一个模型,同时保持训练数据去中心化。体现了集中收集原则和数据最小化原则,缓解很多系统性的隐私风险和开销。
McMahan在2016年引入联邦学习的概念:“我们把我们的方法称为联邦学习,因为学习任务是由参与的设备(我们称为客户端)的松散联盟解决的,这些设备由一个中央服务器协调。” 因此从定义中就有一系列挑战:在通信带宽有限的大量不可靠设备上对非平衡和非独立同分布(独立同分布)的数据进行训练。
提出联邦学习的概念之前就有这种目标:在不暴露数据的情况下从数据拥有者那里分析和学习数据的分布。然而,即使自从引入了联邦学习这一术语以来,没有任何一项单独的工作可以直接解决FL的全部挑战。因此联邦学习这一术语为一组特征、约束和挑战提供了一个方便的简称,这些挑战经常出现在在分散数据上应用ML的场景中,在这种场景中隐私是最重要的。
联邦学习涉及到的技术不仅有机器学习,还包括分布式优化、密码学、安全、差分隐私、公平性、压缩感知、系统、信息论、统计学等等。本篇论文的工作目标之一是强调将这些领域的技术可能结合起来的方式,并依此提出有趣的可能性和新的挑战。
联邦学习最开始是在移动和边缘设备(海量)场景中,后来逐渐应用在其他场景,比如数量比较少的可信参与方(几个组织)。因此根据这些变化,我们给出了联邦学习更宽泛的定义:
Federated learning is a machine learning setting where multiple entities (clients) collaborate in solving a machine learning problem, under the coordination of a central server or service provider. Each client’s raw data is stored locally and not exchanged or transferred; instead, focused updates intended for immediate aggregation are used to achieve the learning objective.
联邦学习是一种机器学习环境,在这种环境中,多个实体(客户端)在中央服务器或服务提供商的协调下,合作解决一个机器学习问题。每个客户端的原始数据都存储在本地,不会进行交换或传输;相反,为了实现机器学习目标,会使用旨在即时聚合的集中更新。
注:集中更新是指范围狭窄的更新,以包含未完成特定学习任务所需的最小信息;在数据最小化服务中,尽早执行聚合。我们注意到,这个定义将联邦学习与2.1节中讨论的完全分散的(点对点)学习技术区分开来。
尽管对隐私保护的数据分析已经被研究了50多年,但只有在过去的十年中,解决方案才被广泛地大规模部署(如[177,154])。跨设备联邦学习和联邦数据分析现在正在应用于消费数字产品中。谷歌在Gboard移动键盘[376,222,491,112,383]、Pixel手机[14]和安卓信息[439]中广泛使用了联邦学习功能。虽然谷歌开创了跨设备FL,但对这种设置的兴趣现在更加广泛,例如:苹果在iOS 13 [25]中使用跨设备FL,用于快速型键盘和“嘿Siri”[26]的声音分类器;ai正在为医学研究[149]开发跨设备FL解决方案,Snips已经探索了跨设备FL的热字检测[298]。
跨孤岛联邦学习的应用也已在无数领域被提出或描述,包括再保险[476]的财务风险预测、药品发现[179]、电子健康记录挖掘[184]、医疗数据分割[15,139]和智能制造[354]。
表 1 将跨孤岛和跨设备的联邦学习与传统的单数据中心分布式学习进行了对比。这些特征确定了实际联邦学习系统通常必须满足的许多限制条件,因此既能激励联邦学习,又能为联邦学习的公开挑战提供信息。下文将详细讨论这些问题。
数据中心分布式学习(Datacenter DL) | 跨孤岛联邦学习(Cross-silo FL) | 跨设备联邦学习(Cross-device FL) | |
---|---|---|---|
设置 | 在一个大而“平坦”的数据集上训练一个模型。客户端是单个集群或数据中心中的计算节点。 | 用孤岛数据训练一个模型。客户端是不同的组织(例如医疗或金融)或地理分布式数据中心。 | 客户端是海量的移动或物联网设备。 |
数据分布 | 数据集中存储并且在客户端之间被打乱并且均匀分布。任何一个客户端都可以读取数据集的任何部分 | 数据在本地产生并且保持分散的分布。每个客户端只储存自己的数据,并且不能读取其他客户端的数据。数据不是独立同分布的。 | |
编排方式 | 中心化编排 | 中央编排服务器/服务组织数据训练,但看不到原始数据。 | |
广域通信 | 无(所有连接的客户端都在同一个数据中心/聚合器内) | 典型结构式集线器和辐条拓扑结构,集线器代表协作服务提供者(不包含数据),辐条连接客户端 | |
数据可用性 | 所有客户端几乎都总是可用的 | 在同一时间内只有一小部分客户可以使用,而且往往随昼夜或其他因素而变化 | |
分布规模 | 一般1-1000个客户端 | 一般2-100个客户端 | 海量客户端并行,通常达到10^10个客户端数量级 |
主要瓶颈 | 计算通常是瓶颈,数据中心内通常假设非常快速的网络 | 可能是计算或者是通信 | 通信通常是主要瓶颈,跨设备联邦计算通常依赖wifi或其他更慢的连接方式 |
寻址能力 | 每个客户端都有一个标识或名称,允许系统专门访问它 | 客户端不能直接建立索引(即不使用客户端标识符)。 | |
客户端状态 | 有状态的——每个客户都可以参与每一轮的计算,一轮又一轮地携带状态。 | 无状态——每个客户可能只参与一次任务,所以通常假设在每一轮计算中都有一个从未见过的客户的新样本。 | |
客户端可靠性 | 相对很少失败 | 高度不可靠——通常假设参与一轮计算的5%或更多的客户端预计会失败或退出(例如当违反电池、网络或空闲要求时,设备将变得不合格) | |
数据划分轴 | 数据可以跨客户端进行任意划分/重新划分 | 划分是固定的。可以按样本划分或者按特征划分 | 划分是固定的,数据按样本划分 |
这两种 FL 变体是具有代表性的重要实例,但不同的 FL 设置可能具有这些特征的不同组合。在本文的其余部分,除非另有说明,我们将考虑跨设备的 FL 设置,尽管许多问题也适用于其他 FL 设置。第 2 节专门讨论了其他许多变化和应用。
接下来,我们将更详细地讨论跨设备联邦学习,重点是该技术典型的大规模部署中常见的实际问题;Bonawitz 等人的文章[81]提供了特定生产系统的更多细节,包括对具体架构选择和注意事项的讨论。
1.1 跨设备联邦学习设置
本节从应用的角度出发,与上一节不同,并不试图给出定义。相反,我们的目标是描述跨设备 FL 中的一些实际问题,以及它们如何融入更广泛的机器学习开发和部署生态系统。我们希望为后续的开放性问题提供有用的背景和动机,并帮助研究人员估算在现实世界的系统中部署特定新方法的简单程度。在考虑 FL 训练过程之前,我们首先勾勒出模型的生命周期。
中心服务器最终得到模型,并部署到更多未参与训练的客户端上。
1.1.1 联邦学习模型的生命周期
- 问题识别:工程师识别出一个需要用FL来解决的问题。
- 客户端检测:如果需要,使用客户端(例如运行在手机上的应用程序)在本地存储必要的(时间和数量限制)训练数据。在很多情况下,该应用程序已经存储了这些数据(例如,短信应用程序必须存储短信,而照片管理应用程序已经存储了照片)。然而,在某些情况下可能需要维护额外的数据或元数据,例如用户交互数据,用来为监督学习任务提供标签。
- 仿真原型(可选):模型工程师可以使用代理数据集在FL模拟模型架构和测试学习超参数。
- 联邦模型训练:启动多个联邦训练任务来训练模型的不同变化,或使用不同的优化超参数。
- (联邦)模型评估:经过充分的联邦训练之后(通常是几天),得到了比较好的模型。对模型的分析可能包括在数据中心的标准数据集中计算指标度量值,或者是联邦评估,其中模型被推送到保留的客户端(未参与训练的客户端),以便对本地客户端数据进行评估。
- 部署:最后,一旦选择了一个好的模型,它将经过一个标准的模型发布过程,包括手动质量保证、现场A/B测试(通常通过在某些设备上使用新模型,在其他设备上使用上一代模型来比较它们的体内性能),和回滚机制(以便在影响过多用户之前可以发现并回滚不良行为)。模型的特定启动过程由应用程序的所有者设置,通常与模型的训练方式无关。换句话说,这一步同样适用于使用联邦学习或传统数据中心方法训练的模型。
1.1.2 一个典型的联邦训练过程
FedAvg算法步骤:
- 客户端选择
- 被选中的客户端从服务器下载现有模型以及训练程序
- 客户端计算(在本地数据上跑SGD)
- 聚合
- 模型更新
1.2 联邦学习研究
虽然不是权威或绝对的,我们提出以下温和的建议,来展示解决我们所描述的开放问题的FL研究:
- 如 表1 所示,FL 环境可能包含各种各样的问题。与环境和目标已经明确的领域相比,精确描述特定 FL 环境的细节非常重要,尤其是当所提出的方法所做的假设可能并不适合所有环境时(例如,有状态的客户端参与所有轮次)。
- 当然,为了使研究具有可重复性,应该介绍任何模拟的细节。但同样重要的是,要解释模拟是为了捕捉现实世界环境的哪些方面(哪些不是),以便有效地说明模拟问题的成功意味着在现实世界目标方面取得了有益的进展。我们希望本文的指导意见能对此有所帮助。
- 在 FL 中,隐私和通信效率始终是首要考虑的问题,即使实验是在一台机器上使用公共数据集进行的模拟。与其他类型的 ML 相比,对于任何建议的方法来说,明确计算发生的位置和通信内容都非常重要。
1.3 本文组织结构
第 2 部分以表 1 中的观点为基础,探讨了跨设备环境之外的其他 FL 环境和问题。然后,第 3 节围绕提高联邦学习的效率和有效性这一核心问题展开讨论。第 4 节仔细研究了威胁模型,并考虑了一系列技术,以实现严格的隐私保护目标。与所有机器学习系统一样,在联邦学习应用中,可能存在操纵正在被训练的模型的动机,各种失败在所难免;第 5 节讨论了这些挑战。最后,我们将在第 6 节讨论提供公平、无偏模型的重要挑战。
2 放宽 FL 的核心假设:应用于新的环境和场景
在本节中,我们将讨论与上一节讨论的主题相关的研究领域。尽管这些领域并非本文其余部分的重点,但其研究进展可推动下一代生产系统的设计。
2.1 完全去中心化/点对点分布式学习(Fully Decentrailized/Peer-to-Peer Distributed Learning)
在联邦学习中,中央服务器负责协调训练过程,并接收所有客户端的贡献。因此,服务器是一个中心角色,也可能出现单点故障。虽然大公司或组织可以在某些应用场景中扮演这一角色,但在协作学习场景中,可靠且功能强大的中央服务器并不总是可用或可取的[459]。此外,正如 Lian 等人[305]所证明的那样,当客户端数量非常多时,中央服务器甚至可能成为瓶颈(不过,这可以通过精心的系统设计来缓解,例如[81])。
完全分散式学习的关键理念是,用单个客户端之间的对等通信取代与服务器的通信。通信拓扑结构用连通图表示,图中节点是客户端,边表示两个客户端之间的通信通道。网络图通常选择稀疏且最大度数较小的图,这样每个节点只需向/从少量对等节点发送/接收信息;这与服务器-客户端架构的星形图形成鲜明对比。在完全分散的算法中,一轮对应于每个客户端执行一次本地更新,并与图2中的邻居交换信息。在机器学习中,局部更新通常是一个局部(随机)梯度步骤,通信内容包括与邻居平均自己的局部模型参数。需要注意的是,不再存在标准联邦学习中的全局模型状态,但可以设计一个过程,使所有局部模型都收敛到所需的全局解决方案,即各个模型逐渐达成共识。虽然多代理优化在控制领域有着悠久的历史,但最近在机器学习领域也开始考虑 SGD 和其他优化算法的完全分散变体,以提高数据中心的可扩展性 [29] 以及设备的分散网络 [127、459、443、59、278、291、173]。它们考虑的是无向网络图,不过有向网络(编码单向通道,可能出现在社交网络或数据市场等现实世界场景中)的情况也在 [29, 226] 中得到了研究。
值得注意的是,即使在上述非集中化环境中,中央机构仍可能负责制定学习任务。例如,可以考虑以下问题:在分散式环境中,由谁来决定要训练的模型是什么?使用什么算法?使用什么超参数?当出现与预期不符的情况时,由谁来负责调试?要回答这些问题,仍然需要参与的客户对中央机构有一定程度的信任。另外,也可以由提出学习任务的客户机做出决定,或通过共识方案共同做出决定(见第 2.1.2 节)。
表3 对联邦学习和点对点学习进行了比较。虽然分散学习的架构假设与联邦学习的架构假设不同,但它通常可以应用于类似的问题领域,会出现许多相同的挑战,而且在研究社区中也有大量重叠。因此,我们在本文中也考虑了分散学习;在本节中,我们明确考虑了分散学习方法所特有的挑战,但其他章节中的许多未决问题也会在分散学习中出现。
联邦学习 | 点对点分散学习 | |
---|---|---|
编排者 | 中央编排服务器或服务组织的训练过程,但不能看见原始数据 | 没有中央编排 |
广域通信 | 通常采用集线器-辐条拓扑结构,集线器代表协调服务提供商(通常不含数据),辐条连接客户。 | 点对点拓扑,可能具有动态连接图。 |
2.1.1 算法挑战
挑战主要包括:
- 在异步和去中心化网络拓扑中进行SGD的影响
- 分散式SGD的本地更新在数据非独立同分布下的收敛性以及收敛速度问题
- 个性化和信任机制问题(对于恶意行为的鲁棒性)
与跨设备 FL 设置类似,在单个客户端可用的非独立同分布数据分布下,完全分散场景的一项重要任务是设计学习个性化模型集合的算法。文献[459, 59]介绍了完全分散的算法,通过平滑具有相似任务(即相似数据分布)的客户端的模型参数,为每个客户端协作学习个性化模型。Zantedeschi 等人[504] 进一步将相似性图与个性化模型一起学习。在去中心化环境下,此类方案面临的主要独特挑战之一仍然是对恶意行为者或不可靠数据或标签的稳健性。将激励措施或机制设计与分散学习相结合是一个新兴的重要目标,在没有可信中央服务器的情况下可能更难实现。 - 梯度压缩和量化方法
- 隐私问题
2.1.2 实用性挑战
区块链是不同用户之间共享的分布式账本,可以在没有中央机构的情况下进行数字交易,包括加密货币交易。特别是,智能合约允许在区块链上执行任意代码,区块链本质上是一个大规模复制的最终一致性状态机。在联邦学习方面,使用该技术可以通过使用智能合约进行模型聚合来实现全球服务器的去中心化,其中执行智能合约的参与客户可以是不同的公司或云服务。
然而,在当今的区块链平台上,例如以太坊[478],区块链上的数据默认是公开的,这可能会阻碍用户参与去中心化联邦学习协议,因为保护数据通常是FL的主要动机。为了解决这些问题,也许可以修改现有的隐私保护技术,以适应去中心化联邦学习的场景。首先,为了防止参与节点利用其他客户端单独提交的模型更新,可以使用现有的安全聚合协议。Bonawitz 等人[80]提出了一个已用于跨设备 FL 的实用安全聚合协议,该协议以协议的复杂性为代价,有效地处理了退出参与者的问题。另一种系统是让每个客户端在区块链上存入加密货币,如果在执行过程中退出,就会受到惩罚。由于不需要处理退出问题,安全聚合协议可以大大简化。实现安全聚合的另一种方法是使用保密智能合约,如在安全飞地内运行的 Oasis 协议[119]。有了它,每个客户端只需提交加密的本地模型更新,并知道该模型将通过远程认证在安全硬件内解密和聚合(参见第 4.1 节中关于深度隐私的讨论)。
为了防止任何客户端试图通过利用全局模型来重建另一个客户端的隐私数据,有人为 FL 提出了客户端级差分隐私[338]。客户端级差分隐私是通过在聚合全局模型上添加随机高斯噪声来实现的,这种噪声足以隐藏任何单个客户端的更新。在区块链背景下,每个客户端都可以在本地梯度下降步骤后添加一定量的高斯噪声,并将模型提交给区块链。计算局部噪声规模时,应使区块链上的聚合噪声能够实现与 [338] 中相同的客户端级差分隐私。最后,可以对区块链上的聚合全局模型进行加密,只有参与的客户端才持有解密密钥,从而保护模型不被公开。
2.2 跨孤岛联邦学习
与跨设备联邦学习的特点(见 表1 )相比,跨孤岛联邦学习在整体设计的某些方面具有更大的灵活性,但与此同时,实现其他特性可能会更加困难。本节将讨论其中的一些差异。
当一些公司或组织共享基于其所有数据训练模型的激励机制,但又无法直接共享数据时,就需要跨孤岛设置。这可能是由于保密限制或法律限制造成的,或者甚至是在单个公司内部,当他们无法在不同地理区域之间集中数据时造成的。这些跨孤岛应用引起了广泛关注。
2.2.1 数据划分
按照数据划分主要分为横向联邦学习、纵向联邦学习和联邦迁移学习。
2.2.2 激励机制
除了为 FL 开发新的算法技术,为诚实参与设计激励机制也是一个重要的实际研究问题。这种需求可能出现在跨设备环境中(例如 [261, 260]),但在跨孤岛环境中尤为重要,因为参与者可能同时也是商业竞争敌手。激励的形式可以是金钱报酬[499],也可以是具有不同性能水平的最终模型[324]。在 FL 参与者之间存在竞争的协作学习环境中,选择提供与每个客户贡献相称的性能模型尤为重要。客户可能会担心,为训练联邦学习模型贡献自己的数据会使其竞争敌手受益,因为他们的贡献没有那么多,但却能获得相同的最终模型(即搭便车问题)。相关的目标包括:如何在贡献数据的所有者之间分配联邦学习模型产生的收益,以维持长期的参与;如何将激励措施与抵御敌对数据所有者的决策联系起来,以提高系统的安全性;优化数据所有者的参与,以提高系统的效率。
2.2.3 差分隐私
第 4.1 节中关于行动者和威胁模式的讨论在很大程度上也与跨孤岛 FL 有关。然而,针对不同行为者的防护可能有不同的优先级。例如,在许多实际场景中,最终的训练模型将只向参与训练的人员发布,这就使得对 "世界其他地方 "的担忧变得不那么重要。
另一方面,为了提出具有实际说服力的主张,我们通常需要一个本地差分隐私的概念,因为来自其他客户端的潜在威胁可能更为重要。在客户端不被视为重大威胁的情况下,每个客户端都可以控制来自各自用户的数据,因此可能需要在这种用户级别的基础上提供正式的隐私保证。根据应用情况,其他目标也值得追求。这一领域尚未得到系统的探索。
2.2.4 Tensor分解
作者提到了对跨孤岛联邦Tensor分解的研究——其中每个站点采用纵向联邦学习的纵向数据分割,通过与协调服务器共享中间因子来联邦执行Tensor分解。
2.3 拆分学习
与前述侧重于数据划分和通信模式的设置不同,拆分学习[215, 460]3背后的关键理念是在客户端和服务器之间按层分层执行模型。这既可用于训练,也可用于推理。
3 提升效率和效益
在本节中,我们将探讨各种技术和开放性问题,以应对提高联邦学习效率和效益的挑战。可能的方法包括:开发更好的优化算法;为不同客户端提供不同的模型;使超参数搜索、架构搜索和调试等 ML 任务在 FL 上下文中更加容易;提高通信效率等等。实现这些目标的基本挑战之一是非独立同分布数据的存在,因此我们首先对这一问题进行了调查,并强调了潜在的缓解措施。
3.1 联邦学习中的非独立同分布数据
虽然独立同分布的含义一般都很明确,但数据可以以多种方式成为非独立同分布数据。在本节中,我们将对任何按照客户端划分的数据集可能出现的非独立同分布数据机制进行分类。最常见的独立性和不一致性来源是由于每个客户端对应于特定用户、特定地理位置和/或特定时间窗口。这种分类法与数据集偏移的概念有着密切的对应关系[353, 380],后者研究的是训练分布和测试分布之间的差异;在这里,我们考虑的是每个客户端上数据分布的差异。
补充知识
数据集偏移相关内容:
训练集和测试集分布的不一致被称作数据集偏移,包含三种类型:协变量偏移、先验概率偏移、概念偏移。在联邦学习中是指客户端数据集之间的非独立同分布问题。
协变量偏移是指独立变量的偏移,指训练集和测试集的输入服从不同分布,但服从同一个函数关系。
协变量是什么:
通俗的解释就是:训练集训练出一个模型,在测试集使用模型时效果不够好,因为测试集的协变量(x)分布与训练集不同,下图可以很直观的说明这一现象:
对于以下内容,请考虑具有特征\(x\)和标签\(y\)的有监督任务。联邦学习的统计模型涉及两个级别的采样:
- 访问数据点需要首先对客户端\(i\sim Q\)进行采样,即可用客户端的分布;
- 从该客户端的本地数据分布中抽取一个示例\((x,y)\sim P_i(x,y)\)
当引用联邦学习中的非独立同分布数据时,这通常是指不同客户端 \(i\) 和 \(j\) 的 \(P_i\) 和 \(P_j\) 之间的差异。然而,同样重要的是要注意,分布 \(Q\) 和 \(P_i\) 可能会随着时间的推移而变化,从而引入另一个维度“非独立同分布性”的概念。
为完整起见,我们注意到,即使考虑到单个设备上的数据集,如果数据的顺序不够随机,例如按时间排序,那么在局部也会违反独立性。例如,视频中的连续帧是高度相关的。客户端内部相关性的来源一般可以通过局部洗牌来解决。
不相同的客户端分布
我们首先调查了一些数据倾向于偏离相同分布的常见方式,即不同客户端\(i\)和\(j\)的\(P_i = P_j\)。将\(P_i(x,y)\)重写为\(P_i(y|x)P_i(x)\)和\(P_i(x|y)P_i(y)\)可以更精确地描述差异。
注:\(P_i(y|x)\)是\(x\)发生的条件下,\(y\)发生的概率。
- 特征分布偏移(协变量偏移):即使\(P(y|x)\)是共享的,边际分布\(P_i(x)\)也可能因客户端而异。例如,在手写识别域中,编写相同单词的用户可能仍然具有不同的笔画宽度、倾斜度等。
- 标签分布偏斜(先验概率偏移):即使\(P(x|y)\)相同,不同客户的边际分布\(P_i(y)\)也可能不同。例如,当客户与特定地理区域绑定时,不同客户的标签分布就会不同——袋鼠只在澳大利亚或动物园出现;一个人的脸只在全球少数几个地方出现;对于移动设备键盘,某些表情符号会被某个人群使用,而其他人群则不会。
- 标签相同,特征不同(概念漂移):即使\(P(y)\)相同,不同客户的条件分布\(P_i(x|y)\)也可能不同。例如,由于文化差异、天气影响、生活水平等原因,同一标签\(y\)在不同客户那里可能具有完全不同的特征\(x\)。例如,世界各地的住宅图像可能大相径庭,服装也千差万别。即使在美国,冬天停放的汽车也只有在某些地区才会被白雪覆盖。同样的标签在不同的时间、不同的时间尺度也会有很大的不同:白天与夜晚、季节效应、自然灾害、时尚和设计趋势等。
- 相同特征,不同标签(概念转移):即使\(P(x)\)相同,不同客户的条件分布\(P_i(y|x)\)也可能不同。由于个人偏好的不同,训练数据项中的相同特征向量可能会有不同的标签。例如,反映情感或下一个词预测的标签就存在个人和地区差异。
- 数据量偏差或不平衡:不同客户持有的数据量可能大相径庭。
现实世界中的联邦学习数据集很可能包含这些效应的混合体,而如何描述现实世界中分区数据集中的跨客户端差异是一个重要的开放性问题。大多数关于合成非 IID 数据集(例如 [337, 236])的经验工作都集中在标签分布偏斜上,其中非 IID 数据集是通过基于标签对“平滑的”现有数据集进行划分而形成的。
此外,不同的非 IID 体系可能需要制定不同的缓解策略。例如,在特征分布偏斜的情况下,由于假设\(P(y|x)\)是共同的,问题至少在原则上是明确的,因此训练一个学习\(P(y|x)\)的单一全局模型可能是合适的。当相同的特征在不同的客户身上映射出不同的标签时,某种形式的个性化(第3.3节)对于学习真正的标签函数可能是至关重要的。
独立性破坏
在训练过程中,\(Q\)分布随时都会发生变化;一个突出的例子是跨设备FL,设备通常需要满足资格要求才能参与培训(见第 1.1.2 节)。设备通常在当地时间晚上(此时设备更有可能在充电、使用免费Wi-Fi和闲置时)达到这些要求,因此设备可用性可能存在显著的昼夜模式。此外,由于当地时间与经度直接对应,这就在数据来源上引入了强烈的地理偏差。Eichner 等人[171] 描述了这一问题和一些缓解策略,但仍有许多问题有待解决。
数据集偏移
分布\(Q\)和\(P\)的时间依赖性可能会带来传统意义上的数据集偏移(训练集分布和测试集分布之间的差异)。此外,其他标准可能会使有资格训练联邦模型的客户集与部署该模型的客户集不同。例如,训练所需的设备内存可能大于推理所需的内存。第 6 节将深入探讨这些问题。将处理数据集转移的技术应用于联邦学习是另一个有趣的开放性问题。
3.1.1 处理非独立同分布数据的策略
联邦学习的最初目标是在客户数据集的联合体上训练一个单一的全局模型,但对于非 IID 数据来说,这一目标变得更加困难。一种自然的方法是修改现有算法(例如通过选择不同的超参数)或开发新算法,以便更有效地实现这一目标。第 3.2.2 节将讨论这种方法。
一种方法是对数据进行扩充,使客户端之间的数据更加相似。另一种方法是创建一个可全局共享的小型数据集。这个数据集可能来自公开的代理数据源,也可能来自客户数据中不涉及隐私的独立数据集,还可能是根据 Wang 等人的研究[473]对原始数据进行的提炼。
客户目标函数的异质性使如何设计目标函数的问题变得更加重要——平等对待所有实例的意义已不再明显。替代方案包括限制来自任何一个用户的数据贡献(这对隐私也很重要,见第 4 节),以及在客户端之间引入其他公平概念;见第 6 节的讨论。
然而,一旦有能力在每个设备本地运行训练,那么可以利用非独立同分布性质为本地客户端训练只适合于自己的模型。例如,如果对每个\(i\)而言,\(P_i(y)\)只支持一个标签,那么找到一个高精度的全局模型可能非常具有挑战性(尤其是当\(x\)的信息量相对较小的时候),但训练一个高精度的局部模型却微不足道(只需要一个不断的预测)。第 3.3 节将深入讨论这种多模型方法。除了解决客户分布不一致的问题,使用多个模型还可以解决因客户可用性变化而产生的违反独立性的问题。例如,Eichner 等人[171] 的方法使用单次训练运行,但平均不同的迭代,以便根据客户的时区/经度提供不同的推理模型。
3.2 联邦学习的优化算法
在典型的联邦学习任务中,目标是学习一个单一的全局模型,使整个训练数据集(即所有客户端数据的集合)上的经验风险函数最小化。联邦优化算法与标准分布式训练方法的主要区别在于需要处理 表1 中的特征——对于优化而言,非 IID 和不平衡数据、有限的通信带宽以及不可靠和有限的设备可用性尤为突出。
在 FL 环境中,设备总数非常庞大(如移动设备),因此需要采用每轮只需少数客户端参与的算法(客户端采样)。此外,每台设备在给定模型的训练中可能只参与一次,因此必须采用无状态算法。这就排除了在数据中心环境中相当有效的一些方法的直接应用,例如有状态优化算法(如 ADMM)和有状态压缩策略(根据前几轮的剩余压缩误差修改更新)。
联邦学习算法的另一个重要实际考虑因素是与其他技术的可组合性。在生产部署中,优化算法并不是孤立运行的,而是需要与其他技术相结合,如加密安全聚合协议(第 4.2.1 节)、差分隐私(DP)(第 4.2.2 节)以及模型和更新压缩(第 3.5 节)。如第 1.1.2 节所述,这些技术中有许多都可以应用于 "对选定客户端求和 "和 "向选定客户端广播 "等基元,因此用这些基元来表达优化算法可以很好地分离关注点,但也可能排除某些技术,如异步应用更新。
最常见的联邦学习优化方法之一是联邦平均算法,它是对局部更新或并行 SGD 的一种调整。
3.2.1 独立同分布数据集的优化算法和收敛效率
最基本的划分方法是假设使用 IID 数据和非 IID 数据。从形式上看,在客户端使用 IID 数据意味着客户端本地更新所使用的每个小批量数据在统计上与从整个训练数据集(客户端所有本地数据集的集合)中统一抽取的样本(带替换)完全相同。由于客户机独立收集自己的训练数据,这些数据在大小和分布上都各不相同,而且这些数据不与其他客户机或中心节点共享,因此 IID 假设在实际应用中显然几乎从不成立。不过,这一假设大大简化了联邦优化算法的理论收敛分析,并建立了一个基线,可用于了解非 IID 数据对优化率的影响。因此,第一步自然是了解 IID 数据情况下的优化算法。
对于IID问题可以将随机优化问题标准化:
凸问题的基准和最新技术
在本节中,我们将回顾在随机梯度方差以\(\sigma^2\)为界的假设下,H 平滑、凸(但不一定是强凸)函数的收敛结果。更正式地说,我们所说的 H 平滑是指对于所有 \(z\),\(f(\cdot;z)\) 都是可微且具有 H-Lipschitz 梯度,即对于所有\(x\)、\(y\) 的选择,\(f(\cdot;z)\) 都是可微且具有 H-Lipschitz 梯度:
假设对所有\(x\),随机梯度\(\nabla_xf(x;z)\)满足:
在分析迭代 T 次后输出为 \(x_T\) 的算法的收敛速率时,我们会考虑以下项:
其中\(\begin{aligned}x^*=\arg\min_xF(x)\end{aligned}\),本文讨论的所有收敛率都是该项的上限。表 5 列出了此类函数的收敛结果摘要。
联邦平均(又称并行SGD/本地SGD)与两种基线竞争:首先,我们可以在每轮本地更新中保持\(x\)不变,并计算当前\(x\)的\(KM\)个梯度总和,以运行加速的小批量SGD。让\(\overline{x}\)表示该算法\(T\)次迭代的平均值。这样我们就有了凸目标的上界:
其中在训练过程中,第一期望值也是相对于\(z\)的随机性而言的第一期望值。
对于不同的\(f\)有不同的收敛保证,作者讨论了如下凸设置:
3.2.2 非独立同分布数据集的优化算法和收敛效率
在这种设置下,\(N\)个中的每个客户端都有个本地数据分布\(\mathcal{P}_i\)和本地目标函数:
其中,\(f(x;z)\)是模型\(x\)在实例\(z\)上的损失。
令\(F^*\)代表\(F\)的最小值,得到点\(x^*\),令\(f_i^*\)代表\(f_i\)的最小值。
与 IID 设置一样,我们假设一个间歇通信模型(如 Woodworth 等人 [480, Sec. 4.4]),其中\(M\)个无状态客户端参与每\(T\)轮,在每轮中,每个客户端可以计算\(K\)个样本(如小批次)的梯度。不同之处在于客户端采样的样本\(z_{i,1},z_{i,2},\cdots,z_{i,K}\),客户端\(i\)的采样来自客户端的本地分布\(P_i\)。与 IID 设置不同,我们不一定要假设\(M = N\),因为客户端分布并不都相同。在下文中,如果算法依赖于\(M = N\),我们将省略\(M\),直接写成\(N\)。我们注意到,虽然这种假设可能与 表1 中的跨孤岛联邦设置兼容,但在跨设备设置中通常是不可行的。
总结如下:
3.3 多任务学习,个性化和元学习
3.3.1 通过特征化实现个性化
本节的其余部分特别考虑了使不同用户使用不同模型参数(权重)进行推理的技术。不过,在某些应用中,只需在模型中添加用户和上下文特征,也能获得类似的好处。例如,考虑 Hard 等人[222]中的移动键盘下一个单词预测语言模型。不同的用户可能会以不同的方式使用语言,目前在设备上对模型参数进行个性化设置已经大大改善了这一问题[472]。不过,一种可取的方法可能是训练一个联合模型,该模型的输入不仅包括用户迄今为止输入的单词,还包括其他各种用户和上下文特征——该用户经常使用哪些单词?他们目前正在使用什么应用?如果他们在聊天,他们以前给这个人发送过什么信息?通过适当的特征化处理,这些输入可以让共享的全局模型产生高度个性化的预测。然而,主要由于很少有公共数据集包含此类辅助特征,因此开发能有效整合不同任务上下文信息的模型架构仍然是一个重要的开放性问题,有可能大大提高 FL 训练模型的实用性。
3.3.2 多任务学习
如果将每个客户端的本地问题(本地数据集上的学习问题)视为一个单独的任务(而不是数据集的一个单一分区),那么多任务学习[506]中的技术就会立即变得相关。值得注意的是,Smith 等人[424]为多任务联邦学习引入了 MOCHA 算法,直接解决了通信效率、散兵游勇和容错等难题。在多任务学习中,训练过程的结果是每个任务一个模型。因此,大多数多任务学习算法都假定所有客户端(任务)都参与了每一轮训练,而且由于每个客户端都在训练一个单独的模型,因此还需要有状态的客户端。这使得此类技术适用于跨孤岛 FL 应用,但难以应用于跨设备场景。
另一种方法是重新考虑客户(本地数据集)和学习任务(需要训练的模型)之间的关系,观察到在单一全局模型和针对每个客户的不同模型之间存在着频谱点。例如,我们可以应用多任务学习技术(以及其他方法,如接下来讨论的个性化),将 "任务 "视为客户端的一个子集,该子集可能是明确选择的(例如,基于地理区域、设备或用户的特征),也可能是基于聚类[331]或客户端学习图的连接组件[504]。此类算法的开发是一个重要的未决问题。请参见第 4.4.4 节,讨论这类多任务问题中自然出现的问题,例如如何在不透露每个客户端属于哪个客户端子集(任务)的情况下解决稀疏联邦学习问题。
3.3.3 局部微调和元学习
所谓本地微调,我们指的是这样一种技术:首先对单一模型进行联邦训练,然后将该模型部署到所有客户端,并在推理使用之前对本地数据集进行额外训练,使其个性化。这种方法很自然地融入了联邦学习中模型的典型生命周期(第 1.1.1 节)。全局模型的训练仍然可以在每一轮中只使用少量客户端样本(例如 100 个);向所有客户端(例如数百万个)广播全局模型只发生一次,即在部署模型时。唯一不同的是,在模型用于对客户端进行实时预测之前,会进行最后的训练过程,根据本地数据集对模型进行个性化处理。
针对联邦学习中训练初的性能相当好的全局模型,个性化的最佳方法是什么?研究人员经常使用微调、迁移学习、领域适应[329, 132, 61, 332, 133],或使用个人局部模型进行插值。这种插值所使用的精确技术是关键,在联邦学习中确定其相应的学习保证也很重要。此外,这些技术通常只假定一对域(源域和目标域),因此可能会失去联邦学习的一些更丰富的结构。
研究个性化和非 IID 数据的一种方法是元学习。最近,一类被称为 "模型无关元学习(MAML)"的算法被开发出来,这种算法可以元学习一个全局模型,并以此为起点,只需几个局部梯度步骤,就能学习到适合给定任务的良好模型[187]。最值得注意的是,流行的 Reptile 算法[358]的训练阶段与 Federated Averaging 算法[337]密切相关——Reptile 允许服务器学习率,并假定所有客户端拥有相同数量的数据,但在其他方面是相同的。Khodak 等人[270] 和 Jiang 等人[250] 探讨了 FL 与 MAML 之间的联系,并展示了 MAML 设置如何成为 FL 个性化目标建模的相关框架。Chai Sim 等人[102] 将局部微调应用于联邦学习中的个性化语音识别模型。Fallah 等人[181]通过将 MAML 而不是 Reptile 连接到联邦学习,开发了一种名为个性化 FedAvg 的新算法。文献[299]还研究了具有不同隐私的其他连接。
将 FL 和 MAML 的理念结合起来的大方向相对较新,还有许多问题有待解决:
- 针对有监督任务的 MAML 算法评估主要集中在合成图像分类问题上 [290, 386],在这些问题中,可以通过对图像类别进行子采样来构建无限的人工任务。FL 问题以用于模拟 FL 实验的现有数据集为模型(附录 A),可作为 MAML 算法的现实基准问题。
- 除了实证研究或优化结果外,分析 MAML 类技术的理论保证并研究它们在哪些假设条件下可以取得成功也是有益的,因为这将进一步阐明它们可能适用的 FL 领域的集合。
- 观察到的全局精确度与个性化精确度之间的差距[250]为个性化应该成为 FL 的核心要素提供了一个很好的论据。然而,现有著作都没有明确制定衡量个性化性能的综合指标;例如,对每个客户的微小改进是否优于对客户子集的较大改进?相关讨论见第 6 节。
- Jiang 等人[250]强调了这样一个事实,即结构和性能相同的模型,如果训练方式不同,其个性化能力也会大相径庭。特别是,以最大化全局性能为目标训练模型,似乎实际上会损害模型随后的个性化能力。了解造成这种情况的根本原因是 FL 和更广泛的 ML 界都需要解决的问题。
- 在这种多任务/LTL 框架下,包括个性化和隐私在内的几个具有挑战性的 FL 课题已开始得到研究 [270, 250, 299]。是否有可能以这种方式分析概念漂移等其他问题,例如作为终身学习中的一个问题[420]?
- ProtoNets [425] 等非参数转移 LTL 算法能否用于 FL?
3.3.4 什么时候全局联邦学习训练的模型更好?
什么情况下联邦学习能到,而一台设备上的本地训练却做不到?当本地数据集较小且数据为 IID 时,FL 显然具有优势,事实上,联邦学习的实际应用[491, 222, 112]也受益于跨设备训练单一模型。另一方面,如果数据的分布是病态的非 IID 分布(例如,\(P_i(y|x)\)在客户端之间直接不一致),本地模型的效果会好得多。因此,一个自然的理论问题就是确定在什么条件下共享的全局模型比独立的每台设备模型更好。假设我们为每个客户机\(k\)训练一个模型\(h_k\),使用该客户机提供的大小为\(m_k\)的样本。我们能否保证通过联邦学习获得的模型\(h_{FL}\)在用于客户端\(k\)时至少与\(h_k\)一样准确?我们能否量化联邦学习能带来多大的改进?我们能否开发出具有理论保证的个性化策略,至少与两个自然基线(\(h_k\)和\(h_{FL}\))的性能相匹配?
其中一些问题与之前关于多源适应和不可知论联邦学习的工作有关[329, 330, 234, 352]。这些问题的难易程度取决于数据在各方之间的分布情况。例如,如果数据是纵向分割的,每一方都维护着关于共同实体的不同特征集的私有记录,那么这些问题可能需要在联邦学习任务中解决记录链接问题[124]。除了私下进行记录链接的最终技术问题之外[407],这项任务本身在现实世界中也很容易产生噪音[406],而且只有很少的结果涉及到它对训练模型的影响[224]。鲁棒性和隐私技术可以使本地模型相对更强,特别是对于非典型客户[502]。损失因式分解技巧可用于监督学习,以减轻垂直分区假设本身的影响,但实际效益取决于数据的分布和各方的数量[373]。
3.4 为联邦学习调整 ML 工作流程
略
3.5 通信和压缩
压缩目标:
- 梯度压缩——减少客户端与服务器之间通信对象的大小,用于更新全局模型。
- 模型广播压缩——减少从服务器向客户端广播的模型大小,客户端由此开始本地训练。
- 减少局部计算量——对整体训练算法进行任何修改,使局部训练程序的计算效率更高。
与差分隐私和安全聚合的兼容性
联邦学习中使用的许多算法,如安全聚合(Secure Aggregation)[79]和增加噪声以实现差分隐私的机制[3, 338],都不是为压缩或量化通信而设计的。例如,直接应用 Bonawitz 等人[80]、Bell 等人[58]的安全聚合协议,每个标量需要额外的 O(log M)比特通信,其中 M 是被聚合的客户端数量,当 M 较大时,这可能会使积极的量化更新无效(更有效的方法见[82])。现有的噪声添加机制假定在每个客户端添加实值高斯或拉普拉斯噪声,这与用于减少通信的标准量化方法不兼容。我们注意到,最近有几项工作允许使用有偏估计,并能很好地使用拉普拉斯噪声 [435],但这些工作不会提供差分隐私,因为它们破坏了各轮之间的独立性。还有一些关于添加离散噪声的研究 [9],但还不知道这些方法是否最优。因此,联邦设计与安全聚合兼容的压缩方法,或可获得差分隐私保证的压缩方法,是一个有价值的开放性问题。
无限FL协同设计
4 保护用户数据的隐私
联邦学习提供了一种极具吸引力的结构,可将整个机器学习工作流程分解为我们所希望的易于操作的模块化单元。联邦学习模式的主要吸引力之一在于,它可以通过数据最小化为参与用户提供一定程度的隐私保护:原始用户数据永远不会离开设备,只有对模型的更新(如梯度更新)才会发送到中央服务器。与原始数据相比,这些模型更新更侧重于手头的学习任务(也就是说,与原始数据相比,它们几乎不包含额外的用户信息,与原始数据相比通常要少得多),并且单个更新只需要由服务器短暂保存。
虽然与集中管理所有训练数据相比,这些功能可以显著改善实际隐私,但在这种基线联邦学习模型中,仍然没有正式的隐私保证。例如,有可能出现原始数据信息从客户端泄露给服务器的情况,比如,如果知道了用户之前的模型和梯度更新,就可以推断出该用户所持有的训练示例。因此,本节对现有成果进行了调查,并概述了设计能提供严格隐私保证的联邦学习系统所面临的挑战。我们将重点放在联邦学习和分析环境中的特定问题上,而忽略了 [344] 中调查的在更一般的机器学习环境中也会出现的问题。
除了针对用户隐私的攻击之外,联邦学习还受到其他类型的攻击;例如,敌手可能会试图阻止模型的学习,或者试图使模型产生偏差,从而产生对敌手更有利的推论。我们将在第 5 节讨论这些类型的攻击。
本节的其余部分安排如下。第 4.1 节讨论了我们希望提供保护的各种威胁模型。第 4.2 节列出了一套核心工具和技术,可用于针对第 4.1 节讨论的威胁模型提供严格的保护。第 4.3 节假定存在受信任的服务器,并讨论了针对敌对客户端和/或分析师提供保护所面临的问题和挑战。第 4.4 节讨论在没有完全可信服务器的情况下存在的问题和挑战。最后,第 4.5 节讨论了与用户感知有关的未决问题。
4.1 行为者、威胁模式和深度隐私
因此,我们主张在构建联邦系统时,当一种或另一种技术无法提供其预期的隐私贡献时,隐私属性应尽可能优雅地退化。例如,在 TEE 内运行 MPC 协议的服务器组件,即使在 TEE 安全性或 MPC 安全性假设中的任何一个(而不是两个)在实践中都不成立的情况下,也能保持隐私性。再举个例子,要求客户端向服务器端 TEE 发送原始训练示例比让客户端向服务器端 TEE 发送梯度更新更不可取,因为如果 TEE 的安全性失效,后者的隐私期望会更容易降低。我们将这种优雅降级的原则称为 "深度隐私"(Privacy in Depth),以类比于已经确立的网络安全原则 "深度防御"(defense in depth)[361]。
数据/接入点 | 行为者 | 威胁模型 |
---|---|---|
客户端 | 通过设计或者入侵设备而拥有客户端设备的 root 访问权限的人 | 恶意客户端可以检查其参与的轮次中从服务器接收到的所有信息(包括模型迭代),并可以篡改训练过程。诚实但好奇的客户端可以检查从服务器收到的所有信息,但不能篡改训练过程。在某些情况下,安全飞地/TEE 等技术可以限制此类攻击者的影响力和可见性,从而有效削弱威胁模型。 |
服务器 | 通过设计或者入侵设备而拥有服务器的 root 访问权限的人 | 恶意服务器可以检查所有轮次中发送到服务器的所有信息(包括梯度更新),并可以篡改训练过程。诚实但好奇的服务器可以检查发送到服务器的所有信息,但无法篡改训练过程。在某些情况下,安全飞地/TEE 等技术可以限制此类攻击者的影响和可见性,从而有效削弱威胁模型。 |
输出模型 | 工程师和分析师 | 恶意分析师或模型工程师可能会访问系统的多个输出,例如,使用不同超参数的多次训练运行的模型迭代序列。究竟向该行为者发布哪些信息是一个重要的系统设计问题。 |
部署的模型 | 世界上所有人 | 在跨设备 FL 中,最终模型可能会部署到数以亿计的设备上。部分被入侵的设备可以黑盒访问学习到的模型,而完全被入侵的设备可以白盒访问学习到的模型。 |
4.2 工具和技术
一般来说,FL 计算的目标是让请求计算的分析师或工程师获得结果,可以认为是对分布式客户数据集(通常是 ML 模型训练算法,也可能是基本统计等更简单的算法)上的函数 \(f\) 进行评估。需要解决三个隐私方面的问题。
- 首先,我们需要考虑 \(f\) 是如何计算的,以及在计算过程中中间结果的信息流是怎样的,这主要会影响对恶意客户端、服务器和管理员行为者的易感性。除了设计系统中的信息流(如早期数据最小化)外,安全计算技术(包括安全多方计算(MPC)和可信执行环境(TEE))对于解决这些问题也特别重要。第 4.2.1 节将详细讨论这些技术。
- 其次,我们必须考虑计算的内容。换句话说,\(f\) 计算结果本身会向分析师和全局参与者透露多少关于参与客户的信息。在这里,保护隐私的披露技术,尤其是差分隐私(DP),与我们息息相关,我们将在第 4.2.2 节中详细讨论。
- 最后,还有一个可验证性问题,即客户端或服务器能否向系统中的其他人证明他们忠实地执行了所需的行为,而不泄露他们所使用的潜在隐私数据。第 4.2.3 节将讨论可验证性技术,包括远程证明和零知识证明。
技术 | 特点 |
---|---|
差分隐私(本地、集中、随机、聚合和混合模型) | 对包括用户在内的数据集进行分析后,从输出结果中可获知多少有关个人的信息的量化。具有差分隐私的算法必然包含一定量的随机性或噪音,可以对其进行调整,以掩盖用户对输出结果的影响。 |
安全多方计算 | 两个或更多参与者合作,通过密码学模拟一个完全可信的第三方,该第三方可以:1.计算所有参与者提供的输入函数;2.向选定的参与者子集公布计算值,任何一方都不会进一步了解任何信息。 |
同态加密 | 通过允许在不解密密文的情况下对密文进行数学运算,使一方能够计算其无法访问明文的数据函数。通过这种方式("全同态加密")可以计算出任意复杂的数据函数,但计算成本较高。 |
可信执行环境(安全飞地) | TEE 提供了在远程计算机上可信运行代码的能力,即使您不信任计算机的所有者/管理员。这是通过限制任何一方(包括管理员)的能力来实现的。具体而言,TEE 可提供以下特性 [437]:1.保密性:代码的执行状态是保密的,除非代码明确发布信息;2.完整性:代码的执行不会受到影响,除非代码明确接收到输入;3.测量/证明:TEE 可以向远程方证明正在执行的代码(二进制文件)及其起始状态,从而定义保密性和完整性的初始条件。 |
4.2.1 安全计算
安全计算的目标是对分布式输入的函数进行评估,评估方法只向指定方披露计算结果,而不披露任何其他信息(如指定方的输入或任何中间结果)。
安全多方计算
安全多方计算(MPC)是密码学的一个子领域,涉及的问题是让一组当事人以只向每一方透露预期输出的方式计算其私人输入的约定函数。Yao [493] 在 20 世纪 80 年代开创了这一领域。得益于理论和工程上的突破,该领域已从纯粹的理论研究转变为工业领域的应用技术[78, 77, 295, 27, 191, 242, 243]。需要指出的是,MPC 定义了一系列技术,与其说它本身是一种技术,不如说它是一个领域,或者说是安全计算中的一般安全概念。MPC 最近取得的一些进展可归功于低级基元的突破,例如不经意传输协议 [244] 和具有同态特性的加密方案(如下所述)。
密码解决方案的一个共同点是,操作通常是在有限域(例如整数模数素数 \(p\))上进行的,这给表示实数带来了困难。一种常见的方法是调整 ML 模型及其训练程序,通过对归一化数量进行运算并依靠仔细的量化来确保控制(过)溢出 [194, 10, 206, 84]。
众所周知,任何函数都可以安全地计算,即使存在恶意敌手也不例外 [208]。虽然存在通用解决方案,但它们的性能特点往往使其无法应用于实际环境。因此,一个明显的研究趋势是为线性和逻辑回归 [359, 194, 351] 以及神经网络训练和推理 [351, 10, 48] 等应用设计定制协议。这些工作通常是在跨设备环境下进行的,或者是将计算委托给一小群互不串通的计算服务器的变体。将这些协议移植到跨设备环境并不简单,因为它们需要大量的通信。
同态加密 同态加密(HE)方案允许直接对密文进行某些数学运算,而无需事先解密。同态加密可以使参与者对数值进行函数计算,同时保持数值的隐蔽性,是实现 MPC 的强大工具。
同态加密有多种不同的形式,从一般的完全同态加密(FHE)[197] 到更有效的分级变体[87, 182, 88, 129],并有多种实现方法[233, 409, 364, 415, 1]。具有实际意义的还有所谓的部分同态方案,例如 ElGamal 和 Paillier 方案,它们允许同态加法或乘法。加法 HE 已被用作跨孤岛环境中 MPC 协议的一个组成部分 [359, 224]。文献 [404] 综述了一些同态加密软件库,并简要说明了选择软件库时应考虑的标准/特征。
当考虑在 FL 设置中使用 HE 时,马上就会出现谁持有该方案秘钥的问题。虽然每个客户端都对自己的数据进行加密并发送给服务器进行同态计算的想法很吸引人,但服务器不应该能够解密单个客户端的贡献。克服这个问题的一个简单方法是依靠一个非共谋的外部方来持有秘钥并解密计算结果。然而,大多数 HE 方案都要求经常更新秘钥(例如,由于容易受到选择密文攻击 [117])。此外,在 FL 设置中,可信任的非共谋方的可用性也不是标准配置。
解决这一问题的另一种方法是依赖分布式(或阈值)加密方案,即在各方之间分配秘钥。Reyzin 等人 [392] 和 Roth 等人 [398] 提出了在跨设备环境下计算求和的解决方案。他们的协议使用了加法同态方案(分别是 ElGamal 方案和基于网格方案的变体)。
可信执行环境
可信执行环境(TEE,也称为安全飞地)可以提供机会,将联邦学习过程的一部分转移到云中的可信环境中,其代码可以得到证明和验证。
TEE 可以提供几种重要的设施,用来建立代码单元已被忠实、私密执行的信任 [437]:
- 保密性:代码的执行状态是保密的,除非代码明确发布信息。
- 完整性:代码的执行不会受到影响,除非代码明确接收到输入。
- 测量/证明:TEE 可以向远程方证明正在执行的代码(二进制文件)及其起始状态,从而定义保密性和完整性的初始条件。
目前的安全飞地内存有限,只能访问 CPU 资源,即不允许在 GPU 或机器学习处理器上进行处理(Tram`er 和 Boneh [447] 探讨了如何将 TEE 与 GPU 结合起来进行机器学习推理)。此外,TEE(尤其是在共享微处理器上运行的 TEE)要完全排除所有类型的侧信道攻击也很有难度[458]。
虽然安全飞地为运行在飞地中的所有代码提供了保护,但在实践中还必须解决其他一些问题。例如,通常有必要将在飞地中运行的代码构造为数据遗忘程序,这样其运行时间和内存访问模式就不会泄露其计算所依据的数据信息(例如,参见 [73])。此外,测量/认证通常只能证明特定的二进制文件正在运行;而系统架构师则需要提供一种方法来证明该二进制文件具有所需的隐私属性,这可能要求二进制文件使用可重现的流程从开放源代码中构建。
如何在安全飞地、云计算资源和客户端设备之间划分联邦学习功能仍是一个未决问题。例如,安全飞地可以执行安全聚合或洗牌等关键功能,以限制服务器对原始客户端贡献的访问,同时将大部分联邦学习逻辑保留在可信计算基地之外。
感兴趣的安全计算问题
虽然安全多方计算和可信执行环境为在分布式私有数据上私密计算任何函数的问题提供了通用解决方案,但如果专注于特定功能,还可以进行许多优化。接下来描述的任务就是这种情况。
安全聚合 安全聚合是 \(n\) 个客户端和一个服务器的功能。它使每个客户端都能提交一个值(在 FL 设置中通常是一个向量或张量),这样服务器只需学习客户端值的聚合函数,通常是总和。
在单服务器环境下(通过加法掩码 [8, 213, 80, 58, 428]、通过阈值同态加密 [417, 218, 103]、通过通用安全多方计算 [94])以及在多个非共谋服务器环境下 [78, 27, 130],都有大量文献在探索安全聚合。安全聚合还可以使用可信执行环境(如上文所述),如 [308] 所述。
安全洗牌 安全洗牌是一种适用于 \(n\) 个客户端和一个服务器的功能。它使每个客户端都能提交一条或多条信息,这样服务器就能从所有客户端那里了解到信息的无序集合(多集合),仅此而已。具体来说,除了信息本身所包含的信息外,服务器无法将任何信息与其发送者联系起来。安全洗码可被视为安全聚合的一个实例,在安全聚合中,值是多集-小数,聚合操作是多集-和,但在安全洗码和安全聚合的典型运行环境中,通常会有非常不同的实现方法提供最佳性能。
在安全的多方计算[107, 288]背景下,通常在混合网络标题下对安全洗牌程序进行了研究。人们还在可信计算的背景下对它们进行了研究[73]。混合网络以 Tor 网络[157]的形式被大规模部署。
私有信息检索 私人信息检索(Private information retrieval, PIR)是一种适用于一个客户端和一个服务器的功能。它使客户端能够从服务器托管的数据库中下载条目,这样服务器就不会获得关于客户端请求的条目的任何信息。
针对 PIR 的 MPC 方法可分为两大类:计算 PIR(cPIR)和信息论 PIR(itPIR),前者是由单方执行整个服务器端协议 [286],后者则需要多个非共谋方执行服务器端协议 [121]。
PIR 应用的主要障碍如下:cPIR 的计算成本较高 [423],而非共谋方设置在工业场景中难以令人信服地实现。最近关于 PIR 的研究结果表明,通过使用基于网格的密码系统,计算成本大幅降低[12, 363, 13, 23, 198]。计算成本可以换取更多的通信量;读者可参阅 Ali 等人的论文[16],以更好地了解 cPIR 在通信量和计算量之间的权衡。此外,已有研究表明,如何利用可用的用户侧信息 [251],例如通过客户端本地状态,在单服务器上构建通信效率高的 PIR。Patel 等人[372]提出并在单服务器上实现了一种实用的混合(计算和信息理论)PIR 方案,假设客户端状态。Corrigan-Gibbs 和 Kogan [131]通过离线/在线模型,提出了具有亚线性在线时间的 PIR 理论结构,在离线阶段,客户端从服务器获取的信息与未来要执行的查询无关。
更多的研究探索了 PIR 与秘密共享之间的联系 [479],最近的研究涉及编码数据的 PIR [159] 和通信高效的 PIR [72]。PIR 的一个变种被称为 "带默认值的 PIR",它能让客户端在查询的索引不在数据库中时检索默认值,并能输出项目的加法秘密共享,作为任何 MPC 协议的输入[297]。PIR 也在 ON-OFF 隐私的背景下得到了研究,在这种情况下,允许客户端关闭其隐私保护以换取更好的效用或性能 [355,494]。
4.2.2 隐私保护披露
用于量化和限制个人信息披露的最先进模型是差分隐私(DP)[167, 164, 165],其目的是在发布的模型中引入一定程度的不确定性,足以掩盖任何单个用户的贡献。
不过,在可能的情况下,我们通常希望减少对受信任方的需求。近年来,人们考虑了几种降低对数据管理员信任度的方法,包括本地化差分隐私、分布式差分隐私以及混合差分隐私。
本地化差分隐私
略。
分布式差分隐私
为了在不依赖可信中央服务器的情况下恢复中心化差分隐私的部分效用,我们可以使用分布式差分隐私模型 [166, 417, 73, 120]。在这种模式下,客户机首先计算和编码一个最小的(特定于应用的)集中报告,然后将编码报告发送到一个安全计算函数,其输出可提供给中央服务器,目的是在服务器能够检查它时,该输出已满足差分隐私要求。编码的目的是帮助维护客户端的隐私,例如可以包括 LDP。安全计算功能可以有多种形式。它可以是 MPC 协议,也可以是在 TEE 上完成的标准计算,甚至可以是两者的结合。每种选择都有不同的假设和威胁模型。
值得注意的是,分布式差分隐私和本地化差分隐私从多个角度获得了不同的保证:虽然分布式差分隐私框架可以在与本地差分隐私相同的差分隐私水平下生成更精确的统计数据,但它依赖于不同的设置,通常会做出更强的假设,例如访问 MPC 协议。下面,我们将概述两种可能的分布式差分隐私方法,分别依赖于安全聚合和安全洗牌。我们强调,还有许多其他方法可以使用,例如,参见 [400] 基于在安全信道上交换相关高斯噪声的方法。
通过安全聚合实现分布式差分隐私 在 FL 中实现分布式数据处理的一个有前途的工具是安全聚合,上文第 4.2.1 节对此进行了讨论。安全聚合可用于确保中央服务器获得聚合结果,同时保证各个设备和参与者的中间参数不会泄露给中央服务器。为了进一步确保聚合结果不会向服务器泄露其他信息,我们可以使用本地差分隐私(例如,使用适度的 \(\epsilon\) 级别)。例如,每个设备可以在安全聚合前扰动自己的模型参数,以实现局部差分隐私。通过正确设计噪声,我们可以确保聚合结果中的噪声与可信服务器集中添加的噪声相匹配(例如,低 \(\epsilon\) /高隐私级别)[8, 385, 205, 417, 213]。
通过安全洗牌的分布式差分隐私 另一种分布式差分隐私模型是洗牌模型,由最近推出的编码-洗牌-分析(ESA)框架[73](如图 3 所示)启动。在该框架的最简单版本中,每个客户端在其数据上运行一个 LDP 协议(如中等 \(\epsilon\) 级别),并将其输出提供给一个安全的洗牌器。洗牌器随机排列报告,并将洗牌后的报告集(不含任何识别信息)发送到服务器进行最终分析。直观地说,这种安全计算功能的介入使服务器更难了解参与者的任何信息,并支持差分隐私分析(例如,低 \(\epsilon\) /高隐私级别)。在更一般的多信息洗牌框架中,每个用户都有可能向洗牌程序发送多条信息。洗牌器可以直接作为一个独立于服务器的可信实体来实现,只用于洗牌,也可以通过上文讨论的更复杂的加密原语来实现。
混合差分隐私 另一种很有前途的方法是混合差分隐私[40],它根据用户的信任模式偏好(如信任或不信任馆长)对用户进行分区,从而将多种信任模式结合起来。在混合模型之前,有两种自然选择。第一种是使用最不信任的模型,这种模型通常能提供最低的效用,并以保守的方式将其统一应用于整个用户群。第二种是使用信任度最高的模式,这种模式通常能提供最高的效用,但只适用于信任度最高的用户。与纯粹的本地或中央 DP 机制相比,通过允许多种模型共存,混合模型机制可以从给定的用户群中获得更多效用。例如,文献[40]描述了一个系统,在这个系统中,大多数用户在本地隐私模型中贡献他们的数据,而一小部分用户选择在中心 DP 模型中贡献他们的数据。这样就能设计出一种机制,在某些情况下,它的性能既优于适用于所有用户的保守的本地 DP 机制,也优于只适用于选择加入的一小部分用户的中央 DP 机制。最近的研究[57]进一步证明,多种信任模型的组合可以成为设计和实施差分隐私的一个有前途的工具包。这种构造可以直接应用于联邦学习环境;不过,结合信任模型或计算模型的一般概念也可能为联邦学习带来类似的新方法。
4.2.3 可验证性
与上述隐私技术正交的一个重要概念是可验证性。一般来说,可验证计算能让一方向另一方证明,它已忠实地对其数据执行了所需的行为,而不会损害数据的潜在机密性。可验证计算的概念可追溯到 Babai 等人[42],文献中对其进行了多种研究:检查计算[42]、认证计算[343]、委托计算[210]以及可验证计算[195]。
就 FL 而言,可验证性有两个用途:
- 可验证性使服务器能够向客户端证明,它忠实地执行了预期的行为(例如,聚合输入、洗牌输入信息或为差分隐私添加噪声)。
- 其次,它能让客户端向服务器证明,他们的输入和行为符合协议规范(例如,输入属于某个特定的协议)。
零知识证明协议(ZKPs)、可信执行环境(TEEs) 或者远程证明技术(remote attestation) 可以被用来提供可验证性。
零知识证明协议
零知识(ZK)证明是一种加密原语,它能使一方(称为证明者)向另一方(称为验证者)证明依赖于证明者已知秘密信息的声明(称为见证,witness),而不向验证者透露这些秘密。零知识概念由 Goldwasser 等人在 20 世纪 80 年代末提出 [209]。它为私有数据的可验证性问题提供了一种解决方案。虽然已有大量关于 ZK 构建的工作,但将 ZKP 和通用功能的可验证计算带入实用领域的第一项工作是 Parno 等人的工作 [369],该工作首次引入了简洁 ZK 的优化构造和实现。如今,无论被证明语句的大小如何,ZKP 协议都能实现数百字节的证明大小和毫秒级的验证。
ZKP 有三个显著特性:
- 完整性(如果声明为真,且证明者和验证者都遵守协议,验证者将接受证明);
- 健全性(如果声明为假,且验证者遵守协议,验证者将拒绝接受证明);
- 零知识性(如果声明为真,且证明者遵守协议,验证者将只知道声明为真,而不会从交互中得知任何机密信息)。
除了这些共同特性外,零知识构造在支持的证明语言、设置要求、证明者和验证者的计算效率、交互性、简洁性和基本困难性假设等方面也有不同类型。有许多零知识构造支持特定类别的语句,Schnorr 证明 [408] 和 Sigma 协议 [147] 就是这类广泛使用的协议的例子。虽然这类协议在特定环境中有许多用途,但能支持任何功能的通用 ZK 系统提供了一种更广泛适用的工具(包括在 FL 的上下文中),因此我们在接下来的讨论中将重点讨论这类构造。
不同结构之间的一个主要区别在于是否需要可信设置。有些 ZKP 依赖于共同参考字符串 (CRS),它是利用应保持隐藏的秘密计算出来的,以保证证明的合理性。这种 CRS 的计算被称为可信设置。虽然这一要求是此类系统的一个缺点,但现有的 ZKP 结构能实现最简洁的证明和验证者的效率,它们都需要可信设置。
另一个影响不同场景适用性的重要属性是,生成证明是否需要证明者和验证者之间的交互,在此我们将非交互式零知识证明(NIZK)区分开来,这种证明只需证明者向验证者发送一条信息,无需进一步通信。通常情况下,我们可以通过对散列函数的理想功能做出更强的假设(即散列函数的行为是随机预言机),将交互式证明转换为非交互式证明。
此外,我们还必须注意 ZKP 系统效率的不同衡量标准,如证明的长度以及证明者和验证者的计算复杂度。理想的验证者复杂度应与被评估功能的执行时间成线性关系,但许多现有的 ZKP 都会给验证者带来额外的(有时是很大的)开销。最有效的验证复杂度要求计算量至少与所评估功能的输入大小成线性关系,而在为 FL 服务器的工作提供证明的情况下,这种输入大小将非常可观。
简洁非交互式零知识证明(SNARKs)[71] 是一种 ZKP,它提供恒定的证明大小,验证仅线性取决于输入大小。这些诱人的效率特性确实是以更强的假设为代价的,而这在所有现有方案中大多是固有的、可信的设置。大多数现有的 SNARK 构建都利用了二次算术程序 [196, 369, 136],这些程序现在可以在 libsnark [307] 等开源库中使用,并部署在 Zcash [62] 等加密货币中。需要注意的是,SNARK 系统通常需要证明者的开销;特别是,证明者的计算量需要与被证明语句的电路大小成超线性关系。最近,Xie 等人[489] 提出了一种 ZKP 系统 Libra,它实现了线性证明者复杂度,但证明规模和验证时间都有所增加。
如果我们放宽对构造简洁性或非交互性的要求,就会有大量的构造可以实现广泛的效率权衡,避免可信设置要求,并使用更标准的密码假设 [92, 464, 20, 63]。
近年来,越来越多的实际应用开始使用非交互式零知识证明,其主要动机是区块链。在 FL 环境中有效使用交互式 ZKP 系统和 NIZK 仍是一个具有挑战性的开放问题。在这种情况下,NIZK 可以向服务器证明客户端输入的属性。在验证者是客户端的情况下,要创建一个值得信赖的声明来进行验证将是一个挑战,因为这涉及到其他客户端的输入。在这种情况下,最近的研究能够处理多个验证者共享声明的情况 [83]。
可信执行环境和远程证明
我们在第 4.2.1 节讨论了 TEE,但在此重点讨论 TEE 可提供可验证计算的机会这一事实。事实上,TEE 可以证明和验证在其环境中运行的代码(二进制文件)。特别是,当验证者知道(或可以重现)哪个二进制文件应该在安全飞地中运行时,TEE 就能提供完整性概念(代码执行不会受到输入的影响)和证明(TEE 可以证明特定二进制文件正在执行,以及起始状态是什么)[437, 451]。更一般地说,远程证明允许验证者安全地测量远程硬件平台的内部状态,并可用于建立静态或动态信任根。虽然 TEE 可以实现基于硬件的远程验证,但文献中也提出了基于软件的远程验证 [411] 和混合远程验证设计 [172, 274],这些设计可以在硬件要求与可验证性之间进行权衡。
在联邦学习环境中,TEE 和远程证明可能特别有助于客户有效验证服务器上运行的关键功能。例如,安全聚合或洗牌可以在 TEE 中运行,并为其输出提供不同的隐私保证。因此,服务器随后应用于差分隐私数据的后处理逻辑可以在服务器上运行,而对客户端保持遗忘。需要注意的是,这样的系统设计要求客户端知道并信任在飞地中应用的关键功能的确切代码(二进制)。此外,远程证明还能让服务器证明参与 FL 计算的客户端的特定要求,如无泄漏、不变性和不中断性(关于远程证明的最低要求的详尽列表,我们请参阅 [188])。
4.3 针对外部恶意行为者的保护措施
在本节中,我们假定存在一个可信服务器,并讨论了针对外部恶意行为者(如对抗性客户端、对抗性分析者、使用所学模型的对抗性设备或它们的任意组合)实现严格隐私保证所面临的各种挑战和未决问题。
如表 7 所述,恶意客户端可以检查其参与的回合中从服务器接收到的所有信息(包括模型迭代),恶意分析师可以检查来自不同超参数的多次训练运行的模型迭代序列,在跨设备 FL 中,恶意设备可以白盒或黑盒访问最终模型。因此,要针对外部敌手提供严格的保护,必须首先考虑从中间迭代和最终模型中可以学到什么。
4.3.1 审核迭代和最终模型
为了更好地了解从中间迭代或最终模型中可以学到什么,我们建议量化联邦学习模型对特定攻击的易感性。在联邦学习中,这是一个特别有趣的问题。一方面,敌手可以从服务器直接访问模型,这就扩大了攻击面。另一方面,服务器会决定敌手将在训练过程的哪些特定阶段访问模型,并在每个阶段控制敌手对模型的影响。
联邦学习框架不仅为攻击提供了独特的环境,也为攻击量化和防御提供了独特的环境。具体来说,由于服务器可以控制每个用户在训练过程中何时可以访问模型并对其施加影响,因此有可能设计出量化模型平均情况或最坏情况攻击易感性的新方法。这种方法将有助于开发新的自适应防御系统,在最大限度地发挥效用的同时,还能即时应用这些防御系统来阻止敌方的重大影响。
4.3.2 利用中心化差分隐私训练
在跨设备 FL 中,不同设备的训练示例数量可能会有很大差异。因此,与最近在中心模型中进行的用户级数据处理工作[21]类似,如何自适应地约束用户贡献和剪辑模型参数仍然是一个有趣的研究方向[446, 377]。从更广泛的意义上讲,对于各种典型学习和估算任务,记录级 DP 在准确性和隐私性之间的基本权衡已经得到了很好的理解,而用户级 DP 则与之不同(尤其是当不同用户的贡献数量变化很大且没有严格的先验约束时)。因此,还需要做更多的工作,才能更好地理解这种新出现的 DP 设置中的基本权衡。最近,[320] 在这方面取得了进展,描述了在用户级 DP 下学习离散分布的准确性和隐私性之间的权衡。
除上述情况外,重要的是要区分在训练过程中可能能够看到(部分)中间迭代的恶意客户端和只能看到最终模型的恶意分析师(或部署)。尽管中心 DP 针对这两种威胁模型都提供了保护,但仔细的理论分析可以发现,对于上述高斯机制(或任何其他差分隐私机制)的具体实现,我们可能会为这两种威胁模型获得不同的隐私参数。当然,我们对恶意分析师的差分隐私保证应该比对恶意客户的隐私保证更强(因为恶意客户端可能比恶意分析师获得更多的信息)。Feldman 等人 [185] 最近针对凸优化问题研究了这种 "通过迭代放大隐私 "的设置。不过,目前还不清楚 [185] 中的结果是否可以应用到非凸优化问题中。
非均匀设备采样程序的隐私放大
在跨设备 FL 系统中提供正式的 \((\epsilon, \delta)\) 保证尤其具有挑战性,因为:
- 所有符合条件的用户集合(即底层数据库)都是动态的,事先并不知晓;
- 参与联邦计算的用户可能会在协议的任何阶段退出。
因此,研究和设计以下协议非常重要:
- 对自然选择(用户可用性和退出)具有鲁棒性;
- 自我核算,即服务器仅使用协议中的可用信息就能计算出严密的 \((\epsilon, \delta)\) 保证;
- 依赖本地参与决策(即不假定服务器知道哪些用户在线并有能力从中采样);
- 实现良好的隐私-效用权衡。虽然最近的研究[47, 257]表明这些约束条件可以同时实现,但建立一个能在 FL 生产系统中运行的端到端协议仍是一个重要的未决问题。
4.3.3 隐藏迭代
略
4.3.4 对不断变化的数据进行重复分析
具体的开放性问题包括:
- 面对新数据,分析师应该如何私有更新 FL 模型?或者说,在数据集 \(D\) 上通过 FL 私下学习的模型,在扩展到数据集 \(D'\) 时会有多好的效果?由于 FL 已经在在线到达的样本上发生,并且不会对它所看到的数据进行过拟合,因此这样的模型很可能在新的数据库 \(D'\) 上仍然表现良好。这也与第 5 节探讨的稳健性问题有关。
- 解决隐私构成问题的一种方法是生成合成数据 [165, 5],然后可以无限期地使用这些数据,而不会造成额外的隐私损失。这源于差分隐私的后处理保证 [167]。Augenstein 等人[31] 探讨了以联合方式生成合成数据的问题。在动态数据设置中,合成数据可以反复使用,直到它相对于新数据变得 "过时",必须更新为止。即使在以联合方式生成数据后,也必须以联邦方式进行私有更新。
- 先前关于动态数据库差分隐私[142]或私下检测时间序列数据变化[143, 97]的工作中的具体方法能否扩展到联邦环境中?
- 首先,如何在联邦模型中查询时间序列数据?根据设计,不会定期多次查询同一用户的更新数据点,因此很难收集到个人数据随时间演变的真实的主体内估计值。时间序列数据统计采样的常用工具可在此发挥作用,但必须与隐私工具和联邦工具结合使用。其他方法包括重新制定查询,使每个主体内子查询完全可以在设备上回答。
4.3.5 防止模型被盗和滥用
值得注意的是,即使模型参数本身被成功隐藏,研究也表明,在许多情况下,只要敌手能够访问基于这些参数的推理/预测 API,就能重建模型参数[450]。在模型驻留在数百万或数十亿终端用户设备上的情况下,需要采取哪些额外保护措施来防止此类问题的发生,这是一个未决问题。
4.4 针对敌对服务器的保护
在上一节中,我们假设存在一个可以协调训练过程的可信服务器。在本节中,我们将讨论更理想的情况,即防范敌对服务器。具体来说,我们首先研究了这种情况下的挑战和现有的工作,然后描述了未决问题以及如何利用第 4.2 节中讨论的技术来应对这些挑战。
4.4.1 挑战:通信渠道、女巫攻击和选择
在跨设备 FL 设置中,我们有一个拥有大量计算资源的服务器和大量客户端,这些客户端(i)只能与服务器通信(如星形网络拓扑结构),(ii)可能在连接性和带宽方面受到限制。这对执行给定的信任模型提出了非常具体的要求。特别是,客户端之间没有独立于服务器建立安全通道的明确方法。正如 Reyzin 等人[392]在实际应用中指出的那样,在需要客户端之间私密通道的情况下,需要假设服务器在密钥分发阶段的行为是诚实的(或至少是半诚实的)(如[80, 58]中所做的)。这包括基于 MPC 技术的加密解决方案。这一假设的另一个替代方案是在模型中加入额外的一方或公共公告牌(见,例如,[398]),该公告牌为客户所熟知,并被认为不会与服务器串通。
跨设备 FL 的参与者除了要相信服务器会为私人通信渠道提供便利之外,还必须相信服务器会以公平、诚实的方式组建客户端群组。控制服务器的恶意敌手可以模拟大量虚假客户端设备("Sybil 攻击"[160]),或者从可用设备池中优先选择先前被攻击的设备。无论采用哪种方式,敌方在一轮 FL 中控制的参与者都会远远多于单纯从群体中敌方设备的基本比率所预期的。这就更容易打破 MPC 中的常见假设,即至少有一部分设备是诚实的,从而破坏协议的安全性。即使协议本身的安全性保持不变(例如,如果其安全性植根于不同的信任源,如安全飞地),也存在这样的风险:如果大量敌对客户端的模型更新被敌手知晓或控制,那么其余客户端更新的隐私性可能会受到破坏。需要注意的是,这些问题同样适用于 TEE。例如,基于 TEE 的洗牌程序也可能受到 Sybil 攻击;如果一个诚实用户的输入与来自假冒用户的已知输入一起洗牌,那么敌手就可以很容易地在洗牌输出中识别出诚实用户的值。
请注意,在某些情况下,有可能在一轮中的客户端之间建立证明,证明他们都在执行正确的协议,例如,如果客户端设备上有安全飞地,并且客户端能够远程相互证明。在这些情况下,即使模型更新本身被敌手知道或控制,也有可能为该轮中所有诚实的参与者建立隐私(例如,证明安全的多方计算协议得到了准确遵循,分布式差分隐私贡献被秘密、正确地添加等)。
4.4.2 现有解决方案的局限性
鉴于 FL 的目标是让服务器构建一个客户数据群体级模式的模型,一个自然的隐私目标就是量化并证明限制服务器重构单个客户输入数据的能力。这就需要正式定义:(a) FL 执行的结果向服务器披露的客户数据视图是什么;(b) 这种视图的隐私泄露情况如何。在 FL 中,我们特别感兴趣的是保证服务器能够汇总来自客户端的报告,同时以某种方式掩盖每个客户端的贡献。正如第 4.2.2 节所讨论的,这可以通过多种方式来实现,通常是使用某种差分隐私概念。此类方法种类繁多,各有各的弱点,尤其是在 FL 中。例如,正如前面所讨论的,中央 DP 的缺点是需要访问一个受信任的中央服务器。这就产生了第 4.2.2 节中讨论的其他有前途的私有信息披露方法。在此,我们将概述这些方法的一些弱点。
本地化差分隐私
如前所述,LDP 通过让每个客户端在向中央服务器发送报告之前对其进行差分隐私转换,从而消除了对可信中央服务器的需求。LDP 假设用户的隐私完全来自于用户对自己随机性的添加;因此,用户的隐私保证与所有其他用户添加的随机性无关。虽然 LDP 协议能有效地执行隐私保护并具有理论依据 [177, 154, 155],但大量研究结果表明,在保留效用的同时实现局部差分隐私保护具有挑战性,尤其是在高维数据环境中 [266, 455, 252, 54, 253, 495, 162, 128]。造成这种困难的部分原因是,引入的随机噪音的大小必须与数据中信息的大小(范数)相当,这可能需要合并客户端之间的报告。因此,要通过 LDP 获得与中心设置中相当的效用,需要相对更大的用户群或选择更大的 \(\epsilon\) 参数[445]。
混合差分隐私
混合差分隐私模型可以根据用户的信任偏好对其进行划分,从而帮助减少所需的用户群规模。然而,目前还不清楚哪些应用领域和算法能最好地利用混合信任模型数据[40]。此外,目前有关混合模型的研究通常假设,无论用户的信任偏好如何,他们的数据都来自相同的分布[40, 39, 57]。放宽这一假设对 FL 尤为重要,因为信任偏好与实际用户数据之间的关系可能并不复杂。
洗牌模型
洗牌模型使用户在本地添加的噪音能够通过洗牌中介得到放大,但它本身也有两个缺点。首先是对可信中介的要求;如果用户已经不信任策展人,那么他们就不太可能信任策展人认可或创建的中介(尽管 TEE 可能有助于弥合这一差距)。据我们所知,Prochlo 框架[73] 是目前唯一的实例。第二个缺点是,洗牌模型的差分隐私保证会随着参与计算的敌对用户数量的增加而降低[45]。由于用户和管理员都不知道这个数字,这就给用户获得的真实隐私水平带来了不确定性。这种风险在联邦学习中尤为重要,因为用户(可能具有对抗性)是计算管道的关键组成部分。安全的多方计算除了会给每个用户增加大量计算和通信开销外,当用户在本地增加自己的噪音时,也无法解决这一风险。
安全聚合
来自 [80, 58] 的安全聚合协议在聚合客户端报告时有很强的隐私保证。此外,这些协议还针对联邦学习的环境进行了定制。例如,它们对客户端在执行过程中退出(这是跨设备 FL 的常见特征)具有很强的鲁棒性,并能扩展到大量的参与方(Bell 等人的协议[58]高达数十亿)和向量长度。然而,这种方法有几个局限性:
- 它假定服务器是半诚实的(仅在私钥基础架构阶段)
- 它允许服务器查看每轮聚合(这仍可能泄露信息)
- 它对稀疏向量聚合效率不高
- 它缺乏强制执行客户端输入的良好格式的能力
如何构建一个高效、稳健的安全聚合协议来应对所有这些挑战,是一个尚未解决的问题。
4.4.3使用分布式差分隐私训练
分布式数据处理下的通信、隐私和准确性权衡
我们指出,在分布式差分隐私中,人们普遍关心三个性能指标:准确性、隐私性和通信开销,而一个重要的目标就是确定这些参数之间可能的权衡。我们注意到,在没有隐私要求的情况下,关于分布式估计(如 [440])和通信复杂性(教科书参考文献见 [285])的文献已对通信和准确性之间的权衡进行了深入研究。另一方面,在集中式设置中,所有用户的数据都被假定为由单一实体持有,因此不需要通信,从[167, 166]的基础性工作开始,中央数据处理对准确性和隐私之间的权衡进行了广泛的研究。最近,[114] 对局部 DP 分布式估算中隐私、通信复杂度和准确度之间的最佳权衡进行了描述,结果表明,在谨慎编码的情况下,隐私和通信联合约束所产生的性能可以与单独使用其中一种约束所能达到的最佳准确度相媲美。
安全洗牌的权衡 这些权衡最近已在洗牌模型中进行了研究,适用于聚合(目标是计算用户输入的总和)和频率估计(输入属于离散集合,目标是逼近持有给定元素的用户数量)这两个基本任务。有关这两个问题的最新进展情况,请参见表 9和表 10。两个值得注意的开放性问题是:
- 研究洗牌模型中的纯差分隐私;
- 确定多信息设置中变量选择的最佳隐私、准确性和通信权衡(最近在 [200] 中获得了单信息情况下的近乎严密的下限)。
就差分隐私洗牌模型下的联邦优化而言,[207] 的最新研究表明,不需要多信息洗牌就能以较低的通信成本实现中心化差分隐私精度。不过,目前还不清楚所提出的方案是否实现了(顺序)最佳通信、准确性权衡。
表9 具有\((\epsilon, \delta)\)差分隐私的多信息洗牌模型中的差分隐私聚合协议比较。各方数量为\(n\),且\(\mathcal{l}\)为整数参数。信息大小以比特为单位。为便于阅读,我们假定\(\epsilon \leq O(1)\),并压制渐近符号。
表10 在不同的 DP 模型中,对大小为 \(B\) 的域和 \(n\) 个用户进行频率估计的预期最大误差上下限。这些界限是针对固定的正隐私参数 \(\epsilon\) 和 \(\delta\) 以及\(\tilde{\Theta}/\tilde{O}/\tilde{\Omega}\)渐近符号抑制了 \(B\) 和 \(n\) 的多对数系数而给出的。在所有上限中,协议对用户是对称的,不需要公共随机性。参考文献是我们所知的第一个隐含所述边界的结果。
安全聚合的权衡 对于安全聚合,研究以下类似问题将非常有趣。考虑一轮有 \(n\) 个用户的 FL,假设用户 \(i\) 持有一个值 \(x_i\)。用户 \(i\) 对 \(x_i\) 应用算法 \(A(\cdot)\),得到 \(y_i = A(x_i)\);在这里,\(A(\cdot)\) 可被视为压缩和私有化方案。服务提供商使用安全聚合作为黑盒,观察 \(\bar{y} = P_i A(x_i)\),并使用 \(\bar{y}\) 估算 \(\bar{x}\),即 \(x_i\) 的真实总和,方法是针对某个函数 \(g(\cdot)\) 计算 \(\hat{\bar{x}}=g(\bar{y})\)。理想情况下,我们希望 \(\mathcal{A}(\cdot),g(\cdot)\) 的设计能使估计 \(\bar{x}\) 的误差最小;形式上,我们希望解决优化问题\(\min_{g,\mathcal{A}}\|g(\sum_i\mathcal{A}(x_i))-\sum_ix_i\|\),其中\(\|\cdot\|\)可以是 \(l_1\) 或 \(l_2\) 范数。当然,如果不对 \(g(\cdot)\) 和 \(A(\cdot)\) 强加任何约束,我们可以选择它们为同一函数,从而得到 0 误差。不过,\(A(\cdot)\) 必须满足两个约束条件:(1)\(A(\cdot)\)应该输出 \(B\) 比特(可以认为是每个用户的通信成本),以及 (2) \(\bar{y}=\sum_i\mathcal{A}(x_i)\) 应该是\(\bar{x}=\sum_{i}x_{i}\)的 \((\epsilon, \delta)\)-DP 版本。因此,我们感兴趣的基本问题是找出最优算法 A,既能在聚合时实现 DP,又能满足固定的通信预算。换个角度看这个问题,对于固定的 \(n\)、\(B\)、\(\epsilon\) 和 \(\delta\),我们希望达到的最小 \(l_1\) 或 \(l_2\) 误差是多少?我们注意到,Agarwal 等人[9] 的研究提供了一种基于均匀量化和二项式噪声加法的候选算法 A。最近,[256] 还提出了另一种解决方案,即对数据进行旋转、缩放和离散化处理,然后添加离散高斯噪声,再进行模块化裁剪和安全聚合。虽然独立离散高斯之和并不是离散高斯,但作者表明它已经足够接近,并提出了严密的 DP 保证和实验结果,证明他们的解决方案能够通过连续高斯噪声实现与中央 DP 相当的精度,每个值的精度为 16 比特(或更低)。然而,目前还不清楚这种方法是否实现了最佳通信、隐私和精度权衡。因此,在上述约束条件下,推导出 \(l_1\) 或 \(l_2\) 误差的下限和匹配上限是非常重要的。
隐私统计
在中心化差分隐私模型中,通常使用子采样高斯机制来实现 DP,并使用矩统计方法在 FL 的各轮中严格跟踪隐私预算(见第 4.3 节的讨论)。然而,在 DP 的分布式环境中,由于与安全洗牌和安全聚合的实际实现相关的有限精度问题,高斯机制无法使用。因此,该领域的现有研究采用了离散性质的噪声分布(如添加伯努利或二项式噪声)。虽然这些分布有助于解决安全闪存/聚合底层实现所施加的有限精度限制,但它们并不能自然地受益于矩会计方法。因此,一个重要的未决问题是推导出适合分布式数据处理正在考虑的这些离散(和有限支持)噪声分布的隐私核算技术。
解决客户端掉线问题
上述分布式 DP 模型假定,参与的客户端在一轮中与服务器保持连接。然而,在大规模运行时,一些客户端会因网络连接中断或暂时不可用而退出。这就要求分布式噪声生成机制能够稳健地应对这种掉线情况,同时也会影响将联邦学习和分析扩展到更多的参与客户端。
就稳健分布式噪声而言,客户端退出可能导致添加的噪声太少,无法达到差分隐私 \(\epsilon\) 目标。一种保守的方法是增加每个客户端的噪声,这样即使客户端数量达到服务器完成安全聚合和计算总和所需的最低数量,也能满足差分隐私 \(\epsilon\) 目标。但是,如果有更多客户端报告,就会导致噪声过大,这就提出了一个问题:是否可能有更有效的解决方案?
在扩展方面,当参与安全聚合轮的客户端数量增加时,退出客户端的数量就会成为瓶颈。同时聚集足够多的客户端也是一个挑战。为此,可以对协议进行结构设计,使客户端可以在一轮长时间的聚合过程中多次连接,以完成任务。更广泛地说,在客户端可能间歇性可用的情况下,大规模运行的问题尚未在文献中得到系统解决。
新的信任模型
联邦学习框架促使我们利用联邦学习独特的计算模型,开发新的、比以前使用的信任模型更精细的信任模型,并对敌对用户的能力做出现实的假设。例如,假定有多大比例的客户端可能会被敌方攻破?敌手是否有可能同时入侵服务器和大量设备,还是通常只需假设敌手只能入侵其中之一即可?在联邦学习中,服务器通常由知名实体(如长期存在的组织)运营。是否可以利用这一点来建立一种信任模型,在这种模型中,服务器的行为是可信但可验证的,也就是说,并不阻止服务器偏离所需的协议,但如果服务器偏离协议,则极有可能被发现(从而损害托管组织的信任、声誉以及潜在的财务或法律地位)?
4.4.4 在训练子模型时保护隐私
在许多情况下,每个客户端都可能拥有本地数据,而这些数据只与正在训练的完整模型中相对较小的一部分相关。例如,在大量数据的库上运行的模型,包括自然语言模型(在单词库上运行)或内容排名模型(在内容库上运行),经常使用嵌入查找表作为神经网络的第一层。通常情况下,客户端只与库中的一小部分进行交互,在许多训练策略下,客户端数据支持更新的嵌入向量只能是那些与客户端交互的项目相对应的嵌入向量。
另一个例子是,多任务学习策略可以有效地实现个性化,但可能会产生复合模型,其中任何特定客户端只能使用与该客户端的用户群相关联的子模型,如第 3.3.2 节所述。
如果通信效率不是问题,那么子模型训练看起来就像标准的联邦学习:客户在参与时下载完整模型,使用与其相关的子模型,然后提交涵盖整个模型参数集的模型更新(即除了与相关子模型对应的条目外,其他地方都为零)。然而,在部署联邦学习时,通信效率往往是一个重要的问题,这就引出了一个问题:我们能否实现通信效率高的子模型训练?
如果客户端在选择更新哪个特定子模型时不涉及隐私敏感信息,那么就可以直接调整联邦学习,以实现通信效率高的子模型训练。例如,可以运行多个联邦学习程序副本,每个子模型一个,既可以并行运行(例如,客户端根据其希望更新的子模型,选择合适的联邦学习实例参与),也可以依次运行(例如,在每一轮 FL 中,服务器会公布哪个子模型将被更新),或者两者混合运行。不过,虽然这种方法通信效率高,但服务器会观察到客户端选择的子模型。
是否有可能实现通信效率高的子模型联邦学习,同时还能保持客户端子模型选择的私密性?一种很有前景的方法是使用 PIR 下载私有子模型,同时使用针对稀疏向量优化的安全聚合变体聚合模型更新[105, 249, 360]。
该领域的未决问题包括:描述与具有实际意义的子模型训练问题相关的稀疏性机制,以及 开发在这些稀疏性机制中具有通信效率的稀疏安全聚合技术。另外,是否可以对私有信息检索(PIR)和安全聚合进行共同优化,以实现比简单地让每种技术独立运行更高的通信效率(例如通过在两种功能的实现之间分担一些成本),这也是一个未决问题。
某些形式的本地和分布式差分隐私在这里也提出了挑战,因为噪声经常被添加到向量的所有元素中,甚至是那些为零的元素;因此,在每个客户端上添加这种噪声会将原本稀疏的模型更新(即仅在子模型上为非零)转化为密集的私有化模型更新(几乎所有地方都很有可能为非零)。能否解决这一矛盾,即 是否存在一种有意义的分布式差分隐私实例化,同时又能保持模型更新的稀疏性,这还是一个悬而未决的问题。
4.5 用户感知
联邦学习体现了集中数据收集和最小化原则,可以减轻许多系统性隐私风险。不过,正如上文所述,必须清楚它能提供(和不能提供)的保护,以及可用于针对第 4.1 节所述威胁模型提供保护的技术。前几节重点讨论了针对精确威胁模型对隐私进行严格量化的问题,本节则重点讨论了围绕用户感知和需求的挑战。
以下是一些具有重要实用价值的开放性问题。是否有办法让普通用户直观地了解特定 FL 实施的好处和局限性?FL 基础架构的哪些参数和特征可能使其足以(或不足以)满足隐私和数据最小化的要求?联邦学习是否会给用户带来虚假的隐私感?我们如何让用户在更多地了解他们的数据时感到安全并且感到真正的安全?用户对隐私的不同方面是否有不同的评价?人们想要保护的事实是什么?了解这些情况是否能让我们设计出更好的机制?是否有方法可以很好地模拟人们的隐私偏好,从而决定如何设置这些参数?如果不同的技术有不同的效用/隐私/安全属性,谁来决定使用哪种技术?只是服务提供商?还是用户?还是他们的操作系统?还是他们的政治管辖权?像 "只为受保护者提供隐私"[267]这样的机制,在为大多数用户提供隐私保障的同时,是否允许为反恐等社会优先事项进行有针对性的监控?是否有办法让用户选择所需的隐私级别?
有两个重要方向似乎与开始解决这些问题特别相关。
4.5.1 了解特定分析任务的隐私需求
FL 的许多潜在用例涉及复杂的学习任务和来自用户的高维数据,这两种情况都可能导致需要大量噪声来保护不同的隐私。但是,如果用户对保护自己的数据免受所有可能推论的影响并不那么在意,那么就可以放宽隐私约束,减少噪声的添加。例如,考虑一下智能家居恒温器产生的数据,该恒温器被设定为在房屋无人时关闭,在住户回家时打开。从这些数据中,观察者可以推断出住户晚上回家的时间,这可能是高度敏感的。然而,更粗略的信息结构可能只能揭示住户是否在凌晨 2-4 点之间睡觉,敏感度可能较低。
Pufferfish 隐私框架[271]正式确定了这种方法,它允许分析师指定一类受保护的谓词,这些谓词必须在保证差分隐私的前提下进行学习,而所有其他谓词则可以在不保证差分隐私的前提下学习。要使这种方法在实践中提供令人满意的隐私保证,分析师必须了解用户对其特定分析任务和数据收集程序的隐私需求。可以对联邦学习框架进行修改,允许个人用户指定他们允许和不允许的推论。这些数据限制可以在设备上处理,在 FL 模型更新步骤中只与服务器共享“允许”的信息,也可以在数据收集完成后作为聚合步骤的一部分进行处理。应进一步开展工作,开发将此类用户偏好纳入 FL 模型的技术工具,并开发从用户那里获得有意义偏好的技术。
4.5.2 获取隐私偏好的行为研究
任何要求个人用户指定自己的隐私标准的隐私保护方法都应包括行为或实地研究,以确保用户能够表达知情的偏好。这应包括教育内容和偏好测量。
教育部分应衡量并提高用户对正在使用的隐私技术(如第 4.2 节)和数据使用细节的理解。对于涉及联邦学习的应用,还应包括对联邦学习的解释,以及究竟哪些数据会被发送到服务器。一旦研究的教育部分验证了典型用户能够切实理解私有学习过程所提供的隐私保证,研究人员就可以开始进行偏好征询。这可以在行为实验室、大规模现场实验或小型焦点小组中进行。应注意确保提供偏好数据的个人既能提供高质量数据,又能代表目标人群。
长期以来,丰富的行为和实验经济学领域已经表明,人们在公开和私密条件下(即其选择是否被他人观察到)的行为是不同的,但在激发人们对不同隐私的偏好方面,却鲜有行为学方面的研究[144, 6]。扩展这项工作将是未来广泛实施私有联邦学习的关键一步。教育部分的研究结果将有助于确保研究参与者充分知情并理解他们所面临的决定。这些实验的一个重要原则是,实验必须符合道德规范,不能有任何欺骗行为。
5 防御攻击和失败
现代机器学习系统容易受到各种故障的影响。这些故障包括非恶意故障,如预处理管道中的错误、有噪声的训练标签、不可靠的客户端,以及针对训练和部署管道的明确攻击。在本节中,我们将反复看到,联邦学习的分布式特性、架构设计和数据限制开辟了新的故障模式和攻击面。此外,在联邦学习中保护隐私的安全机制会使检测和纠正这些故障和攻击成为一项特别具有挑战性的任务。
虽然这些挑战可能会导致鲁棒性难以实现,但我们将讨论许多有前景的研究方向,以及如何在联邦环境中调整或改进这些方向。我们还将讨论不同类型的攻击和失败之间的关系,以及这些关系在联邦学习中的重要性。
本节首先在第 5.1 小节中讨论对抗性攻击,然后在第 5.2 小节中讨论非恶意故障模式,最后在第 5.3 小节中探讨隐私与鲁棒性之间的矛盾。
5.1 针对模型表现的对抗攻击
5.1.1 敌手的目标和能力
目标
在高层次上,对机器学习模型的对抗性攻击试图以某种不可取的方式修改模型的行为。我们发现,攻击的目标一般是指不良修改的范围或目标区域,范围一般分为两个层次:
- 无目标攻击或模型降级攻击,其目的是降低模型的全局准确性,或 "完全破坏 "全局模型 [69]。
- 有针对性的攻击或后门攻击,旨在改变模型在少数示例上的行为,同时在所有其他示例上保持良好的整体准确性 [115, 319, 44, 67]。
能力
同时,敌手在训练过程中试图颠覆模型时,可能会具备各种不同的能力,如表11。
特征 | 描述/类型 |
---|---|
攻击向量 | 敌手如何引入攻击? 1.数据投毒:敌手改变用于训练模型的客户数据集。 2.模型更新中毒:敌手改变发送到服务器的模型更新。 3.规避攻击:敌手改变推理时使用的数据。 |
模型检验 | 敌手能否观察到模型参数? 1.黑盒:在攻击之前或攻击过程中,敌手无法检查模型的参数。联邦学习通常不会出现这种情况。 2.陈旧白盒:敌手只能检查模型的陈旧版本。在联邦环境中,当敌方可以访问参与中间一轮训练的客户端时,自然会出现这种情况。 3.白盒:敌手有能力直接检查模型参数。这种情况可能发生在跨分机设置和跨设备设置中,因为敌手可以访问可能被选为参与者的大量设备。 |
参与者串通 | 多个敌手能否协调攻击? 1.非协作:参与者无法协调攻击。 2.交叉更新串通:过去的客户参与者可以与未来的参与者协调,共同攻击未来的全局模型更新。 3.更新内串通:当前客户端参与者可以协调对当前模型更新的攻击。 |
参与率 | 敌手在整个训练过程中注入攻击的频率? 1.在跨设备联邦设置中,恶意客户端可能只能参与一轮模型训练。 2.在跨孤岛联邦环境中,敌手可能会持续参与学习过程。 |
适应性 | 敌手能否在攻击过程中改变攻击参数? 1.静态:敌手必须在攻击开始时固定攻击参数,不得更改。 2.动态:敌手可以在训练过程中调整攻击。 |
5.1.2 模型更新中毒
无目标和拜占庭攻击
拜占庭威胁模型(Byzantine threat model)对无目标模型更新中毒攻击尤为重要,在该模型中,分布式系统中的故障可产生任意输出[293]。由此延伸,如果敌手能使分布式系统中的进程产生任意输出,那么对该进程的对抗性攻击就是拜占庭攻击。因此,拜占庭攻击可被视为对给定计算节点集的最坏情况非目标攻击。由于这种最坏情况下的行为,我们对非目标攻击的讨论将主要集中在拜占庭攻击上。不过,我们注意到,防御者在应对更良性的非目标威胁模型时可能会更有优势。
在联邦学习的背景下,我们将重点关注敌手控制一定数量客户端的情况。这些拜占庭客户端可以发送任意值,而不是向服务器发送本地更新的模型。这可能导致收敛到次优模型,甚至导致分歧[76]。如果拜占庭客户机可以白盒访问模型或非拜占庭客户机更新,它们就可以定制其输出,使其具有与正确模型更新相似的方差和幅度,从而使它们难以被发现。拜占庭攻击可能带来的灾难性后果促使人们开始研究分布式学习的拜占庭抗扰聚合机制[75, 111, 342, 18, 497, 152]。
拜占庭弹性防御
针对无针对性的模型更新中毒攻击,尤其是拜占庭攻击,一种流行的防御机制是用对均值的稳健估计取代服务器上的平均步骤,例如基于中值的聚合器[116, 497]、Krum[76]和裁剪均值[497]。过去的研究表明,在适当的假设条件下,各种稳健聚合器对拜占庭容忍分布式学习[436, 76, 116]是有效的,即使在联邦环境中也是如此[379, 486, 427]。尽管如此,Fang 等人[183] 最近的研究表明,在联邦学习中,多重拜占庭抗性防御对抵御模型中毒攻击几乎没有作用。因此,可能有必要对联邦学习中拜占庭抗扰防御的有效性进行更多的实证分析,因为这些防御的理论保证可能只在学习问题的假设条件下成立,而这些假设条件往往无法满足[52, 381]。
另一种模型更新中毒防御方法是利用冗余和数据洗牌来缓解拜占庭攻击[111, 381, 148]。虽然这类机制通常都有严格的理论保证,但一般都假定服务器可以直接访问数据或允许全局洗牌数据,因此不能直接应用于联邦环境。一个具有挑战性的未决问题是如何协调基于冗余的防御与联邦学习,前者会增加通信成本,后者旨在降低通信成本。
有针对性的模型更新攻击
与无目标攻击相比,有目标的模型更新中毒攻击可能只需要较少的敌手,因为它只关注敌手所期望的较小结果。在这种攻击中,即使是一次攻击也足以将后门引入模型 [44]。Bhagoji 等人[67]的研究表明,如果参与联邦学习的设备中有 10% 受到攻击,即使服务器上存在异常检测器,也可以通过毒化发送回服务提供商的模型来引入后门。有趣的是,中毒模型更新的外观和(大体上)行为与未受针对性攻击时训练的模型相似,这突出表明即使检测到后门的存在也很困难。此外,由于敌手的目的只是影响少量数据点的分类结果,同时保持集中学习模型的整体准确性,因此针对非目标攻击的防御往往无法解决目标攻击 [67, 44]。这些攻击已被扩展到联合元学习中,在联邦元学习中,通过单次攻击插入的后门被证明可以持续数十轮训练[109]。
现有的针对后门攻击的防御措施[432, 314, 454, 152, 465, 416, 122]要么要求仔细检查训练数据,要么要求访问类似分布式数据的保留集,要么要求在服务器上完全控制训练过程,而这些在联邦学习环境中都不一定适用。未来工作的一个有趣方向是探索使用零知识证明,以确保用户提交的更新具有预先指定的属性。还可以考虑基于硬件证明的解决方案。例如,用户的手机可以证明共享模型更新是使用手机摄像头拍摄的图像正确计算的。
串通防御
如果允许敌手串通,模型更新中毒攻击的效果可能会大大提高。这种串通可以让敌手制造出更有效、更难检测的模型更新攻击 [52]。这种模式与sybil攻击[160]密切相关,在sybil攻击中,客户端可以随意加入或离开系统。由于服务器无法查看客户端数据,因此在联邦学习中检测sybil攻击可能要困难得多。最近的研究表明,联邦学习既容易受到有针对性的sybil攻击,也容易受到无针对性的sybil攻击[190]。联邦学习面临的潜在挑战包括,在不直接检查节点数据的情况下,防御串通或检测串通敌手。
5.1.3 数据投毒攻击
数据投毒攻击和拜占庭式鲁棒性聚合
数据清理和网络修剪
模型更新中毒与数据投毒攻击之间的关系
5.1.4 推理时规避攻击
在规避攻击中,敌手可能会通过精心操纵输入模型的样本,试图规避已部署的模型。一种经过深入研究的规避攻击形式是所谓的 "对抗示例"。它们是测试输入的扰动版本,在人类看来与原始测试输入几乎没有区别,但却能骗过训练有素的模型[70, 441]。在图像和音频领域,对抗示例通常是通过在测试示例中添加有规范约束的扰动来构建的,不过最近的研究也探索了其他扭曲方法 [176, 477, 259]。在白盒环境中,上述扰动可以通过投射梯度上升等约束优化方法,在规范约束下尝试最大化损失函数而产生 [284, 328]。这种攻击经常会导致自然训练的模型在 CIFAR-10 或 ImageNet 等图像分类基准上的准确率为零[98]。在黑盒环境中,模型也很容易受到基于对模型的查询访问的攻击[113, 90]或基于在类似数据上训练的替代模型的攻击[441, 366, 452]。在数据中心环境中,黑盒攻击可能是更自然的考虑因素,但联邦学习中的模型广播步骤意味着任何恶意客户端都可以访问模型。因此,联邦学习增加了针对白盒规避攻击的防御需求。
训练时攻击与推理时攻击之间的关系
上述关于规避攻击的讨论一般假定敌手在推理时拥有白盒访问权(可能是由于联邦学习的系统级现实)。这忽略了一个现实,即敌手可能会破坏训练过程,以创建或增强模型在推理时的漏洞,如文献[115]所述。敌手可以通过非针对性和针对性两种方式来实现这一点;敌手可以使用针对性攻击来制造针对特定类型对抗示例的漏洞[115, 214],也可以使用非针对性攻击来降低对抗训练的有效性。
针对训练时和推理时联合攻击的一种可能防御方法是检测后门攻击的方法[454, 108, 465, 122]。第 5.1.3 节更详细地讨论了将以前的防御方法(如上述方法)应用于联邦环境的困难。不过,在许多联邦环境中,我们希望在推理时保证输出模型的鲁棒性,而单纯检测后门可能是不够的。更复杂的解决方案可能会将训练时防御(如稳健聚合或差分隐私)与对抗训练结合起来。这一领域的其他开放性工作可能涉及量化各种类型的训练时攻击如何影响模型的推理时脆弱性。鉴于目前在防御纯训练时间攻击或纯推理时间攻击方面存在的挑战,这一工作方向必然更多是推测性的,尚未得到探索。
5.1.5 来自隐私保证的防御能力
抵御模型更新中毒攻击
服务提供商可以通过以下方法约束任何单个客户端对整体模型的贡献:(1) 对客户端模型更新强制执行规范约束(如裁剪客户端更新),(2) 聚合裁剪后的更新,(3) 在聚合中添加高斯噪声。这种方法可以防止对任何单个更新(或一小群恶意个体)的过拟合,并且与差分隐私训练(在第 4.3.2 节中讨论)相同。Sun 等人最近对这种方法进行了探索[438],并初步成功地将差分隐私作为防御定向攻击的手段。不过,Sun 等人[438]所分析的实验和目标攻击的范围应扩展到更一般的对抗性攻击。特别是,Wang 等人[466]的研究表明,使用由底层分布中概率较低的数据样本生成的边缘情况后门,能够绕过差分隐私防御。他们进一步证明,对抗性示例的存在意味着边缘情况后门的存在,这表明针对这两种威胁的防御措施可能需要同步开发。因此,要验证 DP 是否确实是一种有效的防御手段,还需要做更多的工作。更重要的是,目前还不清楚如何根据模型大小和架构以及恶意设备的比例来选择 DP 的超参数(如 \(l_2\) 范数边界和噪声方差)。
抵御数据投毒攻击
可以把数据投毒攻击看作是学习算法鲁棒性的失败:少数被攻击的训练示例可能会严重影响学习到的模型。因此,抵御这些攻击的一种自然方法就是使学习算法具有不同的隐私性,从而提高鲁棒性。最近的研究探索了将差分隐私作为防御数据投毒攻击的一种方法 [326],尤其是在联邦学习的背景下 [199]。直观地说,只能修改少量训练示例的对手无法对已学模型的分布造成大的改变。
虽然差分隐私是一种灵活的数据投毒攻击防御方法,但它也有一些缺点。主要缺点是必须在学习过程中注入噪音。虽然这不一定是个问题——随机梯度下降等常见的学习算法已经注入了噪声——但增加的噪声会损害所学模型的性能。此外,敌手只能控制少量设备。因此,差分隐私可被视为针对数据投毒攻击的一种既强又弱的防御手段——它的强大之处在于其通用性极强,无论敌手的目标是什么,它都能提供最坏情况下的保护;它的弱在于敌手必须受到限制,而且必须在联邦学习过程中加入噪声。
防御推理时逃避攻击
差分隐私作为防御推理时攻击的一种方法也得到了研究,在推理时攻击中,敌手可能会修改测试示例来操纵学习到的模型。一种直接的方法是使预测器本身具有差分隐私性;然而,这种方法的缺点是预测变得随机化,这通常是不可取的,而且还会损害可解释性。更复杂的方法 [296] 是添加噪音,然后发布概率最高的预测结果。我们相信,在这个方向上还有其他进一步探索的机会。
5.2 非恶意故障模式
客户端报告故障
回顾一下,在联邦学习中,每一轮训练都包括向客户端广播模型、本地客户端计算以及向中央聚合器提交客户端报告。对于任何参与的客户端,系统因素都可能导致其中任何一个步骤出现故障。这种故障在跨设备联邦学习中尤其容易发生,因为在这种情况下,网络带宽变得更加紧张,而客户端设备更有可能是计算能力有限的边缘设备。即使没有明确的故障,也可能会有落伍的客户端,它们报告输出的时间比同一轮中的其他节点要长得多。如果落伍者需要足够长的时间来报告,为了提高效率,它们可能会被从一轮通信中省略,从而有效减少参与的客户端数量。在“普通”联邦学习中,这并不需要对算法进行真正的修改,因为联邦平均法可以应用于任何报告模型更新的客户端。
遗憾的是,在使用安全聚合(SecAgg)[80, 58]时,尤其是在 SecAgg 协议过程中出现客户端掉线的情况下,应对无响应客户端就变得更具挑战性。虽然 SecAgg 在设计上能够应对大量的掉线[81],但仍有可能出现故障。可以通过各种互补方法来降低失败的可能性。一种简单的方法是在每轮中选择多于所需数量的设备。这有助于确保落伍者和失败设备对整体收敛的影响最小[81]。然而,在不可靠的网络环境中,这可能还不够。降低失败概率的更复杂方法是提高 SecAgg 的效率。这样可以减少客户端掉线对 SecAgg 产生不利影响的时间窗口。另一种可能是开发 SecAgg 的异步版本,它不要求客户端在固定的时间窗口内参与,可能是通过改编一般异步安全多方分布式计算协议的技术[430]。更具推测性的是,有可能在多轮计算中执行聚合版本的 SecAgg。这将允许将落伍节点纳入后续轮次,而不是完全退出当前轮次。
数据管道故障
虽然联邦学习中的数据管道只存在于每个客户端中,但这些管道仍可能面临许多潜在问题。特别是,任何联邦学习系统都必须定义如何访问原始用户数据并将其预处理为训练数据。这一管道中的错误或意外操作会极大地改变联邦学习过程。在数据中心环境中,数据管道的错误通常可以通过标准数据分析工具发现,而在 联邦学习中,数据限制使得检测工作更具挑战性。例如,服务器无法直接检测到特征级预处理问题(如倒置像素、串联词等)[31]。一种可能的解决方案是使用具有差分隐私的联邦学习方法训练生成模型,然后使用这些模型合成新的数据样本,用于调试底层数据管道[31]。为机器学习开发不直接检查原始数据的通用调试方法仍然是一项挑战。
嘈杂的模型更新
在上文第 5.1 节中,我们讨论了敌手从一些客户端向服务器发送恶意模型更新的可能性。即使没有敌手存在,发送到服务器的模型更新也可能因网络和架构因素而失真。这种情况在跨客户端设置中尤其容易发生,因为在这种设置中,服务器、客户端和网络由不同的实体控制。客户端数据也可能导致类似的失真。即使客户端上的数据不是故意恶意的,也可能存在噪声特征[350](例如,在视觉应用中,客户端可能有一个低分辨率的摄像头,其输出被缩放到更高的分辨率)或噪声标签[356](例如,如果用户无意中指出某个应用的推荐不相关)。虽然跨孤岛联邦学习系统(见表 1)中的客户端可以执行数据清理以消除此类损坏,但由于数据隐私限制,此类处理不太可能在跨设备设置中进行。归根结底,无论是网络因素还是嘈杂数据,上述破坏都可能损害联邦学习过程的收敛性。
5.3 隐私和鲁棒性之间的关系
安全聚合 (SecAgg)(见 4.2.1)是实施隐私保护的主要技术之一。简而言之,SecAgg 是一种工具,用于确保服务器只看到客户端更新的聚合,而不是任何单个客户端的更新。尽管 SecAgg 对于确保隐私非常有用,但由于中央服务器只能看到客户端更新的总和,因此通常会增加对抗性攻击的防御难度。因此,研究如何在使用安全聚合时抵御恶意攻击是非常重要的。现有的基于范围证明的方法(如 Bulletproofs [92])可以保证上述基于 DP 的裁剪防御与 SecAgg 兼容,但 开发计算和通信效率高的范围证明仍是一个活跃的研究方向。
SecAgg 还为其他防御方法带来了挑战。例如,许多现有的拜占庭破坏聚合方法利用了服务器上的非线性操作,而这些方法是否能与最初为线性聚合而设计的安全聚合有效兼容尚不得而知。最近的研究发现了在 SecAgg 下近似几何中值的方法[379],即在更一般的聚合循环中使用少量 SecAgg 调用。不过,目前还不清楚使用 SecAgg 可以计算哪些聚合器。
6 确保公平性和处理偏差来源
机器学习模型经常会表现出意外行为。当这种行为导致用户受到不良影响时,我们可能会根据某些标准将模型归类为“不公平”。例如,如果具有相似特征的人得到了截然不同的结果,那么这就违反了个体公平的标准[169]。如果某些敏感群体(种族、性别等)得到不同的结果模式——比如不同的假阴性率——这就违反了各种人口统计学公平性标准,有关调查见 [51, 349]。反事实公平标准要求用户在考虑所有因果相关途径后,获得与他们作为不同群体(种族、性别等)成员时相同的待遇[287]。
联邦学习为公平性研究提供了若干机会,其中一些是对先前非联邦环境下研究方向的扩展,另一些则是联邦学习所独有的。本节将提出这两类问题中的开放性问题。
6.1 训练数据偏差
造成机器学习模型不公平的一个原因是训练数据中的偏差,包括认知偏差、抽样偏差、报告偏差和确认偏差。一种常见的反模式是,少数群体或边缘化社会群体在训练数据中的代表性不足,因此学习者在训练过程中对这些群体的权重较低[258],导致对这些群体成员的预测质量较差(例如[93])。
正如联邦学习中使用的数据访问过程可能会引入数据集转移和非独立性问题(第 3.1 节)一样,也存在引入偏差的风险。例如:
- 如果选择设备在插入电源或充满电时进行更新,那么一天中不同时间计算的模型更新和评估可能与白班与夜班工作时间安排等因素相关。
- 如果在给定时间内从符合条件的设备库中选择设备进行更新,那么在很少有其他设备连接的时间(如夜班或不寻常时区)连接的设备在汇总输出中的代表性可能会过高。
- 如果所选设备的输出计算速度更快,则其输出更有可能被保留,那么:a)处理器速度更快的设备的输出可能占比过高,这些设备可能是较新的设备,因此与社会经济地位相关;b) 数据较少的设备可能占比过高,这些设备可能代表使用产品频率较低的用户。
- 如果数据节点拥有不同数量的数据,那么联邦学习可能会权衡那些大量使用产生数据的产品或功能的人群的贡献。
- 如果更新频率取决于延迟时间,那么某些地理区域和使用较慢设备或网络的人群的代表性可能会不足。
- 如果潜在用户群体因社会经济原因而不拥有设备,那么他们在训练数据集中的代表性可能不足,因此在模型训练和评估中的代表性也会不足(或没有)。
- 在联邦训练过程中,对选定设备的模型损失进行非加权汇总,可能会影响模型在某些设备上的性能 [302] 。
据观察,数据生成过程中的偏差也会导致从这些数据中学习到的模型不公平(见,例如 [170, 394])。例如,假设训练数据是基于用户与产品的交互,而该产品没有采用包容性设计原则。那么,用户与产品的交互可能并不表达用户的意图(例如,参见 [403]),而是表达了对非包容性产品设计的应对策略(因此可能需要从根本上修复产品交互模型)。从这种交互中学习可能会忽视或延续某些产品用户群体的不良体验,而在联邦环境中,这种方式很难在维护隐私的同时被发现。从用户交互中获取训练数据的所有机器学习场景都存在这种风险,但在联邦环境中,从单个设备上的应用程序收集数据时,这种风险尤其值得注意。
6.2 无法获取敏感属性的公平性
明确获取人口信息(种族、性别等)对于许多现有的公平标准至关重要,包括第 6.1 节中讨论的那些标准。然而,当无法获得个人敏感属性时,联邦学习的部署环境也会引起对公平性的考虑。例如,在开发个性化语言模型或开发公平的医学影像分类器时,如果不知道任何有关个人的额外人口统计信息,就会出现这种情况。更重要的是,个人与设备之间假定的一一对应关系往往会被打破,尤其是在非西方环境下[403]。在没有敏感群体成员数据的情况下,衡量和纠正不公平现象是联邦学习研究人员需要解决的关键问题。
现有研究在无法获取敏感属性的情况下对公平性进行了有限的研究。例如,有人使用分布稳健优化(DRO)和多校准(Multicalibration)方法来解决这一问题,前者针对训练期间所有个体的最坏结果进行优化[225],后者则针对训练数据子集的公平性进行校准[232]。即使是这些现有方法,也尚未应用于联邦环境,这为未来的实证工作提供了机会。如何使这些方法适用于联邦环境中典型的大规模、高维数据,也是一个有待解决的难题,因为 DRO 和多校准都会给大 \(n\) 和 \(p\) 的扩展带来挑战。最后,开发更多的理论方法来定义不涉及“敏感属性”的公平性,也是一个有待进一步研究的关键领域。
其他方法包括重新构建现有的公平概念,这些概念主要涉及结果概率的均等(对受影响的个人而言,其中一个结果被认为是“积极的”,另一个结果被认为是“消极的”)。取而代之的是,不涉及敏感属性的公平可以被重新定义为平等获得有效模式的机会。根据这种对公平性的解释,目标是在所有个体中最大化模型效用,而不论其(未知的)人口特征,也不论个体结果的“好坏”。同样,这也符合联邦学习最常用的情况,如语言建模或医学图像分类,在这些情况下,并不存在对用户而言“好”的结果的明确概念,而目标只是为用户做出正确的预测,无论结果如何。
6.3 公平性、隐私性和鲁棒性
公平与数据隐私似乎是相辅相成的伦理概念:在现实世界的许多情况下,人们希望保护隐私,同时也希望保护公平。这通常是由于基础数据的敏感性造成的。由于联邦学习最有可能部署在敏感数据的环境中,而在这种环境中,隐私和公平性都是可取的,因此,FL 研究必须研究 FL 如何能够解决机器学习中现有的公平性问题,以及 FL 是否会引发新的公平性相关问题。
然而,在某些方面,公平性的理想似乎与 FL 试图提供保障的隐私概念存在矛盾:差分隐私学习通常试图掩盖个人识别特征,而公平性通常要求了解个人在敏感群体中的成员身份,以衡量或确保预测的公平性。虽然在非联邦环境下,人们已经研究了差分隐私和公平性之间的权衡问题 [246, 145],但关于 FL 如何(或是否)能够独特地解决公平性问题,却鲜有研究。
最近有证据表明,不同的隐私学习可能会对敏感的亚群体产生不同的影响[43, 145, 246, 283],这进一步促使我们研究 FL 是否能够解决这些问题。要缓和隐私(旨在保护模型不过分依赖于个人)与公平(鼓励模型在代表性不足的类别中表现良好)之间的矛盾,一个潜在的解决方案可能是应用个性化(第 3.3 节中讨论)和“混合差分隐私”等技术,其中一些用户捐赠的数据具有较低的隐私保证[40]。
此外,目前的差分隐私优化方案在应用时并不考虑敏感属性——从这个角度看,经验研究显示,差分隐私优化对少数群体的影响最大[43]。对差分隐私优化算法进行修改,明确寻求保持对少数群体的性能,例如,通过调整噪声和裁剪机制以考虑数据中群体的代表性,也可能会大大限制差分隐私建模对使用差分隐私训练的联邦模型中少数群体的潜在不同影响。然而,以提供某种形式隐私保证的方式实施这种自适应差分隐私机制,在算法和理论上都存在挑战,需要在未来的工作中加以解决。
还需要进一步研究,以确定上述问题在联邦环境中出现的程度。此外,如第 6.2 节所述,在敏感属性不可用的情况下,评估差分隐私对模型公平性的影响变得尤为困难,因为目前还不清楚如何确定模型行为不良的子群,以及如何量化差分隐私的“代价”——调查和解决这些挑战是未来工作的一个开放性问题。
更广泛地说,我们可以更普遍地研究隐私、公平性和稳健性之间的关系(见第5节)。以往许多关于机器学习(包括联邦学习)的研究通常侧重于鲁棒性(防中毒或防逃避)、隐私或公平性等孤立的方面。一个重要的公开挑战是如何共同理解联邦学习系统的鲁棒性、隐私性和公平性。这种综合方法可以提供从不同但互补的机制中获益的机会。不同的隐私机制既可用于缓解数据推理攻击,也可为抵御数据中毒奠定基础。另一方面,这种综合方法也会暴露出新的漏洞。例如,最近的研究揭示了隐私与对抗对抗性实例的稳健性之间的权衡[429]。
最后,在学习独立于某些敏感属性的数据表示的同时,还要保持对感兴趣的任务的实用性,在这种情况下,隐私性和公平性自然会相遇。事实上,这一目标既可以从隐私角度出发:转换数据以隐藏隐私属性,也可以从公平角度出发:使在此类表征上训练的模型在属性方面公平。在集中式环境中,学习此类表征的一种方法是对抗训练技术,这种技术已被应用于图像和语音数据[255, 186, 327, 65, 431]。在联邦学习场景中,客户端可以在本地对其数据进行转换,以执行或改进 FL 流程的隐私和/或公平性保证。然而,以联邦方式学习这种转换(可能在隐私和/或公平性约束下)本身就是一个开放性问题。
6.4 利用联邦来提高模型多样性
联邦学习通过提供高效的分散式训练协议,以及对所生成模型的隐私性和不可识别性的保证,为利用独特的多样化数据集提供了机会。这意味着,联邦学习可以在许多以前不可能实现的领域中,在多假设数据集上进行训练。这为利用更大、更多样化的数据集和探索以前仅限于小群体的模型的普适性提供了实际机会。更重要的是,它提供了一个机会,通过结合可能与敏感属性相关的跨边界数据来提高这些模型的公平性。例如,特定医疗或教育机构的就诊情况可能与个人的种族或社会经济地位相关。如上文第 6.1 节所述,训练数据的代表性不足已被证明是模型不公平的一个驱动因素。
未来的联邦学习研究应调查在联邦训练环境中提高多样性在多大程度上也能提高所生成模型的公平性,以及在这种环境中所需的不同隐私机制在多大程度上可能会限制增加多样性所带来的公平性和性能提升。这包括需要开展实证研究,应用联邦学习并量化多样性、公平性、隐私和性能之间的相互作用;以及开展理论研究,为机器学习公平性背景下的多样性等概念奠定基础。
6.5 联邦公平性:新机遇与挑战
值得注意的是,联邦学习为公平性研究人员提供了独特的机遇和挑战。例如,联邦学习允许使用按观测分布的数据集,甚至是按特征分布的数据集,这样就能利用可能过于敏感而无法直接共享的分区数据进行建模和研究[215, 224]。增加可联合使用的数据集的可用性,有助于提高机器学习模型可用训练数据的多样性,从而推动公平建模理论和实践的发展。
研究人员和从业人员还需要应对联邦学习带来的与公平性相关的独特挑战。例如,联邦学习会根据连接类型/质量、设备类型、位置、活动模式和本地数据集大小等因素决定对哪些客户端进行采样,从而引入新的偏差来源[81]。未来的工作可以研究这些不同的采样限制在多大程度上影响了最终模型的公平性,以及如何在联邦框架内减轻这些影响,例如 [302, 289, 158]。不可知论联邦学习[352]等框架提供了控制训练目标偏差的方法。在联邦训练过程中,模型压缩最初有助于扩大候选客户的多样性,随着联邦训练系统其他组件的技术极限开始逼近,改善现有联邦训练算法公平性的工作将变得尤为重要。在对公平性的研究中,并没有普遍采用的唯一公平性标准,而多种标准已被证明是互不相容的。解决这一问题的方法之一是 Awasthi 等人的在线公平性框架和算法[41]。将这些解决方案调整到联邦学习环境中并进一步加以改进,将是 ML 公平性理论和算法中具有挑战性的研究课题。
在传统的集中式机器学习环境中,过去十年中,人们在训练公平分类器方面取得了巨大进步,如约束优化、后转移方法和分布稳健优化 [223, 503, 225]。在联邦学习的环境中,数据以分散的方式分布,实践者可能无法获得与群体分布相匹配的无偏数据样本。
7 处理系统挑战
略