最详细完整版综述论文翻译“Advances and Open Problems in Federated Learning”

综述论文“Advances and Open Problems in Federated Learning”翻译分享

Advances and Open Problems in Federated
Learning这篇论文全面调研和概述了联邦学习中的最新进展和开放问题。

文章目录

摘要

联邦学习(Federated learning,FL)是一种机器学习设置,在这种设置中,许多客户端(例如移动设备或整个组织)在中央服务器(例如服务提供商)的协调下共同训练一个模型,同时保持训练数据的分散。联邦学习体现了专注数据收集和最小化的原则,并且可以减轻传统集中式机器学习和数据科学方法所产生的许多系统隐私风险和成本。受联邦学习研究的爆炸性增长的启发,本文讨论了最近的进展,并提出了一系列开放问题和挑战。

1 引言

联邦学习(Federated Learning,FL)是一种机器学习设置,其中许多客户端(例如移动设备或整个组织)在中央服务器(例如服务提供商)的协调下共同训练一个模型,同时保持训练数据的分散。它体现了专注数据收集和数据最小化的原则,并且可以减轻传统集中式机器学习所产生的许多系统隐私风险和成本。这个领域近来受到了来自研究和应用的显著兴趣。本文描述了联邦学习设置的定义特性和挑战,强调了重要的实际限制和考虑因素,然后列举了一系列有价值的研究方向。本文的目标是突出具有重要理论和实际意义的研究问题,并鼓励对可能在现实世界产生重大影响的问题进行研究。

“联邦学习”这个术语最早由McMahan等人于2016年引入[337]:“我们将我们的方法称为联邦学习,因为学习任务由参与设备(我们称之为客户端)的宽松联盟共同解决,并由中央服务器进行协调。”该术语引入了在大量不可靠设备之间进行不平衡和non-IID(独立同分布)数据划分作为定义挑战的概念。

在“联邦学习”这个术语被引入之前,已经有相关的工作在此之前进行。许多研究领域(包括密码学、数据库和机器学习)长期以来一直追求的目标是在不暴露数据的情况下分析和学习分布在许多拥有者之间的数据。从20世纪80年代开始,就开发了用于在加密数据上进行计算的密码学方法[396, 492],而Agrawal和Srikant [11]以及Vaidya等人[457]则是早期尝试使用集中式服务器从本地数据中学习并保护隐私的工作的例子。相反,即使在“联邦学习”这个术语被引入后,我们也没有意识到有任何单一的工作直接解决了所有联邦学习的挑战。因此,术语“联邦学习”为一组在隐私至关重要的分散数据上应用机器学习问题的特征、约束和挑战提供了一个方便的简称。

本文最初起源于2019年6月17日至18日在谷歌西雅图办公室举办的“联邦学习与分析研讨会”。在这两天的活动中,明确了需要一篇广泛调查联邦学习领域中许多开放挑战的论文。

许多讨论的问题的关键特性是它们本质上是跨学科的 —— 解决它们很可能不仅需要机器学习,还需要分布式优化、密码学、安全性、差分隐私、公平性、压缩感知、系统、信息理论、统计学等领域的技术。许多最困难的问题处于这些领域的交叉点,因此我们相信合作对于持续的进步至关重要。本文的一个目标是强调这些领域的技术如何潜在地结合在一起,提出有趣的可能性以及新的挑战。

联邦学习最初是在移动设备和边缘设备应用上引入的[337, 334],但如今越来越多的应用领域对联邦学习产生了浓厚兴趣,其中一些应用可能仅涉及少数相对可靠的客户端,例如多个组织合作训练一个模型。我们将这两种联邦学习设置称为"跨设备"和"跨机构"。鉴于这些变化,我们提出了一个稍微更广泛的联邦学习定义:

联邦学习 是一种机器学习设置,在中央服务器或服务提供者的协调下,多个实体(客户端)协作解决机器学习问题。每个客户端的原始数据存储在本地,不进行交换或传输;而是进行"聚焦更新",即更新的范围被狭窄地限定在为特定学习任务所需的最小信息,同时"聚合"尽早地在数据最小化的服务下进行。我们注意到这个定义将联邦学习与完全分布式(点对点)学习技术进行了区分,如第2.1节所讨论的。

虽然隐私保护数据分析已经研究了50多年,但直到过去十年才广泛部署解决方案(例如[177, 154])。跨设备联邦学习和联邦数据分析现在正在应用于消费者数字产品。谷歌在Gboard移动键盘、Pixel手机和Android Messages等方面广泛应用联邦学习。虽然谷歌开创了跨设备联邦学习,但现在对这种设置的兴趣更加广泛。例如,苹果正在iOS 13中使用跨设备联邦学习,应用于QuickType键盘和“Hey Siri”的语音分类器。doc.ai正在开发用于医学研究的跨设备联邦学习解决方案,而Snips已经探索了用于热词检测的跨设备联邦学习。

跨机构联邦学习的应用也在各个领域被提出或描述,包括再保险的金融风险预测、药物发现、电子健康记录挖掘、医学数据分割和智能制造等。

对联邦学习技术的不断增长需求导致了许多工具和框架的出现。其中一些例子包括TensorFlow Federated、Federated AI Technology Enabler、PySyft、Leaf、PaddleFL和Clara Training Framework等。

表1 对比了跨设备和跨机构联邦学习与传统单数据中心分布式学习在多个方面的差异。这些特征确定了实际联邦学习系统通常需要满足的许多约束条件,因此对于联邦学习中的开放挑战提供了动力和信息。这些特征将在接下来的部分中详细讨论。

这两种联邦学习变体被视为代表性和重要的例子,但不同的联邦学习设置可能具有不同的特征组合。在本文的其余部分,我们主要考虑跨设备联邦学习设置,除非另有说明,但其中许多问题也适用于其他联邦学习设置。第2节专门讨论了其他许多变体和应用。

接下来,我们将更详细地考虑跨设备联邦学习,着重关注在大规模部署中常见的实际方面;Bonawitz等人[81]对于特定生产系统提供了更多详细信息,包括对特定架构选择和考虑因素的讨论。

表 1: 典型的联邦学习设置与数据中心分布式学习的对比(例如,[150])。跨设备和跨机构联邦学习是联邦学习的两个典型示例,但不意味着穷尽所有情况。粗体标记的是联邦学习的主要特征,但其他特征对于确定适用的技术也是至关重要的。

1.1 跨设备联邦学习设置

本节从应用角度出发,与前面的部分不同,不试图给出严格的定义。相反,目标是描述跨设备联邦学习中的一些实际问题,以及它们如何适应更广泛的机器学习开发和部署生态系统。希望提供有用的背景和动机,同时帮助研究人员估计在实际系统中部署特定的新方法将会有多么简单。我们首先简要概述模型的生命周期,然后考虑联邦学习训练过程。

1.1.1 联邦学习中模型的生命周期

联邦学习过程通常由模型工程师为特定应用开发模型来推动。例如,自然语言处理领域的专家可以为虚拟键盘开发一个下一个单词预测模型。图1展示了主要组件和参与者。在高层次上,一个典型的工作流程如下:

  1. 问题识别:模型工程师确定使用联邦学习解决的问题。
  2. 客户端设备装备:如果需要,客户端设备(例如在手机上运行的应用程序)被装备以本地存储(有时间和数量限制)所需的训练数据。在许多情况下,应用程序已经存储了这些数据(例如,文本消息应用程序必须存储文本消息,照片管理应用程序已经存储了照片)。然而,在某些情况下,可能需要维护额外的数据或元数据,例如用于监督学习任务的用户交互数据来提供标签。
  3. 模拟原型(可选):模型工程师可以使用代理数据集在联邦学习模拟中原型化模型架构并测试学习超参数。
  4. 联邦模型训练:启动多个联邦训练任务以训练模型的不同变体或使用不同的优化超参数。
  5. (联邦)模型评估:在任务训练足够长时间后(通常为几天,见下文),对模型进行分析并选择合适的候选模型。分析可能包括在数据中心上计算的指标,或对模型进行联邦评估,将模型推送给保留客户端,在本地客户端数据上进行评估。
  6. 部署:最后,一旦选择了一个好的模型,它将经历标准的模型发布过程,包括手动质量保证,实时A/B测试(通常通过在一些设备上使用新模型,而在其他设备上使用以前一代模型来比较它们的实时表现),以及分阶段的发布(以便在影响太多用户之前发现并回滚不良行为)。模型的具体发布流程由应用程序的所有者设置,并且通常与模型的训练方式无关。换句话说,这一步对于使用联邦学习或传统数据中心方法训练的模型都适用。

联邦学习系统面临的主要实际挑战之一是尽可能使上述工作流程变得简单,理想情况下接近中心化训练的ML系统的易用性。虽然本文的大部分内容专注于联邦训练,但还包括许多其他组件,包括联邦分析任务,如模型评估和调试。改进这些是第3.4节的重点。现在,我们详细考虑单个联邦学习模型的训练(上述第4步)。

图1:展示了一个联邦学习中模型的生命周期以及在联邦学习系统中涉及的各个参与者。该图在第4节中从威胁模型的角度进行了重新审视

1.1.2 典型的联邦训练过程

现在,我们考虑一个包含McMahan等人提出的Federated Averaging算法[337]和许多其他变体的联邦学习训练模板;尽管可能存在一些变化,但这提供了一个常见的起点。

一个服务器(服务提供者)通过重复以下步骤来组织训练过程,直到训练停止(由监控训练过程的模型工程师决定):

  1. 客户端选择:服务器从符合资格要求的一组客户端中进行采样。例如,移动手机可能只在满足特定条件时才连接到服务器,如手机连接到充电器、使用不计费的Wi-Fi连接且处于空闲状态,以避免对设备用户产生影响。

  2. 广播:所选客户端从服务器下载当前的模型权重和训练程序(例如,一个TensorFlow图[2])。

  3. 客户端计算:每个选中的设备通过执行训练程序在本地计算模型的更新,例如在本地数据上运行随机梯度下降(就像在Federated Averaging中一样)。

  4. 聚合:服务器收集设备更新的聚合。为了提高效率,在获得足够数量的设备结果后,可能会在这一步丢弃一些慢速设备。此阶段还是许多其他技术的整合点,稍后将对这些技术进行讨论,包括:用于增加隐私保护的安全聚合、用于通信效率的聚合丢失压缩,以及用于差分隐私的噪声添加和更新剪辑。

  5. 模型更新:服务器根据来自参与当前轮次的客户端计算得出的聚合更新来本地更新共享模型。

表2给出了移动设备上典型联邦学习应用中涉及的数量级大小。

表2:典型跨设备联邦学习应用的数量级大小。

参数数量级大小
总设备数量 1 0 6 – 1 0 10 10^6 – 10^{10} 106–1010
每轮训练选取的设备数50 – 5000
参与训练一个模型的总设备数 1 0 5 – 1 0 7 10^5 – 10^7 105–107
模型收敛所需轮次500 – 10000
墙钟训练时间1 – 10天

这些是典型跨设备联邦学习应用涉及的数量级大小。模型的发布过程通常分阶段进行(以便在影响太多用户之前发现和回滚不良行为)。模型的发布过程由应用程序的所有者确定,并且通常与模型的训练方式无关。换句话说,这个步骤对于使用联邦学习训练的模型和传统数据中心训练的模型都适用。

在联邦学习中,将客户端计算、聚合和模型更新阶段进行分离并不是一个严格的要求,实际上它排除了某些类别的算法,例如异步 SGD,在这种算法中,每个客户端的更新立即应用于模型,而不需要与其他客户端的更新进行聚合。这样的异步方法可能简化系统设计的某些方面,并且在优化的角度上也可能是有益的(尽管这一点可能存在争议)。然而,上述方法具有一个重大优势,它允许在不同的研究领域之间实现关注点的分离:压缩、差分隐私和安全多方计算等方面的进展可以针对标准的原语进行开发,比如在分布式更新上计算总和或平均值,然后将其与任意的优化或分析算法组合在一起,只要这些算法是基于聚合原语表达的。

另外值得强调的是,在两个方面,联邦学习训练过程不应影响用户体验。首先,如上所述,虽然模型参数通常在每一轮联邦训练的广播阶段发送给某些设备,但这些模型只是训练过程中的暂时部分,而不用于向用户展示“实时”预测。这一点非常重要,因为训练ML模型是具有挑战性的,超参数的错误配置可能会导致模型产生错误的预测。相反,用户可见的模型使用被推迟到上述模型生命周期中的第6步中的发布过程。其次,训练本身应该对用户是不可见的——如客户端选择下所述,训练不会减慢设备或耗尽电池,因为它只在设备处于空闲状态且连接到电源时执行。然而,这些约束所引入的有限可用性直接导致后续讨论的开放性研究挑战,比如半周期性数据可用性和客户端选择中的潜在偏差。

1.2 联邦学习研究

本文的其余部分概述了许多开放性问题,这些问题是由真实世界联邦学习环境的约束和挑战所激发的,从在医院系统中训练医疗数据的模型到使用数亿个移动设备进行训练。毋庸置疑,大多数研究联邦学习问题的研究人员可能不会部署生产型联邦学习系统,也没有数百万台真实设备的访问权限。这导致了一个关键区别,即激发工作的实际环境与在仿真中进行的实验,后者提供了针对激励问题的适用性的证据。

这使得联邦学习研究在实验视角上与其他机器学习领域有所不同,从而需要在进行联邦学习研究时考虑其他因素。特别是,在强调开放性问题时,我们已经尝试在可能的情况下,指出相关的性能指标,这些指标可以在仿真中进行测量,以及使数据集更能代表真实世界性能的特征等。仿真的需求对于展示联邦学习研究也有影响。虽然并非旨在成为权威或绝对,但我们提出以下简单的建议,用于呈现解决我们所描述的开放性问题的联邦学习研究:

  • 如表1所示,联邦学习设置可以涵盖各种各样的问题。与设置和目标明确的领域相比,精确地描述感兴趣的特定联邦学习设置非常重要,特别是当提出的方法在所有设置下都可能不合适时(例如参与所有轮次的有状态客户端)。
  • 当然,任何仿真的细节都应该被呈现出来,以使研究可重复。但是,还要解释仿真旨在捕捉真实世界设置的哪些方面(以及不捕捉的方面),以有效地证明在仿真问题上的成功意味着对真实世界目标的有用进展。我们希望本文中的指导能对此有所帮助。
  • 隐私和通信效率在联邦学习中始终是一级关切,即使实验是在单个计算机上使用公共数据进行的仿真。与其他类型的机器学习相比,对于任何提议的方法,清楚地说明计算发生的位置以及何时进行通信非常重要。

联邦学习仿真的软件库以及标准数据集可以有助于解决有效进行联邦学习研究的挑战;附录A概述了一些当前可用的选项。为不同的联邦学习设置(跨设备和跨领域)开发标准评估指标和建立标准基准数据集仍然是持续工作的重要方向。

1.3 组织结构

第2节基于表1中的思想,探索了除原始关注点之外的其他联邦学习设置和问题,超越了跨设备设置。第3节然后着重探讨如何提高联邦学习的效率和效果的核心问题。第4节对威胁模型进行了认真考虑,并考虑了一系列技术,以实现严格的隐私保护目标。与所有机器学习系统一样,在联邦学习应用中,可能有动机操纵正在训练的模型,并且各种类型的失败是不可避免的;这些挑战在第5节中进行了讨论。最后,我们在第6节中解决了提供公平和无偏模型的重要挑战。

2 放宽核心联邦学习假设:应用于新兴环境和场景

在本节中,我们将探讨与前一节中讨论的核心联邦学习假设相关的研究领域。尽管这些领域不是本文其余部分的主要重点,但在这些领域取得的进展可能会激发对下一代生产系统设计的灵感。

2.1 完全去中心化 / 点对点分布式学习

在联邦学习中,中央服务器协调训练过程并接收所有客户端的贡献。因此,服务器是一个中央参与者,同时也可能代表单点故障。虽然在某些应用场景下,大型公司或组织可以扮演这个角色,但在更具协作性的学习场景中,一个可靠且强大的中央服务器可能并不总是可用或理想的选择[459]。此外,当客户端数量非常大时,服务器甚至可能成为瓶颈,正如Lian等人所示[305](尽管通过精心设计系统,如[81],可以缓解这个问题)。

完全去中心化学习的关键思想是通过个体客户端之间的点对点通信来取代与服务器的通信。通信拓扑被表示为一个连通图,其中节点是客户端,边表示两个客户端之间的通信通道。网络图通常被选择为稀疏图,具有较小的最大度数,以便每个节点只需与少数几个对等节点进行消息的发送/接收;这与服务器-客户端架构的星形图相反。在完全去中心化的算法中,每个客户端执行一个局部更新并与其图中的邻居交换信息,一个轮次对应于这个过程。在机器学习的背景下,局部更新通常是局部(随机)梯度步骤,并且通信涉及将本地模型参数与邻居的参数进行平均。注意,不再有像标准联邦学习中的全局模型状态,但是该过程可以被设计为使所有局部模型逐渐收敛到所需的全局解,即逐渐达成共识。虽然多智能体优化在控制领域有着悠久的历史,但最近在机器学习中也考虑了完全去中心化的SGD和其他优化算法,用于改进数据中心的可扩展性[29]以及分布式设备网络[127, 459, 443, 59, 278, 291, 173]。研究人员考虑了无向网络图,尽管有向网络(编码单向通道,可能出现在实际场景中,如社交网络或数据市场)的情况也在[29, 226]中进行了研究。

值得注意的是,即使在上述描述的去中心化环境中,仍可能存在一个中央机构负责设置学习任务。例如,考虑以下问题:在去中心化环境中,由谁决定要训练的模型?使用什么算法?使用什么超参数?当某些事情不如预期时,由谁负责调试?在回答这些问题时,参与客户端对中央机构的一定程度的信任仍然是必要的。或者,这些决策可以由提出学习任务的客户端来做出,或者通过共识方案进行协作决策(见第2.1.2节)。

表3提供了联邦学习和点对点学习之间的比较。尽管去中心化学习的架构假设与联邦学习不同,但它通常可以应用于类似的问题领域,许多相同的挑战也会出现,并且在研究社区中有显著的重叠。因此,在本文中我们也考虑了去中心化学习;在本节中,我们明确考虑了去中心化方法的特定挑战,但在其他章节中也有许多相同的开放问题出现在去中心化情况下。

Federated learningFully decentralized (peer-to-peer) learning
管理与协调中央协调服务器或服务负责组织训练,但不会接触原始数据无中央协调,采用对等连接的拓扑结构,可能具有动态的连接图
宽区通信通常使用集线器与节点的拓扑结构,集线器代表协调服务提供者(通常不包含数据),节点连接到客户端采用对等连接的拓扑结构,可能具有动态的连接图

表3:Federated learning和Fully decentralized (peer-to-peer) learning的关键区别对比,请注意,如同前面提到的,Fully decentralized learning也可以进一步细分为不同的用例,其区别类似于表1中所描述的跨数据源和跨设备的Federated learning。

2.1.1 算法挑战

对于机器学习中使用分散方案的真实世界可用性,仍然存在许多重要的算法问题。有些问题类似于具有中央服务器的联邦学习的特殊情况,而其他挑战则是完全去中心化或无信任的附加副作用。我们在下面概述了一些特定的领域。

网络拓扑结构和异步对去中心化SGD的影响
对于学习的完全去中心化算法,应该能够适应客户端的有限可用性(客户端在执行过程中临时不可用、退出或加入)以及网络的有限可靠性(可能发生消息丢失)。对于广义线性模型的特殊情况,使用对偶结构的方案可以实现一些所需的鲁棒性属性[231],但对于深度学习和SGD的情况,这仍然是一个未解决的问题。当网络图是完全连接的,但消息有固定的丢失概率时,余等人[498]表明可以实现与可靠网络相当的收敛速率。其他开放的研究问题涉及非独立同分布数据分布、更新频率、高效的通信模式和实际收敛时间[443],我们在下面会更详细地概述。

良好连接或更密集的网络可以加快共识并提供更好的理论收敛速率,这取决于网络图的谱间隔。然而,当数据是独立同分布时,较稀疏的拓扑结构不一定会在实践中影响收敛速度:这在[357]中进行了理论分析。更密集的网络通常会产生与节点度数成正比的通信延迟。大多数优化理论研究并未明确考虑拓扑结构如何影响运行时,即完成每个SGD迭代所需的墙钟时间。Wang等人[469]提出了MATCHA,这是一种基于匹配分解采样的分散SGD方法,它可以在保持相同的误差收敛速度的同时,减少每次迭代的通信延迟。其关键思想是将图拓扑结构分解为由不相交通信链路组成的匹配,并在每次迭代中精心选择这些匹配的子集。这个子图的序列会导致在连接关键链路上更频繁的通信(确保快速的误差收敛),而在其他链路上通信较少(节省通信延迟)。

去中心化SGD的设置自然地适合采用异步算法,其中每个客户端独立地在随机时间变为活动状态,消除了全局同步的需要,潜在地提高了可扩展性[127, 459, 59, 29, 306]。

去中心化本地更新SGD

在完全去中心化的环境中,进行几个本地更新步骤后再进行通信轮次的方案的理论分析比仅使用单个SGD步骤(例如mini-batch SGD)的方案更具挑战性。虽然这个问题将在后面的第3.2节中讨论,但在完全去中心化的环境下,也同样存在挑战。对于依赖单个本地更新步骤的方案,通常可以证明在非独立同分布的本地数据集情况下能够收敛 [278, 279]。而对于存在多个本地更新步骤的情况,[467, 280] 最近提供了收敛性分析。此外,[469]为非独立同分布数据情况下的特定方案(基于匹配分解采样)提供了收敛性分析。然而,总体来说,理解非独立同分布数据分布下的收敛性,以及如何设计模型平均策略以实现最快的收敛性仍然是一个待解决的问题。

个性化与信任机制

与跨设备的联邦学习情况类似,对于完全去中心化的场景下,根据个体客户端的非独立同分布数据分布设计算法来学习个性化模型是一项重要任务。[459, 59]的工作引入了完全去中心化的算法,通过对具有相似任务(即,相似数据分布)的客户端进行模型参数平滑,以协作地为每个客户端学习个性化模型。Zantedeschi等人[504]进一步学习了与个性化模型一起的相似性图。在去中心化的环境中,一个关键的独特挑战是使这些方案对恶意行为者或不可靠数据或标签的贡献具有鲁棒性。在没有受信任的中央服务器的情况下,使用激励机制或机制设计与去中心化学习结合是一个新兴且重要的目标,但可能更难实现

梯度压缩和量化方法

在潜在的应用中,客户端通常会受到通信带宽和能源使用的限制。将现有的压缩通信方案(参见第3.5节)从中央协调器辅助设置推广到完全去中心化的设置,而不会对收敛性产生负面影响,是一个活跃的研究方向 [278, 391, 444, 279]。另一个补充的思路是设计自然产生稀疏更新的去中心化优化算法[504]。

隐私

完全去中心化学习中的一个重要挑战是防止任何一個客户端通过其共享的更新信息重构另一个客户端的私有数据,同时保持学习模型的良好效用。差分隐私(见第4节)是缓解此类隐私风险的标准方法。在去中心化联邦学习中,可以通过每个客户端在本地添加噪声来实现差分隐私,例如[239, 59]中所做的方式。不幸的是,这种局部隐私方法通常会以大量的效用成本为代价。此外,基于安全聚合或安全洗牌的分布式方法,旨在改善标准联邦学习中隐私效用权衡的情况(见第4.4.3节),并不容易与完全去中心化的算法结合。在完全去中心化的算法中实现隐私和效用之间更好的权衡的可能途径是依赖于去中心化本身,例如考虑适当的局部差分隐私的放宽[146]。

2.1.2 实际挑战

对于完全去中心化学习,另一个问题是如何在实际中实现它。本节概述了一类基于分布式账本的相关思想,但其他方法尚未被探索。

区块链是在不同用户之间共享的分布式账本,使得数字交易成为可能,包括加密货币的交易,而无需中央机构。特别地,智能合约允许在区块链上执行任意代码,本质上是一个大规模复制的最终一致状态机。在联邦学习方面,使用这种技术可以通过使用智能合约进行模型聚合来实现全局服务器的去中心化,其中参与的客户端执行智能合约的可能是不同的公司或云服务。

然而,在今天的区块链平台上,如以太坊[478],区块链上的数据默认是公开可用的,这可能会阻止用户参与去中心化的联邦学习协议,因为数据的保护通常是FL的主要激励因素。为了解决这些问题,我们可以修改现有的隐私保护技术以适应去中心化联邦学习的场景。首先,为了防止参与的节点单独利用他们各自提交的模型更新来进行不正当行为,可以使用已存在的安全聚合协议(确保参与节点不能通过操纵自己的模型更新来损害整体系统的安全性和效用)。在跨设备联邦学习中已经提出了一种实际的安全聚合协议,由Bonawitz等人[80]提出,它有效地处理了参与者退出的情况,但协议的复杂性相应增加。另一种方法是让每个客户端在区块链上抵押一笔加密货币,如果他们在执行过程中退出,则会受到惩罚。在不需要处理参与者退出的情况下,安全聚合协议可以大大简化。

另一种实现安全聚合的方式是使用像Oasis Protocol [119]这样的机密智能合约,在安全隔离环境中运行。通过这种方式,每个客户端可以简单地提交一个加密的本地模型更新,知道该模型将通过远程证明在安全硬件内解密和聚合(但请参见第4.1节中有关深度隐私的讨论)。

为了防止任何一个客户端试图通过使用整体模型来还原另一个客户端的私人数据,联邦学习中提出了一种叫做客户端级差分隐私[338]的方法。这个方法通过在整体模型上加入一些随机的“噪音”,足够强大,能够隐藏掉任何一个客户端的更新。在区块链环境中,每个客户端可以在进行本地模型优化步骤之后,添加一些高斯随机噪音,并将这个模型提交到区块链上。要确保提交的噪音足够强,能够在整体上达到和之前方法相同的保护水平。最后,区块链上的整体模型可以被加密,只有参与的客户端持有解密的“钥匙”,这样可以保护模型不被公众访问到。

2.2 跨数据源联邦学习

与跨设备联邦学习的特征相比(见表1),跨数据源联邦学习在整体设计的某些方面具有更大的灵活性,但同时也呈现出一些更难实现的特性。本节讨论了其中的一些差异。

跨数据源联邦学习的场景可能涉及多家公司或组织共同希望基于他们所有的数据进行模型训练,但又不能直接共享数据。这可能是由于保密性约束或法律限制,甚至在单个公司内,由于不能在不同地理区域之间集中数据。这些跨数据源应用引起了相当大的关注。

数据划分
在跨设备联邦学习中,假设数据是按示例(样本ID)进行划分。而在跨数据源联邦学习中,除了按示例进行划分,按特征进行划分也具有实际意义。一个例子是两家不同行业的公司拥有相同或重叠的客户,比如同一城市的一家本地银行和一家本地零售公司。这种差异也被Yang等人称为水平和垂直联邦学习 [490]。

在按特征进行划分的跨数据源联邦学习中,与按示例进行划分的设置相比,采用了非常不同的训练架构。它可能涉及一个中立的中央服务器,也可能不涉及,具体取决于训练算法的细节。在这种情况下,客户端交换特定的中间结果而不是模型参数,以帮助其他方的梯度计算;参见 [490,第2.4.2节]。在这种设置中,已经提出了诸如安全多方计算或同态加密等技术,以限制其他参与方从观察训练过程中推断出的信息量。这种方法的缺点是训练算法通常取决于追求的机器学习目标的类型。目前提出的算法包括树形结构 [118]、线性和逻辑回归 [490、224、316]以及神经网络 [317]。类似于联邦平均的局部更新(参见第3.2节)已被提出来解决特征划分系统中的通信挑战 [316],而 [238、318] 则研究了这类系统中固有的安全性和隐私相关的挑战。联邦迁移学习 [490] 是另一个概念,考虑到数据方在用户空间或特征空间上只有部分重叠的具有挑战性的情景,并利用现有的迁移学习技术 [365] 来协作构建模型。现有的形式只限于两个客户端的情况。

当一个单一的公司由于法律约束而不能集中其数据,或者具有类似目标的组织想要协作改进其模型时,按示例进行划分通常在跨数据源联邦学习中是相关的。例如,不同的银行可以共同训练欺诈检测的分类或异常检测模型 [476],医院可以构建更好的诊断模型 [139] 等等。

目前,支持上述应用的开源平台已经推出,名为Federated AI Technology Enabler (FATE) [33]。同时,IEEE P3652.1 联邦机器学习工作组正在致力于联邦AI技术框架的标准制定。其他平台包括[125],主要关注于一系列医学应用,以及[321],用于企业用例。更多细节请参见附录A。

激励机制
除了开发适用于联邦学习的新算法技术外,为了鼓励诚实参与,激励机制的设计是一个重要的实际研究问题。这种需求可能出现在跨设备的设置中(例如 [261, 260]),但在跨数据源的设置中尤其相关,因为参与方可能同时是商业竞争对手。激励可以采用货币支付的形式 [499] 或具有不同性能水平的最终模型 [324]。提供与每个客户贡献相称性能的模型选项,特别适用于在联合学习情况下存在竞争的FL参与者之间。客户可能担心将他们的数据贡献给训练联邦学习模型将使他们的竞争对手受益,而这些竞争对手并未贡献同样多的数据,却仍然获得相同的最终模型(即免费骑车者问题)。相关目标包括如何将由联邦学习模型产生的收益分配给贡献数据的所有者以维持长期参与,并且如何将激励与对抗性数据所有者防御决策相联系,以增强系统安全性,并优化数据所有者的参与以提高系统效率。

差分隐私
在第4.1节关于参与方和威胁模型的讨论在跨数据源联邦学习中也是相关的。然而,保护不同的参与方可能有不同的优先事项。例如,在许多实际场景中,最终训练好的模型只会发布给参与训练的方,这使得对“其余世界”的担忧变得不那么重要。

另一方面,对于一个在实践中具有说服力的主张,我们通常需要局部差分隐私的概念,因为来自其他参与方的潜在威胁可能更为重要。如果参与方不被视为重要威胁,每个参与方可以控制来自其各自用户的数据,并可能需要在这种用户级别上提供正式的隐私保证。根据应用程序,可能还值得追求其他目标。这个领域尚未系统地探索。

张量分解
还有一些研究致力于跨数据源联邦张量分解,在这种情况下,多个站点(每个站点都有具有相同特征的数据集,即水平分区)通过仅与协调服务器共享中间因子来共同执行张量分解,同时在每个站点保持数据私密。在现有的研究中,[272]使用了基于交替方向乘法器(ADMM)的方法,而[325]通过使用弹性平均SGD(EASGD)算法提高了效率,并进一步确保了中间因子的差分隐私性质。

2.3 分割学习

与前面关注数据分区和通信模式的设置不同,分割学习的关键思想是在客户端和服务器之间基于每层进行模型的拆分执行,可以用于训练和推断。

在最简单的分割学习配置中,每个客户端计算深度网络的前向传播,直到一个特定的层,称为切割层。切割层的输出称为“smashed data”,然后发送给另一个实体(可以是服务器或另一个客户端),该实体完成其余的计算。这样一轮前向传播就完成了,而无需共享原始数据。然后,梯度可以从最后一层回传到切割层,类似地进行。只有在切割层的梯度被发送回客户端,在客户端完成其余的反向传播。这个过程持续进行直到收敛,而客户端不直接访问彼此的原始数据。这个设置如图2(a)所示,与此设置的一个变体,即标签也不与原始数据一起共享,如图2(b)所示。分割学习在数据按特征分区的情况下也进行了研究[101]。

图2:分割学习配置,显示在基本设置中不传输原始数据,而在U形分割学习设置中,客户端和服务器实体之间也不传输原始数据和标签。

在几种情况下,[421]比较了分割学习和联邦学习的整体通信需求。分割学习在训练中引入了另一个维度的并行性,即在模型的不同部分之间进行并行化,例如在客户端和服务器之间。[245, 240]中的想法打破了部分网络之间的依赖关系,并通过在不同部分并行化计算来减少总的集中训练时间,这在这里也是相关的。然而,探索在边缘设备上的分割学习的这种并行化仍然是一个悬而未决的问题。分割学习还可以通过将客户端端模型组件与服务器端模型组件匹配,实现自动模型选择,如ExpertMatcher [413]所示。

然而,通常情况下,传递的值可能会泄露关于底层数据的信息。这种泄露的程度以及是否可以接受可能会因应用程序和配置而异。一种称为NoPeek SplitNN的分割学习变体通过减少与原始数据的距离相关性[461, 442]来降低通过通信的激活函数的潜在泄漏,同时通过分类交叉熵保持良好的模型性能。其关键思想是将原始数据点和传递的smashed data之间的距离相关性最小化。否则,如果没有使用NoPeek SplitNN,传递的对象可能包含与输入数据高度相关的信息,使用该技术还可以使拆分相对较早地进行,因为它提供了去相关性。另一种通过特定学习对客户端激活函数中的通道进行修剪,从而最小化在分割学习中传递信息量的工程驱动方法也已经提出[422]。总体而言,第4节中的讨论在这里也是相关的,并且针对分割学习提供明确隐私保证的分析仍然是一个悬而未决的问题。

2.4 总结

联邦学习的动机与相关的研究领域密切相关。

  • 完全去中心化学习(第2.1节)消除了需要中央服务器协调整个计算的需求。除了算法上的挑战,实现这一想法的实际问题还包括需要什么形式的可信中央权威来设置任务。
  • 跨数据源联邦学习(第2.2节)允许解决不同类型的建模约束问题,例如数据按示例和/或特征进行分割,并在为客户端制定正式隐私保证或激励机制时面临不同的关注点。
  • 分割学习(第2.3节)是一种将模型的执行分割在客户端和服务器之间的方法。它可以提供不同的总体通信约束选项,但仍缺乏关于何时传输的值会透露敏感信息的详细分析。

3. 提高效率与效果

在这一节中,我们探讨了多种技术和开放性问题,以应对使联邦学习更加高效和有效的挑战。这涵盖了许多可能的方法,包括但不限于:开发更好的优化算法;为不同的客户提供不同的模型;使联邦学习环境下的机器学习任务(如超参数搜索、架构搜索和调试)更加便捷;提高通信效率等。

在解决这些目标中的一个基本挑战是非独立同分布(non-IID)数据的存在,因此我们首先对这个问题进行调查,并突出潜在的缓解方法。

3.1 非独立同分布(Non-IID)数据在联邦学习中的应用

虽然独立同分布(IID)的含义通常很清楚,但数据可以以多种方式呈现非独立同分布。在本节中,我们提供了一种针对任何客户端分区数据集可能出现的非独立同分布数据制度的分类。最常见的相关性和非同一性源于每个客户端对应于特定的用户,特定的地理位置和/或特定的时间窗口。这个分类与数据集偏移的概念有密切关系[353,380],后者研究训练分布和测试分布之间的差异;在这里,我们考虑每个客户端的数据分布的差异。

在下文中,考虑一个带有特征 x x x和标签 y y y的监督任务。联邦学习的统计模型涉及两个抽样级别:访问数据点首先需要对可用客户端进行抽样, i ∼ Q i \sim Q iQ,分布在可用客户端上,然后从该客户端的本地数据分布中绘制示例 ( x , y ) ∼ P i ( x , y ) (x, y) \sim P_i(x, y) (x,y)Pi(x,y)

当提及联邦学习中的非独立同分布数据时,通常指的是不同客户端 i i i j j j P i P_i Pi P j P_j Pj之间的差异。然而,还需要注意分布 Q Q Q P i P_i Pi可能随时间变化,引入了“非独立同分布”的另一个维度。

为了完整起见,我们指出,即使是考虑单个设备上的数据集,如果数据的顺序不够随机,例如按时间排序,那么局部独立性也会受到侵害。例如,视频中连续的帧高度相关。客户端内相关性的来源通常可以通过本地混洗来解决。

非同一分布的客户数据:我们首先调查了数据偏离完全独立同分布的一些常见方式,即 P i ≠ P j P_i \neq P_j Pi=Pj 对于不同的客户 i i i j j j。将 P i ( x , y ) P_i(x, y) Pi(x,y) 重新表示为 P i ( y ∣ x ) P i ( x ) P_i(y | x)P_i(x) Pi(yx)Pi(x) P i ( x ∣ y ) P i ( y ) P_i(x | y)P_i(y) Pi(xy)Pi(y) 可以更精确地描述这些差异。

  • 特征分布偏斜(协变量偏移):即使 P ( y ∣ x ) P(y | x) P(yx) 是共享的,边际分布 P i ( x ) P_i(x) Pi(x) 可能在不同客户之间变化。例如,在手写识别领域,写相同字词的用户可能仍具有不同的笔画宽度、倾斜度等。
  • 标签分布偏斜(先验概率偏移):即使 P ( x ∣ y ) P(x | y) P(xy) 相同,边际分布 P i ( y ) P_i(y) Pi(y) 可能在不同客户之间变化。例如,当客户与特定地理区域相关联时,标签的分布会在客户之间变化 - 袋鼠仅存在于澳大利亚或动物园;一个人的脸仅在全球少数几个地点中出现;对于移动设备键盘,某些表情符号由一些人群使用而其他人不使用。
  • 相同标签,不同特征(概念漂移):即使 P ( y ) P(y) P(y) 是共享的,条件分布 P i ( x ∣ y ) P_i(x | y) Pi(xy) 可能在不同客户之间变化。相同的标签 y y y 对于不同客户的特征 x x x 可能会有很大的不同,例如由于文化差异、天气影响、生活水平标准等。例如,房屋的图像在世界各地可能会有很大的变化,服装的物品也会有很大的差异。即使在美国国内,冬天停在路边的汽车图像也只会在国家的某些地区被覆盖上雪。相同的标签在不同时间和不同时间尺度上看起来也可能截然不同:白天与夜晚、季节效应、自然灾害、时尚和设计趋势等。
  • 相同特征,不同标签(概念变化):即使 P ( x ) P(x) P(x) 相同,条件分布 P i ( y ∣ x ) P_i(y | x) Pi(yx) 可能在不同客户之间变化。由于个人偏好,训练数据项中相同的特征向量可能具有不同的标签。例如,反映情感或下一个词预测器的标签具有个人和地区的变化。
  • 数量偏斜或不平衡:不同客户可能拥有大量不同的数据。
    实际世界的联邦学习数据集可能包含这些效应的混合,对于实际分区数据集中跨客户差异的表征是一个重要的开放问题。大多数关于合成non-IID数据集的实证工作(例如 [337, 236])都侧重于标签分布偏斜,其中non-IID数据集是通过基于标签对现有“平坦”数据集进行分区形成的。更好地了解实际non-IID数据集的性质将允许构建受控但现实的non-IID数据集,以测试算法并评估其对不同程度客户异质性的适应性。此外,不同的non-IID模式可能需要开发不同的缓解策略。例如,在特征分布偏斜下,由于假定 P ( y ∣ x ) P(y | x) P(yx) 是共享的,问题至少在原则上是明确的,训练学习 P ( y ∣ x ) P(y | x) P(yx) 的单个全局模型可能是适当的。当相同的特征映射到不同客户的不同标签时,可能需要某种形式的个性化(第3.3节)来学习真实的标签函数。

独立性违规:当分布 Q Q Q 在训练过程中发生变化时,独立性违规就会引入。一个显著的例子是跨设备联邦学习,设备通常需要满足资格要求才能参与训练(见第1.1.2节)。设备通常在当地时间晚上(更有可能在充电、免费Wi-Fi和闲置时)满足这些要求,因此可能存在显著的日变模式。此外,由于一天中的当地时间直接对应于经度,这在数据来源方面引入了强烈的地理偏差。Eichner等人[171]描述了这个问题以及一些缓解策略,但仍然存在许多未解决的问题。

数据集转移:最后,我们注意到分布 Q Q Q P P P 的时间依赖性可能会引入经典意义上的数据集转移(训练和测试分布之间的差异)。此外,其他标准可能会使得适于训练联邦模型的客户集合与部署该模型的客户集合不同。例如,训练可能需要具有比推理所需更多内存的设备。这些问题在第6节中更深入地探讨。将处理数据集转移的技术调整为联邦学习是另一个有趣的未解决问题。

3.1.1 处理非独立同分布数据的策略

在非独立同分布数据的情况下,最初的联邦学习目标——在客户数据集的联合上训练单个全局模型——变得更加困难。一个自然的方法是修改现有算法(例如通过不同的超参数选择)或者开发新算法,以更有效地实现这一目标。这种方法在第3.2.2节中进行了探讨。

对于某些应用,可能可以通过增强数据来使得客户之间的数据更加相似。一种方法是创建一个可以全局共享的小型数据集。这个数据集可以来自公开可用的代理数据源,来自客户数据的不涉及隐私的独立数据集,或者根据Wang等人[473]的方法从原始数据中提取的数据集。

客户目标函数的多样性使得如何构建目标函数的问题更加重要——不再清晰地将所有样本视为相等。替代方法包括限制来自任一用户的数据贡献(这对于隐私也很重要,请参见第4节),并在客户之间引入其他公平概念;请参见第6节的讨论。

但是,如果我们有能力在每个设备上运行本地数据的训练(这对于全局模型的联邦学习是必要的),那么训练单个全局模型是否是正确的目标呢?有很多情况下,拥有单一模型是更可取的,例如为没有数据的客户提供模型,或者在部署之前进行手动验证和质量保证。尽管如此,由于本地训练是可能的,每个客户都可以拥有定制的模型。这种方法几乎可以将非独立同分布问题从一个问题转化为一种特性——因为每个客户都有自己的模型,客户的身份实际上对模型进行参数化,从而使一些病态但退化的非独立同分布变得微不足道。例如,如果对于每个 i i i P i ( y ) P_i(y) Pi(y) 仅在单个标签上有支持,那么找到高准确度的全局模型可能非常具有挑战性(特别是如果 x x x 相对不具信息性),但训练高准确度的本地模型是微不足道的(只需要一个常数预测)。这种多模型方法在第3.3节中进行了深入探讨。除了处理非独立同分布的客户分布外,使用多个模型还可以解决由于客户可用性变化引起的独立性违规问题。例如,Eichner等人[171]的方法使用单次训练运行,但对不同的迭代进行平均,以便基于客户的时区/经度提供不同的推断模型。

3.2 联邦学习的优化算法

在典型的联邦学习任务中,目标是学习一个最小化整个训练数据集的经验风险函数的单一全局模型,即跨所有客户端的数据的并集。联邦优化算法与标准分布式训练方法的主要区别在于需要解决表1中的特征 — 在优化中,非独立同分布和不平衡的数据、有限的通信带宽以及不可靠和有限的设备可用性尤为显著。

在设备总数巨大的FL设置中(例如跨移动设备),需要算法每轮只需要少数几个客户端参与(客户端采样)。此外,每个设备可能最多只参与一次给定模型的训练,因此需要无状态的算法。这排除了直接应用许多在数据中心环境中非常有效的方法,例如基于状态的优化算法如 A D M M ADMM ADMM,以及基于状态的压缩策略,其根据先前轮次的剩余压缩错误修改更新。

联邦学习算法的另一个重要实际考虑因素是与其他技术的可组合性。优化算法不会在生产部署中孤立运行,而是需要与其他技术(如加密安全聚合协议(第4.2.1节)、差分隐私(DP)(第4.2.2节)以及模型和更新压缩(第3.5节))结合使用。如在第1.1.2节中所述,许多这些技术可以应用于"选择客户求和"和"向选择的客户广播"等基本操作,因此以这些基本操作为基础的表达优化算法提供了有价值的关注点分离,但也可能排除某些技术,例如异步应用更新。

在联邦学习的优化中,最常见的方法之一是联邦平均算法[337],这是本地更新或并行SGD的一种改进。在这里,每个客户端在本地运行一些SGD步骤,然后将更新后的本地模型进行平均,以形成协调服务器上的更新后全局模型。算法1中给出了伪代码。

进行本地更新并较少与中央服务器频繁通信,解决了尊重数据局部性约束和移动设备客户端有限通信能力的核心挑战。然而,从优化理论的角度来看,这类算法族群还会引入一些新的算法挑战。在第3.2节中,我们讨论了对于IID和non-IID数据在不同客户端之间的分布的情况下,联邦优化算法的最新进展和开放挑战。针对联邦学习环境特点开发新算法仍然是一个重要的未解决问题。

3.2.1 针对IID数据的优化算法和收敛速率

尽管针对每个客户端所优化的客户函数可以基于各种不同的假设,但最基本的区别是在于假设数据是否是独立同分布(IID)的。在形式上,IID数据意味着每个用于客户端本地更新的小批量数据在统计上与从整个训练数据集(即所有客户端本地数据集的并集)中均匀抽取的样本(带有替换)是相同的。由于每个客户端独立收集其自己的训练数据,这些数据在大小和分布上都有所不同,并且这些数据不与其他客户端或中央节点共享,因此在实际中几乎从不满足IID假设。然而,这种假设极大地简化了联邦优化算法的理论收敛分析,并且建立了一个可以用来理解non-IID数据对优化速率影响的基准。因此,自然的第一步是要了解IID数据情况下的优化算法情况。在形式上,对于IID设置,我们将随机优化问题标准化为:
$$

\min_{x\in\mathbb{R}^m} F(x) := \mathbb{E}_{z\sim P}[f(x; z)]。

KaTeX parse error: Can't use function '$' in math mode at position 88: …可以计算K个样本(例如小批量)$̲z_1,\ldots,z_K$…
||\nabla f(x, z) - \nabla f(y, z)|| \leq H||x - y|| 。
KaTeX parse error: Can't use function '$' in math mode at position 12: 我们还假设对于所有的$̲x$,随机梯度$\nabla_…
\mathbb{E}_{z\sim P} ||\nabla_x f(x; z) - \nabla F(x)|| \leq \sigma^2。
KaTeX parse error: Can't use function '$' in math mode at position 7: 在分析经过$̲T$次迭代后算法的收敛速率时,…
\mathbb{E}[F(x_T)] - F(x^*),
$$
其中 x ∗ = arg ⁡ min ⁡ x F ( x ) x^* = \arg\min_x F(x) x=argminxF(x)。这里讨论的所有收敛速率都是对这个术语的上界。表5总结了这类函数的收敛结果。

Federated averaging(也称为并行SGD/本地SGD)与两个自然基线进行竞争:首先,我们可以在每轮的本地更新中保持 x x x不变,并在当前 x x x上计算总共 K M KM KM个梯度,以运行加速小批量SGD。用 x ˉ \bar{x} xˉ表示这个算法的 T T T次迭代的平均值。然后我们有如下上界:
O ( H T 2 + σ T K M ) \mathcal{O}\left(\frac{H}{T^2}+\frac{\sigma}{\sqrt{TKM}}\right) O(T2H+TKM σ)
对于凸目标函数[294, 137, 151]。需要注意,第一个期望是针对训练过程中 z z z的随机性的。

第二个自然基线是忽略除 M M M个活跃客户端之外的所有客户端,这样可以允许(加速的)顺序SGD在 K T KT KT步中执行。应用上述相同的一般边界,这种方法提供了如下上界:
O ( H ( T K ) 2 + σ T K ) . \mathcal{O}\left(\frac{H}{(TK)^2}+\frac{\sigma}{\sqrt{TK}}\right). O((TK)2H+TK σ).

通过比较这两个结果,我们可以看到小批量SGD达到了最优的“统计”项( σ / T K M \sigma/ \sqrt{TKM} σ/TKM ),而在单个设备上的SGD(忽略其他设备的更新)则实现了最优的“优化”项( H / ( T K ) 2 H/ (TK)^2 H/(TK)2)。

本地更新SGD方法的收敛分析是当前研究的一个活跃领域[434, 310, 500, 467, 390, 371, 269, 481]。首个关于本地更新SGD方法的收敛结果是在Stich [434]的强凸假设和Yu等人[500]的非凸目标函数的有界梯度范数假设下得到的。这些分析可以在子优化项的情况下达到所需的 σ / T K M \sigma/ \sqrt{TKM} σ/TKM 统计项(在表5中,我们总结了这些结果,对于凸函数的中间情况)。

表格5:在IID数据设置中,一组(非全面性的)分布式优化算法的收敛速率。我们假设每轮迭代中有M个设备参与,损失函数为 H − s m o o t h H-smooth Hsmooth,凸函数,并且我们可以获得方差最多为 σ 2 σ^2 σ2的随机梯度。所有速率都是在T次迭代之后的(可能带有一些迭代平均方案的)上界(对应于公式(1))。

通过去除有界梯度假设,Wang和Joshi [467]以及Stich和Karimireddy [435]进一步改进了优化项,使之达到了 H T H\sqrt{T} HT 。这些结果表明,如果本地步数 K K K小于 T / M 3 T/M^3 T/M3,则(最优的)统计项占主导地位。然而,对于典型的跨设备应用程序,我们可能有 T = 1 0 6 T = 10^6 T=106 M = 100 M = 100 M=100(表2),这意味着 K = 1 K = 1 K=1

在文献中,收敛界限通常伴随着关于如何选择 K K K以达到与小批量SGD的收敛速率渐近相同的统计项的讨论。对于强凸函数,这个界限在Khaled等人[269]和Stich和Karimireddy [435]的工作中得到了改进。对于非凸目标,Yu等人[500]表明,如果本地更新的次数 K K K小于 T 1 / 3 / M T^{1/3}/M T1/3/M,则本地SGD可以渐近地达到 1 / T K M 1/ \sqrt{TKM} 1/TKM 的误差界。这个收敛保证由Wang和Joshi [467]进一步改进,他们去除了有界梯度范数的假设,并且表明本地更新的次数可以高达 T / M 3 T/M^3 T/M3。[467]中的分析还可以应用于具有本地更新的其他算法,从而为分布式SGD提供了第一个收敛保证,其中包括本地更新(或周期性本地更新)和弹性平均SGD [505]。Haddadpour等人[216]改进了Wang和Joshi [467]对满足Polyak-Lojasiewicz(PL)条件[262](强凸性的一般化)的函数的界限。特别地,Haddadpour等人[216]表明,对于PL函数,每轮的 T 2 / M T^2/M T2/M次本地更新导致了 O ( 1 / T K M ) O(1/TKM) O(1/TKM)的收敛。

然而,上述工作集中于迭代次数的收敛性,实际从业者通常关心的是墙钟时间的收敛速度。评估这一点必须考虑设计参数对每次迭代所需的时间的影响,这基于通信和本地计算的相对成本。从这个角度来看,在保持统计率的情况下看K可以不是联邦学习的主要关注点,其中可以假设几乎无限的数据集(非常大的N)。成本(至少在墙钟时间上)随着M的增加而减小,因此更自然的方法是增加足够的M以匹配优化项,然后调整K以最大化墙钟时间的优化性能。那么如何选择K呢?在客户端执行更多的本地更新将增加客户端之间的本地模型的差异,然后再进行平均。因此,在训练损失与总的连续SGD步数TK之间的错误收敛方面,误差收敛较慢。然而,执行更多的本地更新可以节省显著的通信成本,并减少每次迭代所需的时间。适当的本地更新次数在这两个现象之间取得平衡,并实现最快的错误与墙钟时间的收敛。Wang和Joshi [468]提出了一种自适应通信策略,根据训练过程中的损失在训练期间的规律间隔内调整K。

联邦学习中的另一个重要的设计参数是用于使用所选客户端的更新来更新全局模型的模型聚合方法。在最初的联邦学习论文中,McMahan等人[337]提出了对本地模型的加权平均,比例与本地数据集的大小成正比。对于具有无限大数据集的IID数据,每个客户端被假定具有无限大的数据集,这简化为对本地模型的简单平均。然而,目前尚不清楚这种聚合方法是否会导致最快的错误收敛。

即使在具有IID数据的情况下,联邦优化中仍然存在许多未解决的问题。Woodworth等人[480]强调了在联邦学习环境中与优化相关的上界和下界之间存在的几个差距,特别是“间歇性通信图”,它捕捉了本地SGD方法,但这些方法的收敛速度并不知道是否能够与相应的下界相匹配。在表5中,我们强调了凸设置的收敛结果。虽然大多数方案能够达到渐近主导的统计项,但没有一个能够匹配加速小批量SGD的收敛速率。联邦平均算法是否能够弥合这一差距仍然是一个未解决的问题。

拥有所有M个客户端执行相同数量的本地更新的本地更新SGD方法可能会遇到常见的可扩展性问题 - 如果任何一个客户端出现不可预测的减速或故障,它们可能会成为瓶颈。有多种方法可以解决这个问题,但哪种方法最优尚不清楚,特别是在考虑到偏差可能性时(见第6节)。Bonawitz等人[81]提出过度预配置客户端(例如,从1.3M个客户端请求更新),然后接受前M个接收到的更新,并拒绝延迟到达的更新。一种稍微复杂的解决方案是固定一个时间窗口,允许客户端在此时间内执行尽可能多的本地更新Ki,之后他们的模型由中央服务器进行平均。Wang等人[471]从理论上分析了这种方法引入的计算异质性。另一种克服延迟客户端问题的方法是将本地更新次数固定为τ,但允许客户端以异步或无锁的方式更新全局模型。尽管一些先前的工作[505,306,163]提出了类似的方法,但错误收敛分析仍然是一个开放且具有挑战性的问题。然而,在联邦学习设置中,更大的挑战在于,正如在第3.2节开头讨论的那样,异步方法可能难以与差分隐私或安全聚合等补充技术相结合。

除了本地更新的次数之外,每轮训练选择的客户端集的大小选择也存在与本地更新次数类似的权衡。在每轮训练中更新和平均更多的客户端模型可以实现更好的收敛,但它会使训练容易受到由于在客户端的计算/通信中出现不可预测的尾延迟而导致的减速的影响。

non-IID环境中的本地SGD / 联邦平均分析甚至更具挑战性;与此相关的结果和未解决的问题将在下一节中进行考虑,以及直接解决non-IID问题的专门算法。

3.2.2 非独立同分布数据集的优化算法与收敛速率

与集中式学习中独立同分布(IID)样本组成的乱序小批量不同,联邦学习使用来自终端用户设备的本地数据,导致出现许多非独立同分布(Non-IID)数据变体(第3.1节)。

在这种情况下,N个客户端中的每个都有一个本地数据分布 P i P_i Pi 和本地目标函数:

f i ( x ) = E z ∼ P i [ f ( x ; z ) ] f_i(x) = \mathbb{E}_{z \sim P_i}[f(x; z)] fi(x)=EzPi[f(x;z)]

其中我们回顾一下 f ( x ; z ) f(x; z) f(x;z) 是模型 x x x 在示例 z z z 上的损失。我们通常希望最小化

F ( x ) = 1 N ∑ i = 1 N f i ( x ) . ( 2 ) F(x) = \frac{1}{N} \sum_{i=1}^{N} f_i(x). \quad (2) F(x)=N1i=1Nfi(x).(2)

请注意,当每个 P i P_i Pi 都相同时,我们就恢复了IID设置。我们将用 F ∗ F^* F 表示 F F F 的最小值,在点 x ∗ x^* x 处取得。类似地,我们将用 f i ∗ f_i^* fi 表示 f i f_i fi 的最小值。

与IID设置类似,在这里我们假设间歇性通信模型(例如,Woodworth等人[480, Sec. 4.4]),其中 M M M个无状态客户端参与每个 T T T轮,在每轮中,每个客户端都可以计算 K K K个样本(例如,小批量)。不同之处在于,在客户端 i i i上抽取的样本 z i , 1 , . . . , z i , K z_{i,1}, ..., z_{i,K} zi,1,...,zi,K是从客户端的本地分布 P i P_i Pi中抽取的。与IID设置不同,我们不能必然假设 M = N M = N M=N,因为客户端分布并不相等。在以下内容中,如果算法依赖于 M = N M = N M=N,我们将省略 M M M并简单地写为 N N N。我们注意到,尽管这种假设可能与表1中的跨存储联邦设置兼容,但在跨设备设置中通常不可行。

虽然[434, 500, 467, 435]主要集中在IID情况,但分析技术可以通过在数据不相似性上添加假设来扩展到非IID情况,例如通过约束客户端梯度与全局梯度之间的差异[305, 300, 304, 469, 471]或客户端与全局最优值之间的差异[303, 268]。在此假设下,Yu等人[501]表明,非IID情况下局部SGD的误差界变得更糟。为了在非凸目标下达到 1 / T K N 1/\sqrt{TKN} 1/TKN 的速率,本地更新次数 K K K应小于 T 1 / 3 / N T^{1/3}/N T1/3/N,而不是像在IID情况下为 T / N 3 T/N^3 T/N3 [467]。Li等人[300]建议在每个本地目标函数中添加近端项,以使算法对本地目标的异质性更加稳健。所提出的FedProx算法在实践中提高了联邦平均的性能。Khaled等人[268]假设所有客户端都参与,并在客户端上使用批量梯度下降,这在收敛速度方面可能比客户端上的随机梯度更快。

最近,许多研究在放宽分析所需的假设方面取得了进展,以便更好地适用于联邦平均的实际应用。例如,Li等人[303]研究了联邦平均在更加实际的设置中的收敛性,其中每轮只涉及到一部分客户端。为了保证收敛性,他们假设客户端要么是均匀随机选择的,要么是按照本地数据集的大小成比例选择的。然而,在实际中,服务器可能无法以这些理想化的方式对客户端进行抽样——特别是在跨设备设置中,只有满足严格的符合条件的设备(例如,充电、空闲、免费WiFi)才会被选中参与计算。在一天的不同时间内,客户端的特征可能会有显著的变化。Eichner等人[171]对这个问题进行了阐述,并研究了半周期SGD的收敛性,其中从不同特征的多个客户端块中进行抽样,遵循正常的周期模式(例如,白天和黑夜)。由于计算能力的异质性,客户端可以执行不同的本地步骤。Wang等人[471]证明了在本地步骤存在异质性的情况下,FedAvg和许多其他联邦学习算法将收敛到不匹配目标函数的驻点。他们将这个问题称为目标不一致性,并提出了一种简单的技术来消除联邦学习算法中的不一致性问题。

我们在表6中总结了近期的理论结果。表中的所有方法都假设客户端的本地函数具有平滑性或Lipschitz梯度。误差界由凸函数的最优目标(1)和非凸函数的梯度范数来衡量。对于每种方法,我们提供了关键的非独立同分布假设,每个客户端函数 f i ( x ) f_i(x) fi(x)的假设,以及其他辅助假设。我们还简要描述了每种方法作为联邦平均算法的变体,并显示了消除常数后的简化收敛速率。假设客户端函数是强凸的可能有助于收敛速率[303, 265]。有界梯度方差是分析随机梯度方法的常用假设,当客户端使用随机本地更新时,经常会使用它[305, 303, 304, 469, 265]。Li等人[303]直接分析了联邦平均算法,该算法在每轮中对随机抽样的M个客户端应用了K步本地更新,并提出了一个速率,表明本地更新(K > 1)可能会减缓收敛。澄清K > 1何时可能会损害或帮助收敛是一个重要的未解决问题。

与去中心化优化的关系 联邦优化的目标函数在去中心化优化社区中已经研究了许多年。正如Wang和Joshi [467]首次展示的那样,去中心化SGD的收敛分析可以应用于或与本地SGD相结合,只需适当设置网络拓扑矩阵(混合矩阵)。为了减少通信开销,Wang和Joshi [467]提出了周期性去中心化SGD(PD-SGD),允许去中心化SGD像Federated Averaging一样具有多次本地更新。Li等人[304]将此算法扩展到非独立同分布的情况。MATCHA [469]通过随机抽取计算和通信的客户端来进一步改进PD-SGD的性能,并提供了一个收敛性分析,表明本地更新可以加速收敛。

加速、方差缩减和自适应 动量、方差缩减和自适应学习率都是改善一阶方法收敛和泛化的有希望的技术。然而,在将这些技术应用于FedAvg中并没有单一的方式。SCAFFOLD [265]使用控制变量对客户端更新之间的差异建模,以执行方差缩减。值得注意的是,这允许收敛结果不依赖于限制客户端之间异质性的数量。至于动量,余等人[501]建议允许每个客户端维护本地的动量缓冲区,并在每次通信轮次中对本地缓冲区和本地模型参数进行平均。虽然这种方法在经验上改善了本地SGD的最终精度,但这会使每轮通信成本翻倍。谢等人[485]采用类似的方案设计了一种本地SGD的变体,其中客户端在本地执行Adagrad [335, 161]。Reddi等人[389]则提出在服务器级别使用自适应学习率,开发了与FedAvg相同通信成本的自适应优化方法的联邦版本。这个框架推广了Hsu等人[237]、Wang等人[470]提出的服务器动量框架,允许动量而不增加通信成本。虽然[501, 470]都显示了本地SGD的动量变体可以以与同步小批量SGD相同的速率收敛到非凸目标函数的稳定点,但在联邦学习环境中证明动量加速收敛速度是具有挑战性的。最近,Karimireddy等人[264]提出了一种将集中式优化算法适应异质联邦设置的通用方法(MIME框架和算法)。

3.3 多任务学习、个性化和元学习

在本节中,我们考虑了各种“多模型”方法,即在推理时为不同客户端有效地使用不同的模型。这些技术在面对非独立同分布数据(第3.1节)时尤其相关,因为它们可能会胜过甚至是最好的共享全局模型。

需要注意的是,个性化也在完全去中心化的环境中进行了研究[459, 59, 504, 19],在这种情况下,训练个别模型是特别自然的。

3.3.1 通过特征化实现个性化

本节的其余部分专门考虑了导致不同用户使用不同模型参数(权重)进行推理的技术。然而,在某些应用中,通过向模型添加用户和上下文特征也可以实现类似的好处。例如,考虑一个移动键盘中用于下一个单词预测的语言模型,就像Hard等人的研究[222]。不同的客户端可能会以不同的方式使用语言,实际上,在设备上对模型参数进行个性化调整在解决这个问题上取得了显著的改进[472]。然而,一个补充的方法可能是训练一个联邦模型,不仅将用户迄今为止键入的单词作为输入,还包括各种其他用户和上下文特征——这个用户经常使用哪些单词?他们当前在使用哪个应用?如果他们在聊天,他们之前发送过什么消息给这个人?适当特征化后,这些输入可以使共享的全局模型产生高度个性化的预测。然而,由于很少有公开的数据集包含这些辅助特征,开发能够有效地将上下文信息纳入不同任务的模型架构仍然是一个重要的未解决问题,这有潜力大大提高联邦学习训练模型的实用性。

3.3.2 多任务学习

如果将每个客户端的本地问题(即在本地数据集上的学习问题)视为一个单独的任务(而不是作为单个分区数据集的分片),那么多任务学习中的技术[506]会立即变得相关。值得注意的是,Smith等人的研究[424]引入了用于多任务联邦学习的MOCHA算法,直接解决了通信效率、慢节点和容错性等挑战。在多任务学习中,训练过程的结果是每个任务一个模型。因此,大多数多任务学习算法假设所有客户端(任务)在每个训练轮次都参与,还需要具有状态的客户端,因为每个客户端都在训练一个单独的模型。这使得这种技术与跨分区的联邦学习应用相关,但在跨设备情景下更难应用。

另一种方法是重新思考客户端(本地数据集)与学习任务(需要训练的模型)之间的关系,观察到在单个全局模型和为每个客户端设计不同模型之间存在一系列可能性。例如,可以尝试应用多任务学习的技术(以及接下来将讨论的个性化等其他方法),在这种情况下,我们将“任务”视为客户端的一个子集,可以是显式选择的(例如基于地理区域、设备或用户的特性),也可以基于聚类[331]或在客户端之间构建的图的连通分量[504]。开发这种算法是一个重要的未解决问题。请参阅第4.4.4节,讨论在不揭示每个客户端属于哪个客户端子集(任务)的情况下,如何处理稀疏联邦学习问题,例如在这种类型的多任务问题中自然产生的问题。

3.3.3 本地微调和元学习

本地微调指的是从联邦训练单一模型开始,然后将该模型部署到所有客户端,在使用推理前通过在本地数据集上进行附加训练来个性化该模型。这种方法与联邦学习的典型生命周期(见第1.1.1节)相吻合。对全局模型的训练可以继续仅使用每轮涉及少量客户端的样本(例如,数百个)进行,全局模型广播到所有客户端(例如,数百万个)只在模型部署时发生一次。唯一的区别是,在客户端用于实时预测之前,会发生最终的训练过程,将模型个性化到本地数据集。

给定一个表现良好的全局模型,如何最佳地进行个性化?在非联邦学习中,研究人员通常使用微调、迁移学习、领域适应[329, 132, 61, 332, 133]或通过个人本地模型进行插值。当然,用于此类插值的确切技术至关重要,需要在联邦学习背景下确定其相应的学习保证。此外,这些技术通常仅假设存在一对领域(源领域和目标领域),因此可能会丧失联邦学习的更丰富结构。

通过与元学习的联系,可以研究个性化和非独立同分布(IID)数据的方法,元学习已经成为模型适应的流行设置。在标准的“学习如何学习”(Learning-to-Learn,LTL)设置中[56],存在一个关于任务的元分布,从中采样的样本用于学习学习算法,例如通过找到对假设空间的限制。事实上,这与第3.1节中讨论的统计设置非常匹配,其中我们从Q中采样一个客户端(任务) i ∼ Q i \sim Q iQ,然后从 P i P_i Pi采样该客户端(任务)的数据。

最近,已经开发出一类名为“模型无关元学习”(Model-Agnostic Meta-Learning,MAML)的算法,这些算法可以元学习一个全局模型,然后使用少数局部梯度步骤将其用作适应于给定任务的良好模型的起点[187]。值得注意的是,流行的Reptile算法[358]的训练阶段与联邦平均算法[337]非常相似——Reptile允许服务器学习率,并假设所有客户端具有相同数量的数据,但在其他方面是相同的。Khodak等人的研究[270]和Jiang等人的研究[250]探讨了FL和MAML之间的关系,并展示了MAML设置是建模FL个性化目标的相关框架。Chai Sim等人[102]应用本地微调来个性化联邦学习中的语音识别模型。Fallah等人[181]通过将MAML与联邦学习连接,开发了一种名为Personalized FedAvg的新算法,而不是使用Reptile。在[299]中还研究了与差分隐私的其他联系。

将联邦学习(FL)和元学习(MAML)思想相结合的总体方向是相对较新的,还有许多未解之谜:

  • MAML算法在监督任务上的评估主要集中在合成图像分类问题上[290, 386],其中可以通过从图像类别中进行子采样构建无限数量的人工任务。由于现有的用于模拟FL实验的数据集(附录A)对应了FL问题的实际基准问题,因此这些数据集可以作为MAML算法的现实基准问题。
  • 除了经验研究或优化结果外,分析MAML类型技术的理论保证并研究它们在什么假设下可能会成功,将进一步阐明它们可能适用于哪些FL领域。
  • 全局准确性和个性化准确性之间的观察差距[250]表明,个性化应该是FL的核心问题。然而,目前还没有现有的作品明确阐述了衡量个性化性能的综合性指标;例如,对于每个客户端都有微小的改进是否比只对某个客户端子集有较大的改进更可取?有关讨论请参见第6节。
  • Jiang等人[250]指出,具有相同结构和性能但训练方式不同的模型可能具有非常不同的个性化能力。特别是,似乎以最大化全局性能为目标的模型实际上可能会损害模型对后续个性化的能力。了解其背后的原因是一个对FL和更广泛的机器学习社区都有意义的问题。
  • 几个具有挑战性的FL主题,包括个性化和隐私,已经开始在这种多任务/LTL框架下进行研究[270, 250, 299]。其他问题,例如概念漂移,是否也可以用类似的方式进行分析,例如作为终身学习[420]中的问题?
  • 非参数转移的LTL算法,例如ProtoNets [425],是否也适用于FL?
3.3.4 全局FL训练模型何时更优?

在一个设备上进行本地训练所无法实现的事情,联邦学习(Federated Learning,FL)能为您提供什么?当本地数据集较小且数据是独立同分布(IID)时,FL显然具有优势,实际上,联邦学习的实际应用[491, 222, 112]从在多个设备上训练单一模型中受益。另一方面,在存在病态非独立同分布(非IID)分布的情况下(例如, P i ( y ∣ x ) P_i(y | x) Pi(yx)在不同客户端之间直接存在分歧),本地模型将会更好。因此,一个自然的理论问题是要确定在什么条件下,共享的全局模型优于独立的每个设备模型。假设我们为每个客户端 k k k训练一个模型 h k h_k hk,使用从该客户端可用的大小为 m k m_k mk的样本。我们是否能够保证通过联邦学习学到的 h F L h_{FL} hFL模型在用于客户端 k k k时至少与 h k h_k hk一样准确?我们能否量化通过联邦学习可以期望获得多少改进?我们能否开发具有理论保证的个性化策略,其性能至少与自然基准( h k h_k hk h F L h_{FL} hFL)相匹配?
其中一些问题与先前关于多源适应和不可知联邦学习的工作有关[329, 330, 234, 352]。这些问题的难度取决于数据在各方之间的分布情况。例如,如果数据在垂直分区,每个方维护关于共同实体的不同特征集的私有记录,这些问题可能需要在联邦学习任务中解决记录链接[124]。无论最终在隐私环境下进行记录链接的技术征收如何[407],这个任务本身在现实世界中很容易受到噪声的影响[406],只有少数结果解决了其对模型训练的影响[224]。鲁棒性和隐私技术可以使本地模型相对更强大,尤其适用于非典型客户端[502]。在监督学习中,可以使用损失因子分解技巧来减轻垂直分区假设本身,但实际效益取决于数据分布和各方数量[373]。

3.4 为联邦学习调整机器学习工作流程

在将标准的机器学习工作流程和流水线(包括数据增强、特征工程、神经架构设计、模型选择、超参数优化和调试)调整为分散式数据集和资源受限的移动设备时,会出现许多挑战。我们在下面讨论其中几个挑战。

3.4.1 超参数调整

在资源受限的移动设备上运行许多不同超参数的训练轮次可能会有限制。对于小规模设备群体,这可能会导致有限的通信和计算资源的过度使用。然而,近期的深度神经网络在神经网络架构、正则化和优化方面关键地依赖于各种超参数选择。对于大型模型和大规模设备上的数据集,评估可能会非常昂贵。超参数优化(HPO)在AutoML框架下有着悠久的历史[395, 273, 277],但它主要关注如何提高模型的准确性[64, 426, 374, 180],而不是针对移动设备的通信和计算效率。因此,我们期望进一步的研究能够考虑在联邦学习环境下开发高效的超参数优化解决方案。
除了针对超参数优化问题的通用方法,特别是在训练领域中,开发易于调整的优化算法是一个重要的未解决领域。集中式训练已经需要调整学习率、动量、批大小和正则化等参数。联邦学习可能会引入更多的超参数——对聚合/全局模型更新规则和本地客户端优化器的分别调整,每轮选择的客户端数量,每轮的本地步数,更新压缩算法的配置等。这些超参数可能对在准确性和收敛性之间取得良好平衡至关重要,实际上可能会影响所学模型的质量[106]。除了高维搜索空间外,联邦学习通常还需要更长的挂钟训练时间和有限的计算资源。这些挑战可以通过对超参数设置具有鲁棒性的优化算法(相同的超参数值适用于许多不同的现实世界数据集和架构),以及自适应或自调节算法[446, 82]来解决。

3.4.2 神经网络架构设计

在联邦学习环境中,神经网络架构搜索(NAS)是基于当前应用预定义深度学习模型的不足之处而提出的:深度学习模型的预定义架构可能不是最佳设计选择,尤其是当用户生成的数据对于模型开发者来说是不可见的时候。例如,神经网络架构可能对于特定数据集具有一些冗余组件,这可能会导致设备上的不必要计算;对于非独立同分布的数据分布,可能会有更好的架构设计。在第3.3节中讨论的个性化方法仍然在所有客户端之间共享相同的模型架构。最近在NAS方面取得的进展[230, 387, 175, 388, 60, 375, 313, 488, 175, 323]为解决这些问题提供了潜在途径。NAS有三种主要方法,它们利用进化算法、强化学习或梯度下降来搜索特定任务和特定数据集的最优架构。其中,基于梯度的方法利用了高效的梯度反向传播和权重共享,将架构搜索过程从超过3000个GPU天减少到仅需1个GPU天。最近发表的另一篇有趣的论文涉及“重量无关神经网络”[192],声称神经网络架构本身,即使

不学习任何权重参数,也可能对给定任务进行编码。如果这种技术进一步发展并得到广泛使用,可能适用于不需要设备之间协作训练的联邦学习。尽管这些方法尚未针对联邦学习等分布式环境进行开发,但它们都有可能被转移到联邦设置中。在联邦学习中为全局或个性化模型进行神经网络架构搜索(NAS)具有前景,[228]中已经进行了早期的探索。

3.4.3 联邦学习的调试和解释性

虽然在模型的联邦训练方面取得了实质性的进展,但这只是完整ML工作流程的一部分。经验丰富的建模者通常会直接检查数据的子集,以进行基本的合理性检查、调试错误分类、发现异常值、手动标记示例或检测训练集中的偏差等任务。在分散式数据上开发隐私保护技术来回答这类问题是一个重要的开放问题。最近,Augenstein等人[31]提出了使用经过联邦学习训练的差分隐私生成模型(包括GANs)来回答这类问题的方法。然而,仍然有许多未解决的问题(详见[31]中的讨论),尤其是开发改善FL差分隐私生成模型保真度的算法。

3.5 通信和压缩

现在已经很清楚,通信可能是联邦学习的主要瓶颈,因为无线链接和其他终端用户互联网连接的速率通常低于数据中心之间的链接,而且可能昂贵且不可靠。这引发了对减少联邦学习通信带宽的兴趣。将Federated Averaging与模型更新的稀疏化和/或量化结合,将其压缩为少量比特,已经证明在减少通信成本方面取得了显著的效果,对训练准确性的影响很小[282]。然而,通信成本是否可以进一步降低,以及这些方法或它们的组合是否能够在通信和准确性之间提供接近最佳的权衡,仍然不清楚。近期的理论统计学研究越来越关注这种在准确性和通信之间的基本权衡问题[507, 89, 221, 7, 49, 444, 50]。这些研究对于在通信约束下的分布式统计估计和学习的最优极小风险进行了刻画。然而,要从这些理论工作中推导出通信带宽减少的具体见解是困难的,因为它们通常忽略了优化算法的影响。在实践中,利用这些统计方法来指导实际的训练方法仍然是一个开放的方向。

压缩目标 受到当前设备在计算、内存和通信方面有限资源的限制,存在几个不同的实际价值压缩目标。
(a) 梯度压缩 - 减少从客户端发送到服务器的对象的大小,用于更新全局模型。
(b) 模型广播压缩 - 减少从服务器广播到客户端的模型大小,客户端从中开始进行本地训练。
© 本地计算减少 - 对整体训练算法的任何修改,以使本地训练过程在计算上更有效。
在大多数情况下,这些目标是互补的。其中,(a)在总运行时间方面可能具有最重大的实际影响,因为客户端的连接通常具有较慢的上传速率,因此与(b)相比,可能获得更多的收益,并且由于在许多客户端之间进行平均,可以实现更激进的有损压缩方案。通常,(c)可以通过特定方法与(a)和(b)共同实现。

现有的大部分文献适用于目标(a)[282, 440, 281, 17, 235, 55]。直到最近,(b)对于收敛性的影响一直没有得到研究;分析结果在[123]中呈现。很少有方法同时致力于共同解决(a)、(b)和(c)。Caldas等人[95]提出了一种实用的方法,通过约束所需的模型更新,只需要在客户端上可用的特定子矩阵的模型变量;Hamer等人[219]提出了一种在经过预训练的模型集合上学习混合权重的通信高效的联邦算法,基于仅将模型的子集传递给任何一个设备;He等人[227]利用双向和交替的知识蒸馏方法,将知识从许多紧凑的DNN传递到密集的服务器DNN,可以减少边缘设备上的局部计算负担。

在跨设备联邦学习中,算法通常不能假定任何状态在客户端上保留(表1)。然而,在跨平台联邦学习环境中,这种约束通常是不存在的,因为相同的客户端会反复参与。因此,在这种环境中与误差纠正相关的更广泛的思想,比如[311, 405, 463, 444, 263, 435],在很大程度上可以解决(a)和(b)。

另一个目标是修改训练过程,使最终的模型更紧凑或更适用于推理。这个话题在更广泛的机器学习社区中引起了很多关注[220, 138, 509, 309, 362, 74],但这些方法要么不能直接映射到联邦学习,要么会使训练过程更加复杂,难以采用。能够同时产生紧凑的最终模型,并解决上述三个目标的研究在实际影响方面具有重要的潜力。

对于梯度压缩,一些现有的作品[440]在最小最大意义上对最坏情况进行了表征。然而,在信息论中,压缩保证是特定实例的,取决于底层分布的熵[140]。换句话说,如果数据容易压缩,它们可以被证明被严重压缩。有趣的是,最近的工作表明,在数据相关的情况下学习压缩方案可以显著提高数据压缩[482]和梯度压缩的压缩比。因此,值得在联邦设置中评估这些数据相关的压缩方案[193]。

差分隐私和安全聚合的兼容性 许多在联邦学习中使用的算法,如安全聚合[79]和添加噪声以实现差分隐私的机制[3, 338],不适用于压缩或量化通信。例如,Bonawitz等人[80]、Bell等人[58]的安全聚合协议的直接应用,对于每个标量都需要额外的O(log M)位通信,其中M是求和的客户端数量,当M很大时,这可能会使得更新的激进量化无效(尽管参见[82],以获取更高效的方法)。现有的添加噪声机制假设在每个客户端上添加实值高斯或拉普拉斯噪声,这与

用于减少通信的标准量化方法不兼容。我们注意到,一些最近的工作允许有偏估计器,并且可以很好地适用于拉普拉斯噪声[435],然而这些不会提供差分隐私,因为它们会破坏回合之间的独立性。虽然有一些关于添加离散噪声的工作[9],但没有概念是否这些方法是最优的。因此,设计与安全聚合兼容的压缩方法,或者可以获得差分隐私保证的方法,是一个有价值的开放问题。

无线联邦学习(Wireless-FL)的共同设计 现有的联邦学习文献通常忽视了模型训练过程中无线信道动态的影响,这可能会损害训练延迟和整个生产系统的可靠性。特别是,无线干扰、噪声信道和信道波动都可能显著阻碍服务器与客户端之间的信息交换(或直接在完全去中心化情况下,在第2.1节中可以看到的个别客户端之间)。这对于关键任务的应用来说是一个根植于减少延迟和提高可靠性的重大挑战。解决这一挑战的潜在方法包括联邦蒸馏(Federated Distillation,FD),在这种方法中,工作节点交换模型输出参数(逻辑值)而不是模型参数(梯度和/或权重),以及通过适当的通信和计算资源优化工作节点的调度策略[248, 368, 402]。
另一个解决方案是利用无线信道的独特特性(例如广播和叠加),将不同工作节点同时传输的模拟波形在服务器处叠加,并由无线信道系数加权[4]。这将导致服务器上更快的模型聚合,以及训练速度提高了多达工作节点数量的倍数。这与传统的正交频分复用(OFDM)范式形成鲜明对比,工作节点通过正交频率上传模型,在这种范式下,随着工作节点数量的增加,性能会降低[174]。

3.6 将联邦学习应用于更多类型的机器学习问题和模型

迄今为止,联邦学习主要考虑了具有自然可在每个客户端上获得的标签的监督学习任务。将FL扩展到其他机器学习范式,包括强化学习、半监督和无监督学习、主动学习以及在线学习[226, 508],都提出了有趣且开放的挑战。
另一个与FL密切相关的重要模型类别是能够表征其预测中的不确定性的模型。大多数现代深度学习模型无法表示其不确定性,也不能对参数化学习进行概率解释。这促使了近年来将贝叶斯模型与深度学习相结合的工具和技术的发展。从概率论的角度来看,使用单个点估计来进行分类是不合理的。已经提出了贝叶斯神经网络[419],并且已经证明其对过拟合更加稳健,可以轻松地从小数据集中学习。贝叶斯方法进一步通过其参数的概率分布提供了不确定性估计,从而防止过拟合。此外,通过诉诸概率推理,可以预测不确定性如何减小,从而在数据规模增大时,网络的决策变得更加确定性。
由于贝叶斯方法为我们提供了关于深度模型置信度的工具,并在许多任务上实现了最先进的性能,人们预期贝叶斯方法会为经典的联邦学习提供概念上的改进。实际上,Lalitha等人的初步工作[292]表明,引入贝叶斯方法可以实现在非独立同分布数据和异构平台之间进行模型聚合。然而,仍需解决许多关于可扩展性和计算可行性的问题。

3.7 总结

与数据中心中的集中式训练相比,高效且有效的联邦学习算法面临不同的挑战。

  • 非独立同分布(Non-IID)数据由于非同一客户分布、独立性违规和数据集漂移(第3.1节)构成了一个关键挑战。尽管在本节中对各种方法进行了调查和讨论,但定义和处理非独立同分布数据仍然是一个未解之谜,也是联邦学习中最活跃的研究课题之一。
  • 在不同设置下分析了联邦学习的优化算法,例如凸函数和非凸函数、独立同分布数据和非独立同分布数据(第3.2节)。对于在联邦优化中常用的并行局部更新,理论分析往往很困难,并且通常必须做出严格的假设来限制客户端的异质性。目前已知的收敛速率并不能完全解释联邦平均算法相对于小批量随机梯度下降等方法的经验观察效果 [481]。
  • 客户端个性化和“多模型”方法(第3.3节)可以解决数据异质性问题,并有希望超越最佳固定全局模型的性能。像微调这样的简单个性化方法可能是有效的,并提供固有的隐私优势。然而,许多理论和经验问题仍然悬而未决:何时全局模型更好?需要多少模型?哪些联邦优化算法与本地微调最佳结合?
  • 将中心化训练工作流程,如超参数调整、神经架构设计、调试和可解释性任务,适应联邦学习设置(第3.4节),在实际环境中广泛采用FL面临困难,因此构成重要的未解之谜。
  • 尽管在FL的通信效率和压缩方面已经有了显著的工作(第3.5节),但它仍然是一个重要且活跃的领域。特别是,在不影响广泛类别模型的收敛的情况下,自动实现启用压缩的过程是一个重要的实际目标。讨论了关于通信、与隐私方法的兼容性以及与无线基础设施的协同设计的相对新的方向。
  • 将联邦学习从监督任务扩展到其他机器学习范式,包括强化学习、半监督和无监督学习、主动学习和在线学习,存在许多未解之谜(第3.6节)。

4 保护用户数据的隐私

机器学习工作流涉及许多不同角色的参与。例如,用户可以通过与其设备进行交互来生成训练数据,机器学习训练过程从这些数据中提取跨群体的模式(例如以经过训练的模型参数的形式),机器学习工程师或分析师可以评估这个经过训练的模型的质量,最终,模型可以部署给终端用户以支持特定的用户体验(见下面的图1)。

在理想的情况下,系统中的每个角色都只会学到完成其任务所需的信息。例如,如果分析师只需要确定某个质量指标是否超过所需的阈值,以便授权将模型部署给终端用户,那么在理想的世界中,这是唯一对分析师可用的信息;这样的分析师既不需要访问训练数据,也不需要访问模型参数。同样地,享受由经过训练的模型提供支持的用户体验的终端用户可能只需要来自模型的预测,而不需要其他。

此外,在理想的世界中,系统中的每个参与者都能够轻松准确地推理出他们自己和其他人的哪些个人信息可能会在他们参与系统时被揭示出来,并且参与者能够利用这种理解来做出关于如何以及是否参与的明智选择。

要在系统中实现上述所有理想隐私属性,本身就是一项艰巨的任务,而在同时保证其他理想特性,如对所有参与者的易用性、终端用户体验(以及支持其的模型)的质量和公平性、通信和计算资源的明智使用、对抗攻击和故障的韧性等,更是如此。

与其让完美成为好的敌人,我们倡导一种策略,即整个系统由可独立研究和改进的模块单元组成,同时也要提醒自己,最终必须根据上述设定的理想隐私目标来衡量完整系统的隐私性能。本节中提出的未解决问题将强调在哪些领域我们尚不了解如何同时实现所有目标,无论是对于单个模块还是整个系统。

联邦学习为将整体机器学习工作流分解为我们所需的可处理的模块单元提供了一种有吸引力的结构。联邦学习模型的主要吸引力之一在于,它可以通过数据最小化为参与用户提供一定程度的隐私保护:原始用户数据永远不会离开设备,只有模型的更新(例如梯度更新)被发送到中央服务器。这些模型更新更加专注于手头的学习任务,而不是原始数据(即与用户相关的附加信息严格地不包含在内,通常相对于原始数据来说要少得多),并且个体更新只需要被服务器临时保存。

虽然这些特点可以在集中所有训练数据的情况下提供显著的实际隐私改进,但在这个基本的联邦学习模型中仍然没有正式的隐私保证。例如,可以构造出一些场景,在这些场景中,有关原始数据的信息从客户端泄漏到服务器,例如,了解用户的先前模型和梯度更新可能会让人推断出该用户所持有的训练样例。因此,本节调查了现有结果,并概述了设计能够提供严格隐私保证的联邦学习系统所面临的挑战。我们重点关注联邦学习和分析环境中特定的问题,暂不涉及在更一般的机器学习环境中也会出现的问题,这些问题已在[344]中进行了概述。

除了针对用户隐私的攻击,还存在针对联邦学习的其他类型的攻击;例如,对手可能试图阻止模型的学习,或者他们可能试图使模型产生有利于对手的推断。我们将考虑这些类型的攻击留待第5节进行讨论。

本节的其余部分按以下方式组织。第4.1节讨论我们希望提供保护的各种威胁模型。第4.2节列出了一组核心工具和技术,可用于提供针对第4.1节中讨论的威胁模型的严格保护。第4.3节假定存在一个可信的服务器,并讨论在面对恶意客户端和/或分析师时提供保护的问题和挑战。第4.4节讨论在没有完全可信的服务器的情况下的问题和挑战。最后,第4.5节讨论用户感知周围的未解决问题。

4.1 角色、威胁模型和深度隐私

在联邦学习中处理隐私风险需要一种综合性和跨学科的方法。尽管一些风险可以映射到技术隐私定义,并通过现有技术进行缓解,但其他风险更加复杂,需要跨学科的努力。

隐私不是一个二进制数量,甚至不是一个标量。这种正式处理隐私风险的第一步是仔细描述不同的角色(参见第1节中的图1,在第36页重复显示以便于查阅),并定义相关的威胁模型(参见表7)。因此,例如,区分服务器管理员的视角和消费所学模型的分析师的视角是有益的,因为可以设想一个系统被设计为向恶意分析师提供强隐私保证,但对于恶意服务器可能没有任何保证。这些角色很好地映射到文献中其他地方讨论的威胁模型;例如,在Bittau等人的工作[73,第3.1节]中,“编码器”对应于客户端,“洗牌者”通常对应于服务器,“分析者”可能对应于服务器或分析师进行的后处理。例如,特定系统可能对服务器管理员的视角提供特定参数 ε \varepsilon ε 的差分隐私保证,而分析师观察到的结果可能具有较高的保护级别 ε 0 < ε \varepsilon_0 < \varepsilon ε0<ε

表格 7:不同敌对行为者的各种威胁模型。

此外,可能仅对具有特定能力限制的对手(例如,对手可以观察服务器上发生的一切事情(但不能影响服务器的行为),同时可以控制高达一部分 γ \gamma γ 的客户(观察到他们看到的一切并以任意方式影响他们的行为))持有这个保证;对手还可以被假定为无法打破在特定安全级别 σ \sigma σ 下实例化的密码机制。对于强度超过这些限制的对手,服务器管理员的视图可能仍具有某些差分隐私,但其强度更弱, ε 0 > ε \varepsilon_0 > \varepsilon ε0>ε

正如这个例子所示,准确地指定系统的假设和隐私目标很容易涉及多个参数( ε \varepsilon ε ε 0 \varepsilon_0 ε0 ε 0 \varepsilon_0 ε0 γ \gamma γ σ \sigma σ等)的具体实例化,以及差分隐私和诚实但好奇安全等概念。

通常,为了实现联邦学习的所有期望隐私属性,需要将下面描述的许多工具和技术组合成一个端到端系统,可能同时在同一部分系统的保护中分层多个策略(例如,在受信任的执行环境(TEE)内运行部分安全多方计算(MPC)协议,以增加对手足够破坏该组件的难度)以及在保护系统的不同部分时使用不同策略(例如,在保护模型更新的聚合之前使用私有披露技术,然后将聚合更新共享给服务器之外)。

因此,我们主张构建联邦系统,其中隐私属性在某种技术或其他技术无法提供其预期隐私贡献的情况下能够尽可能地优雅地降低。例如,将MPC协议的服务器组件运行在TEE内,即使TEE安全性或MPC安全性假设中的一个(但不是两者)在实践中无法成立,也可以维护隐私。作为另一个例子,要求客户端将原始训练示例发送到服务器端的TEE,与要求客户端将梯度更新发送到服务器端的TEE相比,后者的隐私期望在TEE安全性失败的情况下更加优雅地降低。我们将这种优雅降级原则称为“隐私深度”,类比于深度防御的网络安全原则[361]。

4.2 工具与技术

总体而言,联邦学习计算的目标是使请求计算的分析师或工程师获得结果,这可以被视为在分布式客户端数据集上对函数 f f f 进行评估(通常是机器学习模型训练算法,但也可能是一些更简单的东西,如基本统计量)。需要解决三个隐私方面的问题。

首先,我们需要考虑如何计算 f f f,以及在这个过程中中间结果的信息流是什么,这主要影响恶意客户、服务器和管理员角色的易受攻击性。除了设计系统中的信息流程(例如,早期数据最小化),来自安全计算的技术,包括安全多方计算(MPC)和受信任的执行环境(TEE),对于解决这些问题非常相关。这些技术将在第4.2.1节中详细讨论。

其次,我们必须考虑的是计算的内容。换句话说,通过 f f f 的结果,有多少关于参与客户的信息会被揭示给分析师和全局参与者。在这里,隐私保护披露的技术,特别是差分隐私(DP),非常相关,将在第4.2.2节中详细讨论。

最后,还有一个可验证性问题,涉及客户或服务器能否向系统中的其他人证明他们已经忠实执行了所需的行为,而不会透露他们所行动的潜在私密数据。关于可验证性的技术,包括远程证明和零知识证明,将在第4.2.3节中讨论。

4.2.1 安全计算

安全计算的目标是以一种只向预定方展示计算结果的方式,对分布式输入进行函数求值,而不会透露任何额外的信息(例如各方的输入或任何中间结果)。

安全多方计算 安全多方计算(Secure Multi-Party Computation,MPC)是密码学的一个分支,关注的问题是让一组参与方以一种只向每个参与方透露所需输出的方式,计算出它们的私有输入的约定函数。这个领域始于20世纪80年代的Yao [493]。得益于理论和工程方面的突破,该领域已经从纯粹的理论兴趣变成了工业中的一项部署技术 [78, 77, 295, 27, 191, 242, 243]。值得注意的是,MPC定义了一组技术,应该更多地被视为一个领域,或者是安全计算中的一种通用概念,而不是一种技术本身。一些MPC的最新进展可以归因于更低级别基元的突破,例如遗忘传输协议 [244] 和具有同态性质的加密方案(如下所述)。

密码解决方案的一个常见特点是操作通常在有限域上进行(例如模素数p的整数),这在表示实数时会带来困难。一种常见的方法是调整ML模型及其训练过程,以确保(过度)溢出受控,通过在归一化的数量上进行操作,并依赖于仔细的量化 [194, 10, 206, 84]。

几十年来一直已知任何函数都可以在恶意对手存在的情况下进行安全计算 [208]。虽然存在通用解决方案,但其性能特征通常使其在实际设置中不适用。因此,研究中一个显著的趋势是为诸如线性回归和逻辑回归 [359, 194, 351] 以及神经网络的训练和推断 [351, 10, 48] 这样的应用设计定制协议。这些工作通常在跨场景(cross-silo)设置中,或在计算被委派给不彼此勾结的一小组计算服务器的变体中进行。将这些协议移植到跨设备设置并不直接,因为它们需要大量的通信。

同态加密 同态加密(Homomorphic Encryption,HE)方案允许在不需要先解密的情况下,直接在密文上执行某些数学操作。同态加密可以成为启用MPC的强大工具,通过使参与方能够在保持值隐藏的同时计算值上的函数。

不同类型的同态加密存在,从通用的完全同态加密(FHE)[197] 到更高效的分级变体 [87, 182, 88, 129],有几种实现 [233, 409, 364, 415, 1]。同样具有实际相关性的是部分同态方案,包括ElGamal和Paillier等,允许同态加法或乘法。加法性同态加密已被用作跨场景(cross-silo)设置中MPC协议的一个组成部分 [359, 224]。一份关于一些同态加密软件库的综述,以及在选择库时要考虑的标准/特性的简要解释,可以在 [404] 中找到。

在考虑在联邦学习(FL)环境中使用同态加密(HE)时,一个重要的问题涉及谁应该持有方案的秘密密钥。尽管将每个客户端的数据加密并将其发送到服务器上进行同态计算的想法很有吸引力,但是服务器不应该能够解密单个客户端的贡献。解决这个问题的一种简单方法是依赖于一个不相互合谋的外部方,该方持有秘密密钥并且能够解密计算结果。然而,大多数同态加密方案需要定期更新密钥(例如,受易受选择的密文攻击影响[117] ),而且在联邦学习设置中很少有一个可信的不相互合谋的外部方可用。这种情况下的挑战是如何确保密钥的安全性和更新,并在没有可信方的情况下实现合理的安全性保障。

另一种解决此问题的方法是依赖于分布式(或阈值)加密方案,其中秘密密钥被分散在多个参与方之间。Reyzin等人 [392] 和Roth等人 [398] 提出了在跨设备设置中进行求和计算的此类解决方案。他们的协议使用了加法同态加密方案,分别采用了ElGamal和基于格的方案的变体。这种方法允许多个参与方共同持有密钥的部分信息,通过协同计算来完成加密操作,从而减少了单个方拥有完整密钥的风险。这种方法的关键在于确保分布的密钥部分在协同计算过程中不会泄露,从而保障计算的隐私性和安全性。

受信任的执行环境(Trusted Execution Environments,TEEs,也称为安全隔离区)可能为将部分联邦学习过程移至受信任的云环境提供机会,其代码可以进行验证和认证。

TEEs可以提供建立信任的关键功能,以确保代码已被忠实且私密地执行[437]:

  • 机密性:代码的执行状态保持机密,除非代码明确发布消息。
  • 完整性:代码的执行不受影响,除非代码明确接收输入。
  • 测量/认证:TEEs可以向远程方证明正在执行哪个代码(二进制代码)以及其起始状态是什么,从而为机密性和完整性定义初始条件。

TEEs已经以许多形式实现,包括Intel的SGX-enabled CPUs [241, 134]、Arm的TrustZone [28, 22]以及基于RISC-V的Sanctum [135],每种形式在系统性地提供上述功能方面存在差异。

目前的安全隔离区在内存方面存在限制,并且只提供对CPU资源的访问,即不允许在GPU或机器学习处理器上进行处理(Tram`er和Boneh [447] 探讨了如何将TEEs与GPU结合用于机器学习推断)。此外,对于TEEs(尤其是那些在共享微处理器上运行的TEEs)来说,完全排除所有类型的侧信道攻击是具有挑战性的[458]。

虽然安全隔离区为其中运行的所有代码提供了保护,但在实践中还必须解决其他问题。例如,通常需要将在隔离区中运行的代码结构化为数据无关的过程,以使其运行时和内存访问模式不会泄露有关正在计算的数据的信息(例如,参见 [73])。此外,测量/认证通常仅证明特定的二进制代码正在运行;由于二进制代码必须使用可重现的流程从开源代码构建,系统架构师需要提供一种证明该二进制代码具有所需隐私属性的方法。

如何在安全隔离区、云计算资源和客户端设备之间划分联邦学习功能仍然是一个开放问题。例如,安全隔离区可以执行关键功能,如安全聚合或洗牌,以限制服务器对原始客户端贡献的访问,同时将大部分联邦学习逻辑保留在受信任的计算基础之外。

感兴趣的安全计算问题 虽然安全多方计算和受信任的执行环境为在分布式私有数据上私下计算任何功能提供了通用解决方案,但在关注特定功能时,许多优化是可能的。下面是描述的任务案例。

安全聚合 安全聚合是一种为n个客户端和一个服务器的功能。它使得每个客户端可以提交一个值(通常是联邦学习环境中的向量或张量),以便服务器仅学习客户端值的聚合函数,通常是总和。

在单服务器设置中,有丰富的文献探讨了安全聚合,通过加法掩码[8, 213, 80, 58, 428]、通过阈值同态加密[417, 218, 103]以及通过通用安全多方计算[94],以及在多个非共谋服务器设置中[78, 27, 130]。安全聚合也可以使用受信任的执行环境(如上所述)来实现,如[308]中所述。

安全洗牌 安全洗牌是一种为n个客户端和一个服务器的功能。它使得每个客户端可以提交一个或多个消息,以便服务器仅学习来自所有客户端的消息的无序集合(多重集合),而不会了解更多信息。具体来说,服务器无法将任何消息与其发送者关联起来,除了消息本身所包含的信息。安全洗牌可以被视为安全聚合的一个实例,其中值是多重集合的单元素,聚合操作是多重集合的求和,尽管通常在安全洗牌和安全聚合的典型操作范围内,非常不同的实现可能提供最佳性能。

在安全多方计算的背景下,已经研究了安全洗牌,通常在混合网络的范畴下。它们还在受信任计算的背景下进行了研究[73]。混合网络已经在Tor网络的形式中得到了大规模部署[157]。

私人信息检索 私人信息检索(Private Information Retrieval,PIR)是一种密码学和计算机安全领域的技术,用于实现在不暴露用户查询内容的情况下,从服务器检索所需信息的功能。简而言之,PIR允许用户在向服务器查询数据时保持查询内容的隐私,使得服务器无法获知用户查询的具体内容,同时仍能返回所需的数据。

在传统的信息检索系统中,用户发送查询请求给服务器,服务器根据查询内容检索并返回相关数据。然而,这种方式可能会暴露用户的查询兴趣、偏好或敏感信息。私人信息检索的目标是解决这一问题,使得用户能够隐私地检索数据,而服务器无法获知用户查询的内容。

MPC方法应用于PIR分为两个主要类别:计算PIR(cPIR),其中单个参与方可以执行整个协议的服务器端部分[286];以及信息理论PIR(itPIR),其中需要多个非共谋方来执行协议的服务器端部分[121]。

PIR的适用性的主要障碍包括:cPIR具有高计算成本[423],而非共谋方设置在工业场景中难以令人信服地实现。最近有关PIR的结果通过使用基于格的加密系统[12, 363, 13, 23, 198]显著降低了计算成本。计算成本可以用更多的通信来交换;我们建议读者参考Ali等人的研究[16],以更好地理解cPIR提供的通信和计算权衡。此外,已经表明如何通过利用用户可用的副信息(例如通过客户端本地状态)在单服务器上构建通信效率高的PIR,例如[251]。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],其目标是引入足够的不确定性到发布的模型中,以掩盖任何个体用户的贡献。差分隐私通过隐私损失参数(ε,δ)进行量化,其中较小的(ε,δ)值对应于更高的隐私保护。更正式地,对于所有 S ⊆ Range ( A ) S \subseteq \text{Range}(A) SRange(A),以及所有相邻数据集 D D D D ′ D^{'} D,随机算法 A A A 是(ε,δ)-差分隐私的,如果满足:

P ( A ( D ) ∈ S ) ≤ e ε P ( A ( D ′ ) ∈ S ) + δ . ( 3 ) P(A(D) \in S) \leq e^{\varepsilon} P(A(D^{'}) \in S) + \delta. \quad (3) P(A(D)S)eεP(A(D)S)+δ.(3)

在联邦学习的上下文中, D D D D ′ D^{'} D 对应于分布式数据集,如果可以通过在 D D D 中添加或减去单个客户(用户)的所有记录来获得 D ′ D^{'} D,则它们是相邻的。这种差分隐私概念被称为用户级差分隐私。它比通常使用的只相差一个记录的相邻性概念更为严格,因为一般情况下,一个用户可能会为数据集贡献多个记录(例如,训练样本)。

在过去的十年中,已经开发了广泛的技术,用于差分隐私数据分析,特别是在集中式设置下,原始数据由可信方在应用必要的扰动之前收集。在联邦学习中,通常编排服务器将作为差分隐私机制的可信实施者,确保仅发布经过扰动的输出给模型工程师或分析师。

然而,在可能的情况下,我们经常希望减少对可信方的依赖。近年来,已经考虑了减少对数据管理者信任需求的几种方法。

本地差分隐私 差分隐私可以通过要求每个客户端在与服务器共享数据之前对其数据应用差分隐私变换来实现,而无需对集中式服务器信任。也就是说,我们将方程(3)应用于一个处理单个用户的本地数据集 D D D 的机制 A A A,保证对于任何可能的其他本地数据集 D ′ D^{'} D 都成立。这个模型被称为差分隐私的本地模型(LDP)[475, 266]。LDP 已经被 Google、Apple 和 Microsoft 有效地部署,用于跨大型用户群体收集热门项目的统计信息[177, 154, 155]。它还在联邦设置中被用于 Snap 的垃圾邮件分类器训练[378]。这些 LDP 部署都涉及大量的客户和报告,甚至在 Snap 的情况下可以达到十亿级别,这与集中式的差分隐私实例形成了鲜明对比,后者可以从规模更小的数据集中提供较高的效用。不幸的是,正如我们将在第4.4.2节讨论的那样,实现保持效用的 LDP 可能会很困难[266, 455]。因此,需要一个介于纯粹的集中式和纯粹的本地差分隐私之间的差分隐私模型。这可以通过分布式差分隐私或混合模型来实现,如下所述。

分布式差分隐私 为了在不依赖可信赖的中央服务器的情况下恢复一些集中式差分隐私的效用,可以使用分布式差分隐私模型[166, 417, 73, 120]。在这个模型下,客户端首先计算和编码一个最小(特定于应用程序的)集中报告,然后将编码后的报告发送到一个安全计算函数,其输出对中央服务器可用,预期在服务器能够检查输出之前,此输出已经满足差分隐私要求。编码的目的是帮助在客户端上维护隐私,可以包括本地差分隐私。安全计算函数可以有多种不同的实现方式,可以是 MPC 协议、在 TEE 上进行的标准计算,甚至是两者的组合。每种选择都伴随着不同的假设和威胁模型。

需要指出的是,从几个角度来看,分布式差分隐私和本地差分隐私提供了不同的保证:虽然分布式差分隐私框架可以在相同差分隐私级别下产生更准确的统计数据,但它依赖于不同的设置,并通常做出更强的假设,比如可以访问 MPC 协议。以下,我们概述了分布式差分隐私的两种可能方法,依赖于安全聚合和安全洗牌。我们强调还有许多其他方法可以使用,例如可以参考[400]中基于在安全通道上交换相关高斯噪声的方法。

通过安全聚合实现的分布式差分隐私 在联邦学习中,实现分布式差分隐私的一个有前景的工具是安全聚合,上文在第4.2.1节中已经讨论过。可以使用安全聚合来确保中央服务器获得聚合的结果,同时保证不将个体设备和参与者的中间参数透露给中央服务器。为了进一步确保聚合结果不向服务器透露额外的信息,我们可以使用本地差分隐私(例如,使用适度的 ε 水平)。例如,每个设备在安全聚合之前可以扰动自己的模型参数,以实现本地差分隐私。通过正确设计噪声,我们可以确保聚合结果中的噪声与原本由可信服务器(例如,低 ε / 高隐私级别)在中央添加的噪声相匹配(例如,[8, 385, 205, 417, 213])。

通过安全洗牌实现的分布式差分隐私 另一个分布式差分隐私模型是洗牌模型,最近引入的编码-洗牌-分析(ESA)框架 [73] 推动了这一模型的发展(如图3所示)。在这一框架的最简单版本中,每个客户端在其数据上运行一个 LDP 协议(例如,使用适度的 ε 水平),并将其输出提供给一个安全的洗牌器。洗牌器对报告进行随机排列,然后将洗牌后的报告集合(不包含任何标识信息)发送到服务器进行最终分析。直观地说,这个安全计算函数的介入使得服务器更难以了解有关参与者的任何信息,并支持差分隐私分析(例如,使用低 ε / 高隐私级别)。在更一般的多消息洗牌框架中,每个用户可以向洗牌器发送多个消息。洗牌器可以直接作为一个可信实体来实现,与服务器独立,专门用于洗牌,或者通过上述更复杂的加密原语来实现。

Bittau等人 [73] 提出了Prochlo系统作为实施ESA框架的一种方式。该系统采取了一种整体性的隐私方法,考虑到安全计算方面的因素(使用了TEE来解决),私密披露方面的因素(通过差分隐私来解决),以及可验证性方面的因素(使用安全隔离认证能力来缓解)。

更一般地说,洗牌模型的差分隐私可以使用更广泛的本地随机化方法,甚至可以自适应地选择这些本地随机化方法 [178]。这可以在比本地模型更小的错误范围内实现差分隐私协议,同时依赖于比中心模型更弱的信任假设,例如 [120, 178, 45, 201, 204, 200, 202, 203, 110]。

混合差分隐私 另一种有前景的方法是混合差分隐私 [40],它通过基于用户的信任模型偏好(例如,对数据管理者的信任或不信任)将多种信任模型结合起来。在混合模型之前,有两种自然的选择。第一种选择是使用最不信任的模型,通常提供最低的效用,并且在整个用户群体上保守地应用。第二种选择是使用最信任的模型,通常提供最高的效用,但只在最信任的用户之间应用。通过允许多种模型共存,混合模型机制可以从给定的用户群体中获得更多的效用,与纯粹的本地或中心差分隐私机制相比。例如,[40] 中描述了一个系统,其中大多数用户在本地隐私模型中贡献其数据,而一小部分用户选择加入中心差分隐私模型来贡献其数据。这使得可以设计出一种在某些情况下优于同时应用于所有用户的保守本地差分隐私机制和仅应用于小部分选择加入用户的中心差分隐私机制的机制。[57] 的最近工作进一步证明,多种信任模型的组合可以成为设计和实现差分隐私的有希望的工具集的一部分。这种构建可以直接应用于联邦学习环境;然而,结合信任模型或计算模型的一般概念也可能会激发类似但新的联邦学习方法的出现。

4.2.3可验证性

与上述隐私技术正交的一个重要概念是可验证性。一般来说,可验证计算允许一方向另一方证明它已在数据上忠实执行所需的行为,而不会危及数据的潜在保密性。可验证计算的概念可以追溯到Babai等人的研究[42],并在文献中以不同的术语进行了研究:检查计算[42]、认证计算[343]、委托计算[210]以及可验证计算[195]。

在联邦学习的背景下,可验证性可以用于两个目的。首先,它可以使服务器向客户证明它忠实地执行了预期的行为(例如,聚合输入、对输入消息进行洗牌或为差分隐私添加噪音)。其次,它可以使客户向服务器证明他们的输入和行为符合协议规范(例如,输入属于某个范围,或者数据是正确生成的密文)。

多种技术可以用于提供可验证性:零知识证明(ZKPs)、可信执行环境(TEEs)或远程认证。在这些技术中,ZKPs基于数学难题提供了正式的加密安全保证,而其他技术则依赖于对可信硬件安全性的假设。

零知识证明(ZKPs) 零知识(ZK)证明是一种加密原语,使得一方(称为证明者)能够向另一方(称为验证者)证明依赖于证明者知道的秘密信息(称为见证)的陈述,而不向验证者透露这些秘密。零知识的概念是由Goldwasser等人于1980年代末引入的[209]。它为私有数据的可验证性问题提供了解决方案。虽然在ZK构造方面已经有大量的工作,但首个将ZKPs和适用于实际功能的可验证计算引入到实际中的工作是Parno等人的研究[369],该研究引入了第一个针对简洁ZK的优化构造和实现。现在,ZKP协议可以实现数百字节的证明大小和毫秒级的验证,无论被证明的陈述的大小如何。

ZKP具有三个显著的特性:完整性(如果陈述为真且证明者和验证者遵循协议,验证者将接受证明)、有效性(如果陈述为假且验证者遵循协议,验证者将拒绝证明)和零知识性(如果陈述为真且证明者遵循协议,验证者将只知道陈述为真,而不会从交互中获取任何机密信息)。

除了这些常见属性,零知识构造还有不同类型,涉及支持证明的语言、设置要求、证明者和验证者的计算效率、交互性、简洁性和基础困难假设等方面。有许多ZK构造支持特定类别的陈述,例如Schnorr证明[408]和Sigma协议[147]。虽然这些协议在特定环境中有许多用途,但可以支持任何功能的通用ZK系统在更广泛的应用中(包括在联邦学习的上下文中)提供了更广泛的工具,因此我们将在后续讨论中重点关注这些构造。

不同构造之间的一个主要区别特征是对可信设置的需求。一些ZKPs依赖于公共参考字符串(CRS),该字符串使用应保持隐藏的秘密计算而得,以保证证明的有效性属性。这样的CRS的计算被称为可信设置。虽然这对于这样的系统是一个缺点,但现有的能够实现最简洁的证明和验证者效率的ZKP构造需要可信设置。

影响不同情景中可适用性的另一个重要特性是生成证明是否需要证明者和验证者之间的交互。在这里,我们区分非交互零知识证明(NIZK),它使得证明者可以向验证者发送单个消息,无需进一步通信。通常我们可以通过对哈希函数的理想功能做出更强的假设(即,哈希函数表现为随机预言者)来将交互式证明转化为非交互式证明。此外,还有不同的效率测量标准,必须要注意,例如证明的长度和证明者和验证者的计算复杂性。理想的证明者复杂性应该与所评估的功能的执行时间成线性关系,但许多现有的ZKPs会为证明者引入额外(有时是显著的)开销。最高效的验证复杂性要求计算复杂性至少与所评估功能的输入大小成线性关系,在FL服务器的工作证明中,这个输入大小将是显著的。

简洁非交互零知识证明(SNARKs)[71]是一种类型的ZKP,其提供了恒定大小的证明和仅取决于输入大小的线性验证。这些吸引人的效率特性是以更强的假设为代价的,这在很大程度上是固有的,而且在所有现有的方案中都需要可信设置。大多数现有的SNARK构造利用了二次算术程序[196, 369, 136],现在可以在开源库(如libsnark [307])中使用,并在加密货币(如Zcash [62])中部署。请注意,SNARK系统通常需要证明者投入开销;特别地,证明者计算需要超线性地与所证明的陈述的电路大小成比例。最近,谢等人提出了Libra,这是一个具有线性证明者复杂性但具有增加的证明大小和验证时间的ZKP

可信执行环境和远程证明 我们在第4.2.1节中已经讨论了可信执行环境(TEE),但在这里重点强调了TEEs可以提供可验证计算的机会。事实上,TEEs可以验证和验证在其环境中运行的代码(二进制代码)。特别是,当验证者知道(或可以重现)应在安全区域中运行的二进制代码时,TEEs将能够提供完整性的概念(代码执行除了输入外不会受到影响)和证明(TEE可以证明特定的二进制代码正在执行以及其初始状态是什么)[437, 451]。更一般地说,远程证明允许验证者安全地测量远程硬件平台的内部状态,并可用于建立静态或动态的信任根。虽然TEEs实现了基于硬件的远程证明,但在文献中提出了基于软件的远程证明[411]和混合远程证明设计[172, 274],从而可以在可验证性方面权衡硬件要求。

在联邦学习环境中,TEEs和远程证明可能特别有助于客户能够有效地验证在服务器上运行的关键函数。例如,安全聚合或洗牌可以在TEEs中运行,并对其输出提供差分隐私保证。因此,服务器随后对差分隐私数据应用的后处理逻辑可以在服务器上运行,并保持对客户端的不可见。请注意,这样的系统设计要求客户端知道并信任在安全区域中应用的关键函数的确切代码(二进制代码)。此外,远程证明可以使服务器验证参与FL计算的客户端的特定要求,如无泄漏、不变性和不中断性(我们将详细列出远程证明的最低要求,请参阅[188])。

4.3 防御外部恶意参与者的保护措施

在本节中,我们假设存在一个可信的服务器,并讨论实现针对外部恶意参与者(例如对抗性客户端、对抗性分析师、对抗性设备,以及它们的任意组合)的严格隐私保证所面临的各种挑战和未解决问题。
如表7所示,恶意客户端可以检查在他们参与的回合中从服务器收到的所有消息(包括模型迭代),恶意分析师可以检查来自具有不同超参数的多个训练运行的模型迭代序列,在交叉设备联邦学习中,恶意设备可以对最终模型进行白盒或黑盒访问。因此,为了对外部对手提供严格的保护,首先需要考虑可以从中间迭代和最终模型中学到什么信息。

4.3.1 审计迭代和最终模型

为了更好地理解从中间迭代或最终模型中可以学到什么信息,我们提出了量化联邦学习模型对特定攻击易感性的方法。在联邦学习背景下,这是一个特别有趣的问题。一方面,对手可以直接从服务器获取模型,从而扩大了攻击面。另一方面,服务器确定了对手将在训练过程的哪个特定阶段获取对模型的访问权限,并且还可以在每个阶段控制对对模型的影响。

对于经典的(非联邦的)计算模型,了解模型对攻击的易感性是一个活跃且具有挑战性的研究领域。量化模型对攻击易感性的最常见方法是在类似于预期实践中的数据集上模拟攻击对模型进行审计。这可以给出一个概念,即如果代理数据集确实类似于最终的用户数据,则模型的预期攻击易感性是多少。一个更安全的方法是确定模型攻击易感性的最坏情况上界。这可以在理论上进行研究,如[496]中所述,尽管这通常会得出对于实际模型而言较松散、空洞的界限。经验性方法可能能够提供更紧密的界限,但对于许多类型的攻击和模型来说,这种努力可能是不可行的。在这个领域中,一个有趣的新兴研究领域研究了模型审计和攻击之间的理论条件,在这些条件下,对于模拟攻击未能成功地识别隐私违规行为,意味着没有更强的攻击能够在这样的任务上成功[153]。然而,这个领域还处于初级阶段,需要进一步的研究来更好地理解通过模拟攻击进行审计是否足够的基本要求。

联邦学习框架不仅为攻击提供了独特的环境,还为攻击的量化和防御提供了独特的环境。具体而言,由于服务器在训练过程中可以控制每个用户何时可以访问和影响模型,因此可能有可能设计出新的可处理的方法来量化模型的平均或最坏情况下的攻击易感性。这种方法将使得能够开发出新的自适应防御方法,可以在飞行中应用,以抵御重要的对手影响,同时最大程度地提供效用。

4.3.2 使用中央差分隐私进行训练

为了限制或消除从迭代(和/或最终模型)中可能泄露关于个体的信息,可以在联邦学习的迭代训练过程中使用用户级差分隐私(User-Level Differential Privacy)[3, 338, 336, 68]。使用这种技术,服务器会对各个用户的更新进行 ℓ 2 \ell_2 2范数截断,然后对截断的更新进行聚合,并在聚合结果上添加高斯噪声。这确保迭代不会过度拟合于任何单个用户的更新。为了在多个轮次中跟踪整体隐私预算,可以使用高级组合定理(Advanced Composition Theorems)[168, 254] 或者在 [3, 346, 348, 474] 中开发的分析方法。分析方法在均匀子采样的高斯机制下表现尤为出色。然而,在隐私预算适度且缺乏足够大的数据集 [384] 的情况下,该过程引入的噪声可能导致模型的准确性大幅下降。先前的研究已经探索了许多途径来减轻隐私和准确性之间的权衡,包括收集更多的私有数据 [338],设计隐私友好的模型架构 [367],或者利用私有数据领域的先验知识 [449]。

在跨设备联邦学习中,不同设备的训练样本数量可能差异巨大。因此,类似于最近在中央模型中关于用户级差分隐私的研究[21],需要找出如何自适应地限制用户的贡献并对模型参数进行截断,这仍然是一个有趣的研究方向 [446, 377]。从更广泛的角度来看,与记录级差分隐私不同,对于多种经典的学习和估计任务,准确性与隐私之间的基本权衡是被很好理解的,而用户级差分隐私则基本上了解得较少(特别是当不同用户的贡献数量差异巨大且没有事先严格界定的情况下)。因此,在这种新兴的差分隐私设置下,还需要进一步研究来更好地理解这种基本权衡。最近,[320]通过对用户级差分隐私下学习离散分布的准确性和隐私之间的权衡进行了表征,为这一前沿问题取得了进展。

除了上述内容,还需要区分可能在训练过程中看到(部分)中间迭代的恶意客户以及只能看到最终模型的恶意分析员(或部署)。尽管中央差分隐私可以保护这两种威胁模型,但仔细的理论分析可以揭示,对于特定实现的上述高斯机制(或任何其他差分隐私机制),我们在这两种威胁模型之间可能会获得不同的隐私参数。自然而然地,相对于恶意客户,我们应该在与恶意分析员相关方面获得更强的差分隐私保证(因为恶意客户可能能够获得比恶意分析员更多的信息)。Feldman等人[185]最近针对凸优化问题研究了“通过迭代实现隐私放大”的情境,然而尚不清楚[185]中的结果是否适用于非凸设置。

非均匀设备采样过程的隐私放大 在跨设备联邦学习系统中,针对非均匀设备采样过程提供正式的(ε,δ)保证可能尤其具有挑战性,因为:(a)所有合格用户的集合(即底层数据库)是动态的,事先未知,而且(b)参与联邦计算的用户可以在协议的任何时点退出。因此,有必要研究和设计协议,这些协议:(1)对自然的选择(用户可用性和退出)具有鲁棒性,(2)自我计算,即服务器可以仅使用协议可用的信息计算出紧密的(ε,δ)保证,(3)依赖于局部参与决策(即不假设服务器知道哪些用户在线并且有能力从他们中进行采样),以及(4)在隐私和实用性之间取得良好的权衡。尽管最近的研究[47, 257]表明这些限制可以同时实现,但构建一个在生产联邦学习系统中有效运行的端到端协议仍然是一个重要的未解决问题。

随机源(摘自 [336]) 大多数计算设备只能访问少量熵源,并且它们往往具有很低的速率(硬件中断、板载传感器等)。使用熵来种子化加密安全的伪随机数生成器(PRNG),并使用PRNG的输出。基于标准密码学原语的健壮且高效的PRNG已经存在,这些PRNG在现代CPU上的输出速率可以达到每秒几GB,而且只需要128位长度的种子。

随机化算法A的输出分布与真正熵源的不可区分性 随机化算法A具有PRNG的访问权限,其输出分布与具有真正熵源访问权限的A是不可区分的,只要区分器受到计算约束。将其与差分隐私的保证进行比较,差分隐私的保证适用于任何对手,无论其多么强大。因此,几乎所有的差分隐私实现仅满足由[347]引入的(变体的)计算差分隐私。从积极的一面来看,计算受限的对手无法区分差异,这使我们不必过于细致地讨论这一点。

训练过程中的非确定性源 训练过程可能具有多个非确定性源(例如,dropout层或生成模型的输入),但只有那些反映在隐私分类帐中的源必须来自加密安全的PRNG。特别地,设备采样过程和加性高斯噪声必须从加密安全的PRNG中获取,以便训练后的模型满足计算差分隐私。

审计差分隐私实现 隐私和安全协议通常很难正确实现(例如,差分隐私的情况下[345, 217])。用于测试联邦学习实现的正确性的技术有哪些?由于这些技术通常由可能选择不开源代码的组织部署,因此是否存在黑盒测试的可能性?一些研究[156, 315, 247]开始在差分隐私的背景下探索这个领域,但仍然存在许多未解决的问题。

4.3.3 隐藏迭代过程

在典型的联邦学习系统中,模型迭代(即在每轮训练后的新更新版本)被假设对系统中的多个角色可见,包括服务器和在每轮中选择参与的客户端。然而,可以使用第4.2节的工具来使这些迭代对这些角色保密。

隐藏迭代过程对客户端的保密 为了对客户端隐藏迭代过程,每个客户端可以在提供机密性功能的TEE中运行其联邦学习的本地部分(见第4.2.1节)。服务器将验证预期的联邦学习代码是否在TEE中运行(依靠TEE的认证和完整性功能),然后将加密的模型迭代传输到设备,以便只能在TEE内解密。最后,模型更新将在TEE内加密,然后使用仅在飞地内和服务器上已知的密钥返回到服务器。不幸的是,对于客户端来说,TEE可能不是普遍可用的,特别是当这些客户端是智能手机等终端用户设备时。而且,即使存在TEE,它们可能不足够强大,无法支持训练计算,这些计算必须在TEE内部进行,以保护模型迭代,并且可能具有计算昂贵和/或需要大量内存的特点。尽管如此,TEE的功能可能会随着时间的推移而得到改善,而且类似于[447]中所提出的技术可能能够通过在TEE之外导出部分计算来减少对TEE的要求,同时保持计算整体的认证、完整性和机密性需求。

采用MPC模型的类似保护 类似的保护也可以在MPC模型下实现[351, 10]。例如,服务器可以在将迭代的模型参数发送给客户端之前,使用仅服务器知道的密钥对迭代的模型参数进行同态加密。然后,客户端可以使用密码系统的同态属性计算加密的模型更新,而无需解密模型参数。然后可以将加密的模型更新返回给服务器进行聚合。这里的一个关键挑战是在解密之前强制在服务器上进行聚合,否则服务器可能能够了解客户端的模型更新。在这里的另一个具有挑战性的未解决问题是提高性能,因为即使是最先进的系统也可能需要相当大的计算资源来完成深度神经网络的单轮训练。在这方面的进展可以通过算法改进以及开发更高效的MPC硬件加速器来实现[393]。

如果还需要对服务器隐藏模型迭代 在TEE模型下,联邦学习的服务器部分可以在TEE内运行,所有各方(即客户端和分析员)验证服务器TEE仅在满足适当的训练条件后才会发布最终模型。在MPC模型下,加密密钥可以保护模型迭代,密钥由分析员持有,在客户端之间分发,或由可信的第三方持有;在这种设置中,密钥持有人将需要参与模型参数的解密,并因此确保此过程仅发生一次。

4.3.4 对不断变化的数据进行重复分析

对于许多联邦学习的应用,分析师希望分析以流式方式到达的数据,并且还必须提供动态更新的学习模型,这些模型(1)在到目前为止看到的数据上是正确的,以及(2)能够准确地预测未来的数据到达。在没有隐私问题的情况下,分析师可以简单地在新数据到达时重新训练学习模型,以确保始终达到最大的准确性。然而,由于隐私保证会随着有关相同数据的附加信息的发布而降低[167, 168],这些更新必须不那么频繁,以仍然保持整体分析的隐私和准确性。

关于动态数据和时间序列数据的差分隐私的最新进展[143, 142, 97]都假设存在一个可以在在线到达时查看原始数据并发布动态更新统计信息的可信维护者。 一个未解决的问题是这些算法技术如何扩展到联邦设置,以在时间序列数据或其他动态演变的数据库上实现私有联邦学习。

具体的未解决问题包括:

  • 在新数据存在的情况下,分析师应该如何在私有情况下更新FL模型?或者,基于FL在样本上进行,不会对其所看到的数据过度拟合,一个在数据集 D D D上通过FL私有学习的模型在保持隐私的前提下如何在数据集 D ′ D^{'} D上表现良好,其中 D ′ D^{'} D在给定的相似性度量中与D相似被保证?这很可能意味着这样的模型仍然可以在新的数据库 D ′ D^{'} D上继续良好的表现。这也与在第5节中探讨的鲁棒性问题有关。

  • 绕过隐私组合问题的一种方法是生成合成数据[165, 5],然后可以无限期地使用,而不会产生额外的隐私损失。这遵循差分隐私的后处理保证[167]。Augenstein等人[31]以联邦的方式探索了合成数据的生成。在动态数据设置中,可以重复使用合成数据,直到它在新数据方面变得“过时”,并需要更新。即使是通过联邦方式生成数据,它也必须在私有和联邦的情况下进行更新。

  • 先前关于动态数据库的差分隐私的特定方法[142]或私有检测时间序列数据变化的方法[143, 97]是否可以扩展到联邦设置?

  • 在联邦模型中,如何查询时间序列数据?按设计,不会定期多次查询相同的用户以获取更新的数据点,因此很难对个体的数据随时间的变化进行真正的内部估计。在这里,可以使用常用的时间序列数据统计抽样工具,但必须与隐私工具和联邦工具结合使用。其他方法包括重新构造查询,以便每个内部子查询都可以在设备上完全回答。

4.3.5 防止模型盗窃和滥用

在某些情况下,开发机器学习模型的个人或组织可能会有动机限制检查、滥用或窃取模型的能力。例如,限制对模型参数的访问可能会使对手更难以搜索漏洞,比如产生不预期模型输出的输入。

在推断期间保护部署的模型与在培训期间将模型迭代对客户端进行隐藏的挑战密切相关,如第4.3.3节所述。同样,TEE和MPC都可以使用。在TEE模型下,模型参数只能由设备上的TEE访问,如第4.3.3节所述;主要区别在于所需的计算现在是推断而不是训练。

在不放弃设备上推断提供的优势的情况下,更难使MPC策略适应此用例:如果用户数据、模型参数和推断结果都打算在设备上,那么不清楚哪个附加方参与多方计算。例如,试图简单地使用同态加密会要求解密密钥位于要使用推断的设备上,从而首先破坏了加密的价值。要求分析师参与的解决方案(例如持有加密密钥或模型参数本身)意味着附加的推断延迟、带宽成本和终端用户的连接要求(例如,在飞行模式下的设备将不再可用)。

必须强调的关键是,即使模型参数本身成功隐藏,研究表明,在许多情况下,只有对基于这些参数的推断/预测API进行访问的对手也可以重建这些参数[450]。在数百万或数十亿台终端用户设备上存在模型的情况下,需要采取什么额外的保护措施来防止这些问题,仍然是一个未解决的问题。

当然,请允许我重新为您翻译这一段论文:

4.4 针对敌意服务器的保护措施

在前一节中,我们假设存在一个受信任的服务器,可以协调训练过程。在本节中,我们探讨更理想的情况,即针对有敌意服务器进行保护。具体而言,我们首先研究这种情况的挑战和现有工作,然后继续描述开放问题以及如何使用第4.2节中讨论的技术来解决这些挑战。

4.4.1 挑战:通信通道、Sybil 攻击和选择

在跨设备联邦学习设置中,我们有一个具有显著计算资源的服务器和大量的客户端,这些客户端(i)只能与服务器通信(如星形网络拓扑结构),(ii)在连接性和带宽方面可能受到限制。这在执行给定的信任模型时提出了具体要求。特别地,客户端没有明确的方式在服务器之外建立安全通道。这表明,如 Reyzin 等人 [392] 对实际设置的研究所示,假设在密钥分发阶段中具有诚实(或至少是半诚实)行为的服务器(在需要客户端之间的私密通道时)是必需的。这包括基于 MPC 技术的加密解决方案。另一种方法是将附加方或公共公告板(参见,例如,[398])纳入模型中,这些方或公告板是客户端所知且可信的,不会与服务器勾结。

除了信任服务器促进私密通信通道,跨设备联邦学习的参与者还必须信任服务器以公平且诚实的方式形成客户端的集合。恶意对抗者控制服务器的主动攻击可能模拟大量虚假的客户端设备(“Sybil 攻击” [160]),或可能选择先前被损害的设备作为可用设备的池子。无论哪种方式,对手都可以在 FL 的一轮中控制比基本上的恶意设备更多的参与者,这并不仅仅是从人群中的设备数量预期的。这将使破坏 MPC 的常见假设变得更加容易,至少是一个设备是诚实的,从而破坏协议的安全性。即使协议本身的安全性保持不变(例如,如果其安全性基于不同的信任源,例如安全的飞地),存在风险,如果已知或由对手控制大量对抗性客户端的模型更新,则可能会破坏其余客户端更新的隐私。注意,这些关注也适用于 TEE 的情况。例如,基于 TEE 的洗牌器也可能受到 Sybil 攻击的影响;如果单个诚实用户的输入与来自虚假用户的已知输入一起进行洗牌,对手将能够直接在洗牌输出中识别出诚实用户的值。

需要注意的是,在某些情况下,可以在一轮中的客户端之间建立证明,以确保它们都按照正确的协议执行,例如,如果客户设备上有安全飞地,并且客户能够远程证明彼此。在这些情况下,即使模型更新本身为对手所知或所控制,也可能为所有诚实参与者建立隐私(例如,通过远程证明准确地遵循安全多方计算协议,分布式差分隐私贡献被秘密且正确地添加等),即使该模型更新为恶意分析师所知或所控制,隐私也可能受到损害。

4.4.2 现有解决方案的局限性

鉴于联邦学习的目标是让服务器构建客户端数据的群体级别模式的模型,一个自然的隐私目标是量化并明确限制服务器重构单个客户端输入数据的能力。这涉及正式定义(a)服务器通过 FL 执行所揭示的客户端数据的视图,以及(b)此类视图的隐私泄漏。在联邦学习中,我们特别关注于确保服务器能够汇总来自客户端的报告,同时以某种方式隐藏每个单独客户端的贡献。如第4.2.2节所讨论的,这可以通过不同形式的差分隐私来实现。有各种各样的方法,每种方法都有其自身的弱点,特别是在联邦学习中。例如,如前面讨论的,集中式差分隐私受到需要访问受信任的中央服务器的限制。这已经导致了在第4.2.2节中讨论的其他有希望的私密披露方法。在这里,我们概述了其中一些方法的弱点。

本地差分隐私 正如前面讨论的,本地差分隐私通过使每个客户端在将其报告发送到中央服务器之前执行差分隐私变换来消除了对受信任中央服务器的需求。本地差分隐私假设用户的隐私仅来自于他们自己的随机性补充;因此,用户的隐私保证与所有其他用户所引入的附加随机性无关。虽然本地差分隐私协议在强制隐私和具有理论基础方面是有效的 [177, 154, 155],但许多结果表明,在保持实用性的情况下实现本地差分隐私是具有挑战性的,特别是在高维数据环境中 [266, 455, 252, 54, 253, 495, 162, 128]。部分原因是引入的随机噪声的大小必须与数据中的信号大小相当,这可能需要在客户端之间组合报告。因此,在本地设置中获得与中央设置中可比的实用性,需要相对较大的用户基数或更大的 ε 参数选择 [445]。

混合差分隐私 混合模型用于差分隐私可以通过将用户基于其信任偏好分区来帮助减少所需的用户基数。然而,尚不清楚哪些应用领域和算法能够最好地利用混合信任模型的数据 [40]。此外,关于混合模型的当前工作通常假定,无论用户的信任偏好如何,他们的数据都来自同一分布 [40, 39, 57]。放松这种假设对于联邦学习特别重要,因为信任偏好与实际用户数据之间的关系可能是非平凡的。

洗牌模型 洗牌模型通过洗牌中介将用户本地添加的噪声放大,尽管它自身也有两个缺点。第一个是需要一个受信任的中介;如果用户已经不信任馆长,那么他们可能不太可能信任馆长批准或创建的中介(虽然TEE可能有助于弥合这个差距)。据我们所知,Prochlo框架 [73] 是唯一的现有实例。第二个缺点是,洗牌模型的差分隐私保证会随着参与计算的对抗性用户数量的增加而降低 [45]。由于这个数量对用户或馆长来说是未知的,它在用户获得的隐私真实水平中引入了不确定性。在联邦学习的背景下,这种风险尤其重要,因为用户(可能是对抗性的)是计算流程的关键组成部分。另外,安全多方计算除了在每个用户上增加大量的计算和通信开销外,在用户本地添加自己的噪声时也不能解决这个风险。

安全聚合 来自[80, 58]的安全聚合协议在聚合客户端报告时具有强大的隐私保证。此外,这些协议针对联邦学习的环境进行了定制。例如,它们对在执行过程中退出的客户端具有鲁棒性(这是跨设备FL的一个常见特征),并且可扩展到大量的参与者(Bell等人[58]可达数十亿)和向量长度。然而,这种方法有几个局限性:(a)它假设服务器是半诚实的(仅在私钥基础设施阶段),(b)它允许服务器看到每轮的聚合(仍然可能泄露信息),(c)它不适用于稀疏向量聚合,以及(d)它缺乏强制客户端输入的规范性的能力。如何构建一个能够高效且鲁棒地解决所有这些挑战的安全聚合协议是一个开放问题。

非常抱歉翻译中存在错误。以下是你提供的文本中公式符号的正确翻译:

4.4.3 使用分布式差分隐私进行训练

在没有可信服务器的情况下,可以使用分布式差分隐私(在第4.2.2节介绍)来保护参与者的隐私。

分布式差分隐私下的通信、隐私和准确性权衡 我们强调,在分布式差分隐私的背景下,有三个重要的性能指标:准确性、隐私和通信。一个重要的目标是明确这些参数之间的潜在权衡关系。

我们观察到,在不考虑隐私需求的情况下,通信和准确性之间的权衡已在分布估计的文献中广泛研究(例如,[440]),以及通信复杂性(有关教材参考,请参见[285])。

相反,在中心化设置中,假定所有用户的数据已由单个实体管理,从而消除了通信的需求,准确性和隐私之间的权衡已在中心差分隐私的领域得到全面的研究。这一领域的研究始于[167, 166]的基础工作。

最近,在本地差分隐私下,已对隐私、通信复杂性和准确性之间的最优权衡进行了深入研究,如[114]所述。该工作表明,通过精心编码隐私和通信约束,可以实现在单独的约束条件下可达到的最优准确性。

安全洗牌的权衡 在洗牌模型中,这些权衡最近在两个基本任务的背景下进行了研究:聚合(目标是计算用户输入的总和)和频率估计(输入属于离散集合,目标是近似持有给定元素的用户数量)。有关这两个问题的最新技术现状,请参阅表9和表10。

两个值得注意的开放性问题是:

  • 在洗牌模型中研究纯差分隐私。
  • 确定多消息设置中变量选择的隐私、准确性和通信的最优权衡(在单消息情况下,最近已经得到了近乎最紧的下界,详见[200])。

在洗牌模型的差分隐私下,关于联邦优化的最近研究[207]表明,为了实现中心差分隐私的准确性,不需要使用多消息洗牌。然而,目前尚不清楚所提出的方案是否实现了最优的通信、准确性权衡。

安全聚合的权衡 进行安全聚合的类似问题研究将非常有意思,考虑到安全聚合,研究以下类似问题将会非常有意思。假设在一个联邦学习轮次中,有 n 个用户参与,同时假设每个用户 i 持有数据 x i x_i xi。用户 i 使用算法 A ( . ) \mathcal{A}(.) A(.) 处理 x i x_i xi 以获得 y i = A ( x i ) y_i = \mathcal{A}(x_i) yi=A(xi);在这里, A ( . ) \mathcal{A}(.) A(.) 可以被看作同时具有压缩和保护隐私功能的方案。通过将安全聚合视为黑盒,服务提供者可以观察 y ‾ = Σ i A ( x i ) \overline y = \Sigma_i \mathcal{A}(x_i) y=ΣiA(xi),同时可以通过计算 x ‾ ^ = g ( y ‾ ) \hat{\overline x} = g(\overline y) x^=g(y) 来利用 y ‾ \overline y y 估计 x i x_i xi 的真实总和 x ‾ \overline{x} x。理想情况下,我们希望设计 A ( . ) \mathcal{A}(.) A(.) g ( . ) g(.) g(.),以最小化在估计 x ‾ \overline{x} x 时的误差;具体来说,我们希望解决以下最优化问题:

min ⁡ g , A ∥ g ( Σ i A ( x i ) ) − Σ i x i ∥ k \min_{g,\mathcal{A}} \|g(\Sigma_i \mathcal{A}(x_i)) - \Sigma_i x_i\|_{k} g,Aming(ΣiA(xi))Σixik

其中 k k k 可以是 ℓ 1 \ell_1 1 范数或 ℓ 2 \ell_2 2 范数。当然,在不对 g ( . ) g(.) g(.) A ( . ) \mathcal{A}(.) A(.) 强加任何约束的情况下,我们总是可以将它们选择为恒等函数,从而获得 0 的误差。然而, A ( . ) \mathcal{A}(.) A(.) 必须满足两个约束:(1) A ( . ) \mathcal{A}(.) A(.) 应该输出 B B B 位(可以视为每个用户的通信成本),同时 (2) y ‾ = Σ i A ( x i ) \overline y = \Sigma_i \mathcal{A}(x_i) y=ΣiA(xi) 应该是 x ‾ = Σ i x i \overline x = \Sigma_i x_i x=Σixi ( ε , δ ) (\varepsilon, \delta) (ε,δ)-差分隐私版本。因此,关键问题是确定在聚合过程中,如何设计 A ( . ) \mathcal{A}(.) A(.) 以实现差分隐私,并同时满足固定的通信预算。

从另一个角度看问题,对于固定的 n , B , ε , δ n, B, \varepsilon, \delta n,B,ε,δ,我们期望实现的最小 ℓ 1 \ell_1 1 ℓ 2 \ell_2 2 误差是多少?我们注意到 Agarwal 等人的最新工作 [13] 提供了一种基于均匀量化和二项式噪声相加的候选算法 A ( . ) \mathcal{A}(.) A(.)。然而,目前尚不清楚该方法是否在此情况下最佳。因此,在上述约束下推导出 ℓ 1 \ell_1 1 ℓ 2 \ell_2 2 误差的下限非常重要。

隐私成本核算 在差分隐私的中心模型中,通常使用子采样高斯机制来实现差分隐私,并使用矩值会计方法紧密追踪联邦学习各轮之间的隐私预算(请参见第4.3节中的讨论)。然而,在分布式差分隐私的情境中,由于实现安全混洗和安全聚合的有限精度问题,高斯机制无法使用。因此,这个领域内的现有工作已经采用了一些离散性质的噪声分布(例如添加伯努利或二项式噪声)。尽管这些分布有助于解决底层安全混洗/聚合实现所施加的有限精度约束,但它们并不自然地适用于矩值会计方法。因此,一个重要的开放问题是推导针对这些用于分布式差分隐私的离散(且有有限支持)噪声分布的隐私成本技术。

处理客户端掉线问题 上述分布式差分隐私模型假设参与的客户端在一轮中保持与服务器的连接。然而,在大规模运行时,一些客户端可能会因为网络连接中断或暂时不可用而掉线。这要求分布式噪声生成机制能够对此类掉线具有鲁棒性,同时还会影响将联邦学习和分析扩展到更多参与客户端的规模。

在鲁棒的分布式噪声方面,客户端的掉线可能会导致添加的噪声过少,无法满足差分隐私的 epsilon 目标。一种保守的方法是增加每个客户端的噪声,以便即使在服务器完成安全聚合和计算总和所需的最少客户端数量的情况下,仍能满足差分隐私的 epsilon 目标。然而,当更多的客户端报告时,这会导致过多的噪声,这引发了一个问题,即是否可能提供更有效的解决方案。

在扩展方面,当增加参与安全聚合轮次的客户端数量时,掉线客户端的数量将成为一个瓶颈。同时,收集足够多的客户端可能也会是一个挑战。为此,可以对协议进行结构化,以使客户端能够在长时间运行的聚合轮次过程中多次连接,以完成其任务。更一般地说,在文献中尚未系统地解决在客户端可能间歇性可用的情况下进行大规模操作的问题。

新的信任模型 联邦学习框架促使我们开发比之前使用的更为精细的信任模型,以充分利用联邦学习独特的计算模型,并可能对对抗性用户的能力做出现实的假设。例如,合理的假设是,有多少比例的客户端可能会受到对手的威胁?对手是否有可能同时攻击服务器和大量设备,还是通常只能攻击一个或另一个设备就足够了?在联邦学习中,服务器通常由众所周知的实体(例如长期存在的组织)操作。可以利用这一点制定一个信任模型,即服务器的行为是受信任但需要验证的。也就是说,服务器不会被阻止偏离所需的协议,但如果确实偏离了协议,极有可能被检测到(从而破坏了托管组织的信任、声誉,以及潜在的财务或法律地位)。

这样的信任模型将有助于构建更加健壮和可靠的联邦学习框架,使其能够更好地应对可能的对抗性攻击,同时确保参与者的数据和隐私得到保护。因此,探索并制定这样的信任模型是一个重要的开放问题,可以为联邦学习的发展带来有益的指导。

在训练子模型时保护隐私 在许多情况下,每个客户端可能具有仅与正在训练的完整模型的相对小部分相关的本地数据。例如,针对大型库存的模型,包括自然语言模型(用于词汇库存)或内容排名模型(用于内容库存),通常使用嵌入查找表作为神经网络的第一层。通常情况下,客户端只与库存项目的一小部分进行交互,并且在许多训练策略中,客户端数据仅支持与客户端交互的项目所对应的嵌入向量的更新。

另一个例子是多任务学习策略,它可以是个性化的有效方法,但可能会产生复合模型,其中任何特定客户端仅使用与该客户端用户群集相关联的子模型,如第3.3.2节所述。

如果通信效率不是问题,那么子模型训练看起来就像标准的联邦学习:客户端在参与时会下载完整模型,使用与他们相关的子模型,然后提交涵盖整组模型参数的模型更新(即在与相关子模型对应的条目之外的位置都为零)。然而,当部署联邦学习时,通信效率通常是一个重要的问题,这就引出了一个问题:是否可以实现通信高效的子模型训练。

如果选择哪个特定子模型进行更新不涉及隐私敏感信息,那么可以有简单的方法来适应联邦学习,以实现通信高效的子模型训练。例如,可以运行多个联邦学习过程的副本,每个副本对应一个子模型,可以并行运行(例如,客户端根据希望更新的子模型选择适当的联邦学习实例参与),或者按顺序运行(例如,对于每轮联邦学习,服务器会宣布将更新哪个子模型),或者两者的混合。然而,尽管这种方法在通信效率方面是有效的,但服务器可以观察到客户端选择了哪个子模型。

是否可能在保持客户端子模型选择私密的同时,实现通信高效的子模型联邦学习?一种有希望的方法是使用私有子模型下载的私有信息检索(PIR),同时使用一种针对稀疏向量进行优化的安全聚合变体来聚合模型更新。

该领域的开放问题包括表征与实际兴趣相关的子模型训练问题的稀疏度情况,并开发在这些稀疏度情况下通信高效的稀疏安全聚合技术。另一个开放问题是,私有信息检索(PIR)和安全聚合是否可以进行协同优化,以实现比各自独立操作更好的通信效率(例如,通过在两个功能的实现之间共享一些成本)。

在这里,一些形式的本地和分布式差分隐私也存在挑战,因为通常会对向量的所有元素添加噪声,即使是零元素也会被添加噪声。结果,将噪声添加到每个客户端会将原本是稀疏的模型更新(即只在子模型上非零)转变为具有高概率非零值的密集化私有化模型更新。一个开放的问题是,是否可以解决这种紧张状态,即是否可以有意义地实现分布式差分隐私的具体化,同时保持模型更新的稀疏性。

4.5用户感知

联邦学习体现了数据集中和最小化的原则,可以减轻许多系统性隐私风险。然而,正如上面讨论的,清楚地了解它所提供的保护(以及未提供的保护)以及可以用来提供对第4.1节中所述威胁模型的保护的技术是很重要的。尽管前面的部分侧重于针对精确威胁模型的隐私严格量化,但本节侧重于用户的感知和需求方面的挑战。

具体而言,以下是一些重要的实际价值的开放问题。是否有办法使特定联邦学习实现的优点和局限性对普通用户来说更加直观?FL基础设施的参数和特性可能会使其足够(或不足够)用于隐私和数据最小化的声明?联邦学习是否会给用户一种错误的隐私感觉?我们如何使用户在了解其数据正在发生的事情时感到安全并确实保持安全?用户是否以不同的方式重视隐私的不同方面?人们想要保护的事实如何?知道这些事情是否能使我们设计出更好的机制?是否有方法可以很好地对人们的隐私偏好建模,以便决定如何设置这些参数?如果不同技术具有不同的效用/隐私/安全属性,谁有权决定使用哪种技术?仅仅是服务提供商吗?还是用户?还是他们的操作系统?他们的政治管辖区?类似于“仅受保护的隐私” [267] 这样的机制是否有作用,可以为大多数用户提供隐私保障,同时允许针对社会优先事项(如反恐)进行有针对性的监视?是否有方法让用户选择所需的隐私级别?

对于开始解决这些问题,两个重要的方向似乎特别相关。

4.5.1 了解特定分析任务的隐私需求

许多FL的潜在用例涉及复杂的学习任务和用户的高维数据,这两者都可能需要大量的噪声来保护差分隐私。然而,如果用户不同程度上关心保护他们的数据免受所有可能的推断,这可能允许放宽隐私约束,以减少添加的噪声。例如,考虑由智能家居恒温器生成的数据,它被编程成在房屋为空时关闭,在居民返回家时打开。从这些数据中,观察者可以推断居民晚上几点回家,这可能是非常敏感的。然而,更粗糙的信息结构可能只会显示居民在凌晨2点到4点之间是否在睡觉,这可能较不敏感。

这种方法在隐私的Pufferfish框架中得到了形式化[271],该框架允许分析师指定必须在差分隐私保证下学习的受保护谓词类别,而所有其他谓词可以在不使用差分隐私的情况下学习。为了使这种方法在实践中提供令人满意的隐私保证,分析师必须了解用户的隐私需求,以适应他们特定的分析任务和数据收集过程。联邦学习框架可以被修改以

允许个体用户指定他们允许和不允许的推断。这些数据限制可以在设备上处理,只有“允许”的信息在FL模型更新步骤中与服务器共享,或者可以在数据收集完成后的聚合步骤中进行。进一步的工作应该致力于开发技术工具,以将这种用户偏好纳入FL模型,并开发从用户那里获取有意义偏好的技术。

4.5.2 行为研究以引出隐私偏好

任何要求个体用户指定其自己的隐私标准的隐私方法也应包括行为或现场研究,以确保用户可以表达明智的偏好。这应该包括教育组件和偏好度量。

教育组件应该测量并提高用户对使用的隐私技术(例如,第4.2节)和数据使用细节的理解。对于涉及联邦学习的应用程序,这还应该包括对联邦学习的解释以及确切地哪些数据将发送到服务器。一旦教育研究的组成部分验证了典型用户能够有意义地理解私有学习过程提供的隐私保证,研究人员可以开始引出偏好。这可以在行为实验室、大规模实地实验或小型焦点小组中进行。应该注意,要确保提供偏好数据的个体足够了解提供高质量数据,并且代表了目标人群。

尽管行为经济学和实验经济学的丰富领域早已表明人们在公开和私密条件下表现不同(即,当他们的选择被他人观察或不被观察时),但在引出差分隐私偏好方面几乎没有进行过多少行为研究 [144, 6]。扩展这一领域的研究将是向广泛的私有联邦学习未来实施迈出的关键一步。教育组件的结果将在此处证明有用,以确保研究参与者充分知情并理解他们面临的决策。这些实验的重要准则应该是在道德上进行,不涉及欺骗。

4.6 总结

  • 保护用户数据的隐私需要考虑正在计算的数据功能以及计算的执行方式(特别是谁可以看到/影响中间结果)。【第4.2节】

    • 处理“什么”方面的技术包括数据最小化和差分隐私。【第4.2.2节,第4.3.2节】。目前仍然存在一个重要的挑战,即如何最好地将差分隐私的核算和私有化技术适应实际部署,包括在重叠人口中训练许多机器学习模型,使用时间演化的数据,由多个独立的参与者,在现实世界的不确定性(如客户可用性)的情况下,同时不会迅速耗尽隐私预算并保持高效用。
    • 处理“如何”方面的技术包括安全多方计算(MPC)、同态加密(HE)和可信执行环境(TEEs)。虽然一些关键功能的MPC技术已经大规模部署,但许多重要的功能仍然比它们的不安全对应功能需要更多的通信和计算资源。与此同时,生产一个可靠的抵御攻击的TEEs平台,以及将经验证的二进制连接到特定隐私属性的支持基础设施和流程仍然是一个未成熟的开放性挑战。【第4.2.1节】
    • 技术应该组合以实现隐私深度,即使系统的一个技术/组件受到威胁,隐私期望也能优雅地降级。【第4.1节】
    • 分布式差分隐私最好地结合了“什么”和“如何”的技术,以在诚实但好奇的服务器、可信的第三方或可信的执行环境下提供高精度和高隐私。【第4.2.2节,第4.4.3节】
  • 可验证性使各方能够证明他们已忠实地执行了他们计算的部分。

    • 可验证性的技术包括零知识证明(ZKPs)和可信执行环境(TEEs)。【第4.2.3节】
    • 针对对抗性服务器的强保护仍然是联邦学习中的一个重要开放问题。【第4.4节】

5 防御攻击和故障

现代机器学习系统可能会受到各种类型的故障影响。这些故障包括非恶意故障,如预处理流程中的错误、噪声训练标签、不可靠的客户端,以及明确针对训练和部署流程的攻击。在本节中,我们将反复看到联邦学习的分布式性质、架构设计和数据限制开启了新的故障模式和攻击面。此外,用于保护联邦学习隐私的安全机制可能会使检测和纠正这些故障和攻击变得特别具有挑战性。

虽然这些挑战的融合可能会使稳健性难以实现,但我们将讨论许多有前景的研究方向,以及它们如何适应或改进联邦环境中的情况。我们还将讨论关于不同类型的攻击和故障之间关系的广泛问题,以及这些关系在联邦学习中的重要性。

本节首先讨论了恶意攻击,在子节5.1中开始,然后涵盖了非恶意故障模式,最后在子节5.3中探讨了隐私和稳健性之间的紧张关系。

5.1 模型性能的恶意攻击

在这一小节中,我们首先描述了对手的目标和能力,然后概述了联邦学习中的主要攻击模式,并总结了该领域中一些未解决的问题。我们使用术语“恶意攻击”来指代对联邦学习系统的训练和推断流程进行的任何改变,旨在以某种方式降低模型性能。任何实施恶意攻击的代理都将被称为“对手”。需要注意的是,虽然术语“恶意攻击”通常用于引用推断时的攻击(有时与所谓的“对抗性示例”可以互换使用),但我们将恶意攻击解释得更广泛。此外,与其试图降低模型性能不同,对手还可以试图推断其他用户的私人数据。这些数据推断攻击在第4节中有详细讨论。因此,在本节中,我们将使用“恶意攻击”来指代对模型性能的攻击,而不是对数据推断的攻击。

恶意攻击的示例包括数据毒化[69, 319]、模型更新毒化[44, 67]和模型逃逸攻击[441, 69, 211]。这些攻击可以广泛分类为训练时攻击(毒化攻击)和推断时攻击(逃逸攻击)。与分布式数据中心学习和集中式学习方案相比,联邦学习主要的区别在于模型如何在一组(可能是大量的)不可靠设备上进行训练,这些设备具有私有的、不可检查的数据集;而使用部署的模型进行推断在很大程度上保持不变(有关这些和其他差异的更多讨论,请参见表1)。因此,联邦学习可能在训练时引入新的攻击面。训练模型的部署通常是应用程序相关的,通常与正在使用的学习范式(集中式、分布式、联邦或其他)无关。尽管如此,在下面我们将讨论推断时攻击,因为(a)对训练阶段的攻击可以作为推断时攻击的跳板[319, 67],并且(b)许多用于防御推断时攻击的方法是在训练期间实施的。因此,在联邦训练系统上引入新的攻击向量可能与新的恶意推断时攻击相结合。我们将在第5.1.4节中详细讨论这一点。

5.1.1 对手的目标和能力

在本小节中,我们将研究对手的目标和动机,以及不同能力(其中一些是特定于联邦环境的能力)。我们将检查对手能力的不同维度,并在不同的联邦设置中考虑它们(请参见第1节的表1)。正如我们将讨论的,不同的攻击场景和防御方法在不同的联邦背景下具有不同程度的适用性和兴趣。特别是,联邦学习环境的不同特点会影响对手的能力。例如,只控制一个客户端的对手在跨设备设置中可能是微不足道的,但在跨存储库的联邦设置中可能会产生巨大的影响。

目标 在较高层次上,对机器学习模型的对手攻击试图以某种不希望的方式修改模型的行为。我们发现攻击的目标通常指的是不希望的修改范围或目标领域,一般有两个级别的范围:

  1. 无目标攻击,或模型降级攻击,旨在降低模型的全局准确性,或“完全破坏”全局模型[69]。

  2. 有目标攻击,或后门攻击,旨在在少数示例上改变模型的行为,同时保持所有其他示例的良好准确性[115, 319, 44, 67]。

例如,在图像分类中,有目标攻击可能会向一组“绿色汽车”的训练图像中添加一个小的视觉小细节(后门),以便使模型将其标记为“鸟”。然后,训练过的模型将学习将视觉小细节与类别“鸟”相关联。这以后可以利用来发动简单的规避攻击,只需将相同的视觉小细节添加到任意一张绿色汽车的图像上,就可以将其分类为“鸟”。模型甚至可以被后门化,而无需对有目标的推断输入进行任何修改。Bagdasaryan等人[44]引入了“语义后门”,其中对手的模型更新会迫使训练模型在一小部分数据上学习不正确的映射。例如,对手可以迫使模型将所有绿色的汽车分类为鸟类,从而在推断时导致错误分类[44]。

虽然上面的讨论暗示了有目标攻击和无目标攻击之间存在明确的区别,但实际上在这些目标之间有一种连续性。虽然纯粹的无目标攻击可能只旨在降低模型的准确性,但更加微妙的无目标攻击可能旨在降低模型在除了一小部分客户数据之外的所有数据上的准确性。这反过来又开始类似于有目标攻击,其中后门旨在相对于其余评估数据而言,将模型在少数示例上的准确性膨胀。同样,如果对手在数据的特定特征上执行了有目标的攻击,这个特征恰好存在于所有的评估示例中,那么他们(也许是无意地)制造了一个无目标的攻击(相对于评估集而言)。虽然这种连续性对于理解对手攻击的领域是很重要的,但我们通常将在下面讨论纯粹的有目标攻击或无目标攻击。

能力 同时,当试图在训练期间颠覆模型时,对手可能具有多种不同的能力。需要注意的是,联邦学习引发了许多问题,涉及对手可能具有的各种能力。

清晰地定义这些能力对于社区权衡提出的防御方法的价值是必要的。在表11中,我们提出了一些重要考虑的能力轴。我们注意到这不是一个完整的列表。有许多其他关于对手能力的特征可以进行研究。

表11:联邦设置中对手能力的特征。

在分布式数据中心和集中式设置中,已经涉及了针对各种攻击向量的攻击和防御工作,包括模型更新污染[76、116、111、342、18]、数据污染[69、141、432、152]和规避攻击[70、441、212、98、328]。正如我们将看到的,联邦学习增强了许多攻击的效力,并增加了防御这些攻击的难度。联邦设置与数据中心多机学习共享一个训练时的污染攻击向量:从远程工作人员发送回共享模型的模型更新。这可能是一个强大的能力,因为对手可以构造恶意的更新,实现精确的期望效果,而无需遵循规定的客户损失函数或训练方案。

另一个未在表11中讨论的可能的攻击向量是中央聚合器本身。如果对手能够危害聚合器,那么他们可以轻松地对受训模型进行有针对性和无针对性的攻击[319]。虽然恶意的聚合器可能会被那些证明培训过程完整性的方法(如多方计算或零知识证明)所检测到,但这项工作在联邦和分布式数据中心设置中似乎类似。因此,在后续讨论中省略了对该攻击向量的讨论。

在设计防御方法时,对手检查模型参数的能力是一个重要的考虑因素。黑盒模型通常假设对手没有直接访问参数的能力,但可能能够查看输入输出对。这个设置通常与联邦学习不太相关:因为模型会被广播到所有参与者进行本地训练,所以通常假设对手直接访问模型参数(白盒)。此外,针对白盒、模型更新污染攻击的有效防御必然也会防御任何黑盒或数据污染攻击。

在特定联邦设置(跨设备、跨存储等)的背景下,评估参与者勾结的能力是一个重要的考虑因素。在训练时攻击中,可能有各种各样的对手危害不同数量的客户。直观地说,如果对手能够协调其被毒害的更新,那么他们可能会比单独行动时更有效。对于我们可怜的联邦学习防御研究人员来说,也许更糟糕的是,勾结可能不会在“实时”内发生(在更新内勾结),而是跨模型更新发生(跨更新勾结)。

一些联邦设置自然会导致有限的参与率:在数亿台设备的情况下,每次更新采样几千台设备可能在整个培训过程中不太可能采样相同的参与者(如果采样的话)。因此,仅有一个客户限制的对手可能只能有限次数地注入恶意更新。一个更强大的对手可能会在每一轮中参与,或者控制多个串通的客户的单个对手可以实现持续参与。另外,在表1中的跨存储联邦设置中,大多数客户在每一轮中都会参与。因此,在跨存储联邦学习系统的每一轮中进行攻击的能力可能比跨设备设置的每一轮中进行攻击的能力更高。

联邦设置中对训练时对手的其他维度是他们的适应能力。在标准的分布式数据中心培训过程中,恶意数据提供者通常只能进行一次静态攻击,即在训练开始之前提供恶意数据。相反,在具有持续参与联邦设置能力的恶意用户可能会在整个模型训练过程中发动污染攻击,其中用户会根据训练的进展来自适应地修改训练数据或模型更新。需要注意的是,在联邦学习中,只有在客户可以在整个训练过程中多次参与时,这种适应性才是有趣的。在接下来的几节中,我们将更深入地探讨不同的攻击向量、可能的防御措施以及可能有助于社区推进领域的领域。

5.1.2模型更新污染

模型更新污染是一种自然且强大的攻击类别。在这些攻击中,对手可以直接操纵向服务提供者报告的更新。在联邦设置中,这可以通过直接损坏客户的更新或某种中间人攻击来执行。在本节中,我们假设直接更新操纵,因为这严格增强了对手的能力。因此,我们假设对手(或对手)直接控制一些客户,并且他们可以直接更改这些客户的输出,以试图将学习的模型偏向他们的目标。

非定向和拜占庭攻击 对于非定向的模型更新污染攻击,拜占庭威胁模型特别重要,其中分布式系统中的故障可以产生任意输出[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攻击的影响[190]。在联邦学习中,可能的挑战涉及在不直接检查节点数据的情况下防御勾结或检测勾结的对手。

5.1.3 数据污染攻击

数据污染攻击可能比模型更新污染更具限制性。在这种范式中,对手无法直接破坏对中心节点的报告。相反,对手只能操纵客户数据,可能是替换数据的标签或特定特征。与模型更新污染一样,数据污染可以用于定向攻击[69, 115, 275]和非定向攻击[319, 44]。当对手只能在联邦学习系统的边缘影响数据收集过程,但不能直接破坏学习系统内的导出量(例如模型更新)时,这种攻击模型可能更自然。

数据污染与拜占庭鲁棒聚合 由于数据污染攻击会引起模型更新污染,任何防御拜占庭更新的方法也可以用于防御数据污染。例如,谢等人[487]、谢[484]和谢等人[486]提出了拜占庭鲁棒聚合器,成功地抵御了卷积神经网络上的标签翻转数据污染攻击。正如在第5.1.2节中讨论的,一个重要的研究方向涉及分析和改进这些方法在联邦学习中的应用。非IID数据和客户不可靠性都提出了严重的挑战,并破坏了关于拜占庭鲁棒聚合的一般假设。对于数据污染,存在可能拜占庭威胁模型过于强大的情况。通过限制为数据污染(而不是一般的模型更新污染),可能可以设计一个更具针对性和有效性的拜占庭鲁棒聚合器。我们将在第5.1.3节末尾详细讨论此问题。

数据净化和网络修剪 专门为数据污染攻击设计的防御通常依赖于“数据净化”方法[141],旨在去除受污染或异常的数据。最近的研究发展了使用稳健统计的改进数据净化方法[432, 416, 454, 152],这些方法通常具有对少量异常值的稳健性证明[152]的优势。这些方法可以应用于定向和非定向攻击,取得了一定程度的实证成功[416]。用于防御后门攻击的一类相关防御措施是“修剪”防御。与其移除异常数据不同,修剪防御试图去除在干净数据上不活跃的激活单元[314, 465]。这样的方法受到以前的研究的启发,这些研究经验性地显示,旨在引入后门的污染数据通常会触发所谓的“后门神经元”[214]。虽然这种方法不需要直接访问所有客户数据,但它们需要代表全局数据集的“干净”保留数据。

无论是数据净化还是网络修剪都不适用于联邦设置,因为它们通常都需要访问客户数据,或者类似于客户数据的数据。因此,一个开放的问题是,在不丧失隐私的情况下,数据净化方法和网络修剪方法是否可以在联邦设置中使用,或者防御数据污染是否需要新的联邦方法。此外,Koh等人[276]最近表明,许多基于数据净化的启发式防御仍然容易受到自适应污染攻击的影响,这表明即使在联邦数据净化中采用联邦方法可能也不足以防御数据污染。

即使在联邦学习中,检测污染数据的存在(不一定需要对其进行纠正或识别具有污染数据的客户)也是具有挑战性的。当数据污染旨在插入后门时,这种困难变得更加严重,因为即使全局训练准确度或每个客户训练准确度等度量也可能不足以检测后门的存在。

模型更新污染和数据污染之间的关系 由于数据污染攻击最终会导致某个客户端的输出发生一些变化,因此数据污染攻击是模型更新污染攻击的特例。另一方面,不清楚什么类型的模型更新污染攻击可以通过数据污染攻击来实现或近似。Bhagoji等人[67]最近的研究表明,数据污染可能较弱,特别是在参与率有限的情况下(见表11)。一个有趣的研究方向将是量化这两种类型攻击之间的差距,并将这种差距与在这些攻击模型下操作的对手相对强度联系起来。虽然这个问题可以独立于联邦学习提出,但由于对手能力的差异(见表11),在联邦学习中尤其重要。例如,可以执行

数据污染攻击的客户端最大数量可能远远高于可以执行模型更新污染攻击的数量,尤其是在跨设备设置中。因此,理解这两种攻击类型之间的关系,特别是与对手客户端数量相关的关系,将极大地有助于我们理解联邦学习中的威胁景观。

可以通过多种方式来解决这个问题。在经验上,可以研究各种攻击的性能差异。或者调查各种模型更新污染攻击是否可以由数据污染攻击来近似,并开发相应的方法。从理论上讲,尽管我们推测模型更新污染在形式上可能比数据污染更强,但我们还没有发现任何正式的声明来解决这个问题。一个可能的方法是使用机器教学工作的见解和技术(参见[511]的参考)来理解“最优”数据污染攻击,就像[340]中的那样。任何正式的陈述可能都会依赖于诸如受损客户的数量和感兴趣的函数类别之类的量。直观地说,模型更新污染和数据污染之间的关系应该取决于模型对数据的过度参数化程度。

5.1.4 推理-时间逃避攻击

在逃避攻击中,对手可能试图通过精心操作输入模型的样本来绕过部署的模型。其中一个经过充分研究的逃避攻击形式是所谓的“对抗性样本”。这些是经过扰动的测试输入的版本,对人类来说几乎与原始测试输入无法区分,但会欺骗训练过的模型[70, 441]。在图像和音频领域,对抗性样本通常是通过对测试样本添加范数受限的扰动构造的,尽管近期的研究探索了其他形式的扰动[176, 477, 259]。在白盒设置中,前述的扰动可以通过约束优化方法(如投影梯度上升法)生成,该方法试图在满足范数约束的情况下最大化损失函数[284, 328]。这种攻击经常会导致自然训练的模型在图像分类基准测试(如CIFAR-10或ImageNet)上的准确率达到零[98]。在黑盒设置中,模型还显示容易受到基于对模型的查询访问的攻击[113, 90]或基于类似数据训练的替代模型的攻击[441, 366, 452]。

虽然黑盒攻击在数据中心环境中可能更加自然,但联邦学习中的模型广播步骤意味着模型可能对任何恶意客户可见。因此,联邦学习增加了对白盒逃避攻击的防御需求。

已经提出了各种方法来使模型对逃避攻击更加稳健。在这里,稳健性通常通过模型在白盒对抗性样本上的性能来衡量。不幸的是,许多提出的防御措施已经被证明只提供了表面上的安全感[30]。另一方面,对抗性训练,在其中使用对抗性样本训练稳健模型,通常会对白盒逃避攻击提供一定的稳健性[328, 483, 412]。对抗性训练通常被制定为极小极大优化问题,其中对抗性样本和模型权重交替更新。我们注意到,并没有对抗性训练的规范制定,选择如极小极大优化问题和学习率等超参数可以显著影响模型的稳健性,特别是在大规模数据集(如ImageNet)中。此外,对抗性训练通常仅提高对训练中包含的特定类型对抗性样本的稳健性,可能使训练模型易受其他形式对抗性噪声的攻击[176, 448, 414]。

将对抗性训练方法调整为联邦学习带来了许多开放问题。例如,要在获得显著稳健性之前,对抗性训练可能需要多个时期。然而,在联邦学习中,特别是在跨设备的联邦学习中,每个训练样本可能只会被看到有限次数。更一般地说,对抗性训练主要是针对IID数据开发的,不太清楚在非IID设置中的表现如何。例如,在进行对抗性训练时设置适当的扰动范围界限(即使在IID设置中也是一个具有挑战性的问题[453])在联邦设置中变得更加困难,因为训练数据不能在训练之前进行检查。另一个问题是生成对抗性样本相对昂贵。虽然一些对抗性训练框架尝试通过重用对抗性样本来最小化这种成本[412],但这些方法仍需要客户端大量的计算资源。这在跨设备设置中可能会出现问题,因为对抗性样本生成可能加剧内存或功率限制。因此,在联邦学习环境中可能需要新的设备上稳健优化技术。

训练时间攻击和推理时间攻击之间的关系 前述的逃避攻击讨论通常假定在推理时间内,对手具有白盒访问权限(可能是由于联邦学习的系统层面的实际情况)。这忽略了一个现实,即对手可能会破坏训练过程以创建或增强模型在推理时间内的漏洞,就像[115]中的那样。这可以通过定向或非定向方式由对手进行;对手可以使用定向攻击

来在模型中创建特定类型的对抗性样本漏洞[115, 214],或使用非定向攻击来降低对抗性训练的效果。

对抗训练时间和推理时间对手的一种可能防御方法是检测后门攻击[454, 108, 465, 122]。将之前的防御方法(如上述引用的方法)应用于联邦设置的困难之处在第5.1.3节中有更详细的讨论。然而,在许多联邦设置中,仅仅检测后门可能是不够的,因为我们希望在推理时间对输出模型进行稳健性保证。更复杂的解决方案可能会将训练时间防御方法(如稳健聚合或差分隐私)与对抗性训练相结合。该领域中的其他开放性工作可能涉及量化各种类型的训练时间攻击如何影响模型在推理时间内的脆弱性。考虑到在纯训练时间攻击或纯推理时间攻击中防御的现有挑战,这一领域的工作必然是更具推测性和未探索性质的。

5.1.5 从隐私保证中获得的防御能力

许多在联邦学习系统中的挑战可以被视为确保某种程度的鲁棒性:无论是出于恶意还是其他原因,干净数据可能会被损坏或以其他方式篡改。最近关于数据隐私的工作,特别是差分隐私(DP)[167],从鲁棒性的角度定义了隐私。简而言之,随机噪声会在训练或测试时添加,以减少特定数据点的影响。有关差分隐私的更详细解释,请参见第4.2.2节。作为一种防御技术,差分隐私具有几个引人注目的优点。首先,它在各种攻击下提供了强大的最坏情况保护。其次,有许多已知的差分隐私算法,可以应用于许多机器学习任务。最后,差分隐私在组合下是封闭的,即在观察了先前算法的结果后,可以将防御应用于后续算法的输入。

我们简要描述了差分隐私在防御上述三种攻击类型方面的应用。

防御模型更新污染攻击
服务提供商可以通过(1)对客户模型更新强制执行范数约束(例如通过修剪客户更新),(2)聚合修剪的更新,(3)并在总计中添加高斯噪声来限制任何个体客户对整体模型的贡献。这种方法防止过度拟合到任何个别更新(或少数恶意个体),与差分隐私训练(在第4.3.2节中讨论)是相同的。孙等人[438]最近探索了将差分隐私应用于防御有针对性攻击,展示了初步成功。然而,孙等人[438]所分析的实验范围和有针对性攻击应该扩展,以包括更一般的对抗性攻击。特别地,王等人[466]表明,从在基础分布中概率较低的数据样本生成的边缘案例后门能够绕过差分隐私防御。他们进一步证明,对抗性样本的存在意味着边缘案例后门的存在,这表明这两种威胁的防御可能需要同时进行开发。因此,仍然需要更多的工作来验证DP是否能够成为一种有效的防御。更重要的是,仍然不清楚DP的超参数(如`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)可能执行数据清理以消除此类污染,但由于数据隐私限制,这种处理在交叉设备设置中不太可能发生。最终,这些前述的污染可能会损害联邦学习过程的收敛性,无论是由于网络因素还是嘈杂的数据。

由于这些污染可以被视为轻微形式的模型更新和数据污染攻击,一种缓解策略是使用用于对抗性模型更新和数据污染攻击的防御策略。鉴于目前在联邦设置中缺乏经证明具有鲁棒性的训练方法,这可能不是一个实际的选择。此外,即使存在这样的技术,它们也可能对许多联邦学习应用来说计算量过大。因此,在这里的开放性工作涉及开发对小到中等噪声水平具有鲁棒性的训练方法。另一个可能性是,标准的联邦训练方法(如联邦平均[337])对小量噪声本质上具有鲁棒性。调查各种联邦训练方法对不同噪声水平的鲁棒性将有助于了解如何确保联邦学习系统对非恶意故障模式具有鲁棒性。

5.3 探索隐私与鲁棒性之间的紧张关系

执行隐私的一个主要技术是安全聚合(SecAgg)(见4.2.1)。简而言之,SecAgg是一种工具,用于确保服务器仅看到客户端更新的聚合,而不看到任何单个客户端的更新。尽管有助于确保隐私,但SecAgg通常使得实施对抗性攻击的防御更加困难,因为中央服务器只看到客户端更新的聚合。因此,深入研究在使用安全聚合时如何防御对抗性攻击具有根本性的意义。基于范围证明的现有方法(例如Bulletproofs [92])可以保证上述基于差分隐私的剪切防御与SecAgg兼容,但是开发计算和通信高效的范围证明仍然是一个活跃的研究方向。
SecAgg还为其他防御方法带来了挑战。例如,许多现有的拜占庭-鲁棒聚合方法在服务器上使用非线性操作(例如Xie等人的方法[486]),目前尚不清楚这些方法是否与最初设计用于线性聚合的SecAgg兼容。最近的工作已经找到了在SecAgg下逼近几何中值的方法[379],通过在更通用的聚合循环中使用少量的SecAgg调用。然而,一般情况下不清楚在使用SecAgg的情况下可以计算哪些聚合器。

5.4 总结

  • 训练过程中的第三方参与者引入了对手的新能力和攻击向量,见表11。
  • 联邦学习引入了一种新型的污染攻击,即模型更新污染(第5.1.2节),同时也容易受到传统数据污染的影响(第5.1.3节)。
  • 训练参与者可能会影响优化过程,可能加剧推理时攻击(第5.1.4节),通信和计算约束可能使先前提出的防御策略不切实际。
  • 非恶意故障模式(第5.2节)可能难以应对,因为在联邦设置中无法访问原始数据,尽管从某种角度来看,它们可能与污染攻击有关。
  • 在尝试同时提高鲁棒性和隐私性的机器学习中存在紧张关系(第5.3节)。
    需要进一步探索的领域包括:
  • 量化数据污染和模型更新污染攻击之间的关系。是否存在它们不等效的情况?[第5.1.3节]
  • 量化训练时攻击对推理时脆弱性的影响。提高推理时鲁棒性保证需要超越检测后门攻击。[第5.1.4节]
  • 对抗性训练已在集中式环境中用作一种防御方法,但在边缘计算有限的交叉设备联邦设置中可能不切实际。[第5.1.5节]
  • 联邦学习需要新的方法和工具来支持开发人员,因为由于数据受限,调试ML流水线尤其困难。[第5.2节]
  • 鲁棒性与公平性之间存在紧张关系,因为机器学习模型往往会将远离中位数的更新视为有害。然而,联邦设置可能会产生一长串可能被误认为是嘈杂模型更新的用户。[第5.2节]
  • 基于加密的聚合方法和鲁棒性技术提出了集成挑战:保护参与者身份可能与检测对抗性参与者相抵触。所提出的技术仍超出了实用性的范围,需要新的通信和计算高效的算法。[第5.3节]

6 确保公平性和解决偏差来源

机器学习模型通常会呈现出令人惊讶且意想不到的行为。当这些行为导致对用户产生不良影响的模式时,我们可能会根据某些标准将模型分类为“不公平”。例如,如果具有相似特征的人得到完全不同的结果,那么这违反了个体公平的标准[169]。如果某些敏感群体(种族、性别等)在结果模式方面有不同的表现,比如不同的虚假负面率,这可能违反了各种人口统计公平的标准,详见[51,349]的调查。反事实公平的标准要求,在考虑了所有因果相关路径后,用户应该获得与其属于不同群体(种族、性别等)的情况下相同的待遇[287]。

联邦学习为公平性研究提供了几个机会,其中一些扩展了非联邦设置中的先前研究方向,而另一些则是联邦学习独有的。本节提出了这两类领域中的开放性问题。

6.1 训练数据中的偏差

导致机器学习模型不公平性的一个原因是训练数据中的偏差,包括认知、抽样、报告和确认偏差。一个常见的反模式是,在训练数据中,少数或边缘社会群体的代表性不足,因此在训练过程中,学习者对这些群体的权重较小[258],导致这些群体的成员(例如[93])的预测质量较差。

正如联邦学习中使用的数据访问过程可能引入数据集转移和非独立性(第3.1节)一样,引入偏差的风险也存在。例如:

  • 如果在插入设备或充电设备时选择更新,则在不同时间计算的模型更新和评估可能与诸如白班与夜班工作时间表之类的因素相关联。
  • 如果从给定时间的可选设备池中选择更新的设备,则在连接设备较少的时间(例如夜班或非常规时区)可能在聚合输出中占据过多的比例。
  • 如果选择的设备在计算输出时较快地保留其输出,则:a) 设备处理器更快的输出可能会占主导地位,这些设备可能是较新的设备,从而与社会经济地位相关联;b) 数据较少的设备的输出可能会占主导地位,这些设备可能代表使用产品较少频繁的用户。
  • 如果数据节点具有不同数量的数据,则联邦学习可能会更高地权衡使用生成数据的产品或特征的重度用户的贡献。
  • 如果更新频率取决于延迟,则某些地理区域和具有较慢设备或网络的人群可能会受到轻视。
  • 如果潜在用户群体由于社会经济原因不拥有设备,则他们在训练数据集中可能会受到低估,随后在模型训练和评估中也会受到低估(或未受估计)。
  • 在联邦训练期间对选定设备的模型损失进行无权重聚合可能会损害某些设备上的模型性能[302]。

据观察,数据产生过程中的偏差也会导致从这些数据中学习到的结果模型的不公平(例如,见[170,394])。例如,假设训练数据基于用户与产品的互动,而该产品未能融入包容性设计原则。那么,用户与产品的互动可能无法表达用户意图(例如,见[403]),而可能更多地表达了针对不包容的产品设计的应对策略(因此可能需要对产品交互模型进行基本修复)。从这些互动中学习可能会忽略或持续为某些产品用户群体提供不良体验,而这种方式在维护联邦设置中的隐私的同时很难被检测到。这种风险在所有基于用户互动的机器学习场景中都是共有的,但在从个别设备上的应用收集数据时,尤其在联邦设置中尤为显著。

研究如何识别或减轻数据生成过程中的偏差程度是联邦学习研究和更广泛的机器学习研究所必须解决的关键问题。同样,尽管有限的先前研究已经在联邦设置中演示了识别和纠正偏差的方法(例如通过[255]中的对抗性方法),但在这个领域还需要进一步的研究。最后,为从可能存在偏差的训练数据中学习的模型应用事后公平性修正方法也是未来研究的有价值的方向。

6.2 无敏感属性访问的公平性

对于许多现有的公平性标准,包括在第6.1节讨论的标准,明确访问人口统计信息(种族、性别等)是至关重要的。然而,联邦学习常常部署的上下文也会引发在个人敏感属性不可用的情况下考虑公平性的问题。例如,在开发个性化语言模型或在不了解个人任何其他人口统计信息的情况下开发公平的医学图像分类器时可能会发生这种情况。甚至更根本的是,在个体和设备之间假定的一对一关系通常会瓦解,尤其是在非西方的情况下[403]。在没有敏感群体成员数据的情况下衡量和纠正不公平现象是联邦学习研究人员需要解决的关键领域。

有限的现有研究已经考察了在没有访问敏感属性的情况下的公平性。例如,这已通过分布鲁棒优化(DRO)进行了处理,该优化在训练过程中考虑了所有个体的最坏情况结果[225],并通过多校准进行了处理,该方法在训练数据的子集中进行了公平校准[232]。甚至这些现有方法也没有在联邦设置中应用过,从而为未来的实证研究提供了机会。如何使这些方法适用于典型的大规模、高维数据,这也是一个开放问题,因为DRO和多校准都具有与大n和p一起缩放的挑战。最后,开发附加的理论方法来定义不考虑“敏感属性”的公平性是进一步研究的关键领域。

其他的方法是重新构建现有的公平性概念,这些概念主要关注平等化一个结果的概率(其中一个被认为是“积极”的,另一个是“消极”的,适用于受影响的个体)。相反,没有访问敏感属性的公平性可能会被重新构建为对有效模型的平等访问。根据这种对公平性的解释,目标是在所有个体之间最大化模型的效用,而不考虑他们(未知的)人口统计身份,也不考虑个体结果的“优劣”。同样,这与联邦学习的最常见用途相符,例如语言建模或医学图像分类,这些用途中没有明确的“好”结果的概念,目标仅仅是为用户进行正确的预测,而不考虑结果。

现有的联邦学习研究为满足这种公平性解释提供了可能的方法,例如通过个性化[250,472]。在[302]中,使用类似的公平性概念,即“在设备之间分布模型性能更加公平”,来进行处理。

将属性独立方法明确应用于确保公平模型性能也是未来联邦学习研究的开放机会,特别重要的是,随着联邦学习的成熟和在不知道他们的敏感身份的实际用户人群中越来越广泛地部署。

6.3 公平性、隐私性和鲁棒性

公平性和数据隐私似乎是互补的伦理概念:在许多需要隐私保护的实际情境中,公平性也是所期望的。通常这是由于底层数据的敏感性。由于联邦学习最有可能在需要隐私和公平性的敏感数据情境中部署,因此重要的是联邦学习研究应该探讨联邦学习如何能够解决关于机器学习中的公平性问题,并且联邦学习是否会引发新的与公平性相关的问题。

然而,在某种程度上,公平性的理念似乎与联邦学习寻求提供保证的隐私概念存在紧张关系:不同ially私有的学习通常试图模糊个别识别特征,而公平性通常需要知道个体对敏感群体的成员身份,以便衡量或确保进行公平的预测。虽然差分隐私和公平性之间的权衡已经在非联邦设置中进行了研究[246, 145],但在如何(或是否)联邦学习能够独特地解决与公平性有关的问题方面,几乎没有相关研究。

最近的证据表明,差分隐私学习可能对敏感子群体产生不同的影响[43, 145, 246, 283],这进一步激发了研究联邦学习是否能够解决此类问题的动机。解决隐私(旨在保护模型不过于依赖个体)与公平性(鼓励模型在少数类上表现良好)之间的紧张关系的一个潜在解决方案可能是应用个性化技术(在第3.3节中讨论)和“混合差分隐私”,其中一些用户捐赠的数据具有较低的隐私保证[40]。

此外,目前的差分隐私优化方案是在不考虑敏感属性的情况下应用的 - 从这个角度来看,实证研究可能会证明差分隐私优化对少数子群体的影响最大[43]。对不同ially私有优化算法的修改,这些修改明确地试图保留少数子群体的性能,例如通过调整噪声和剪辑机制以考虑数据中的群体表示,也可能会在使用差分隐私进行训练的联邦模型中限制潜在的差异性影响。然而,以某种形式提供隐私保证的实现这样的自适应差分隐私机制既涉及算法问题,也涉及理论挑战,需要未来的研究来解决。

还需要进一步研究以确定上述问题在联邦设置中出现的程度。此外,如第6.2节所述,当没有敏感属性可用时,评估差分隐私对模型公平性的影响变得特别困难,因为尚不清楚如何确定模型表现不佳的子群体,以及如何量化差分隐私的“代价” - 调查和解决这些挑战是未来工作的一个开放问题。

更广泛地说,可以更普遍地研究隐私、公平性和鲁棒性之间的关系(参见第5节)。许多先前的机器学习工作,包括联邦学习在内,通常集中于鲁棒性的孤立方面(针对毒化或逃避),隐私性或公平性。一个重要的开放挑战是开发对既鲁棒、隐私和公平的联邦学习系统的共同理解。这种综合方法可以提供从不同但互补的机制中获益的机会。差分隐私机制可以用来减轻数据推断攻击,并为抵御数据毒化提供一个基础。另一方面,这种综合方法也揭示了新的漏洞。例如,最近的研究揭示了隐私和对抗性示例的鲁棒性之间的权衡[429]。

最后,隐私和公平性在学习数据表示方面在某种程度上自然地相遇,这些表示与某些敏感属性无关,同时保留了任务的效用。实际上,这个目标可以从隐私的角度来看:为了转换数据以隐藏私人属性,以及从公平的角度来看:作为使在这些表示上进行的模型相对于属性来说是公平的一种方式。在集中式设置中,学习这种表示的一种方式是通过对抗性训练技术,这些技术已经应用于图像和语音数据[255, 186, 327, 65, 431]。在联邦学习场景中,客户端可以在其数据上局部应用转换,以强制或改进联邦学习过程中的隐私和/或公平性保证。然而,以一

种在联邦环境中提供某种形式的隐私保证的方式来学习这种转换本身就是一个开放问题。

6.4 利用联邦学习提高模型多样性

联邦学习提供了通过分布式训练整合数据集的机会,这些数据集以前可能在单一位置组合起来是不切实际的,甚至可能违法。例如,美国的《健康保险便携与责任法案》(HIPAA)和《家庭教育权利和隐私法》(FERPA)限制了共享医疗患者数据和学生教育数据。到目前为止,这些限制导致建模发生在机构的孤立环境中:例如,使用个别医疗机构的电子健康记录或临床图像,而不是跨机构汇集数据和模型[91, 104]。在机构数据集的成员身份与个体的特定敏感属性,或者更广泛地与其行为和结果相关时,这可能会导致在那些机构中少数群体中的用户的代表性不足。重要的是,已经证明,在训练数据中缺乏代表性和多样性会导致性能不佳,例如在遗传疾病模型[333]和图像分类模型[93]中。

联邦学习提供了一种机会,通过提供高效的分散式训练协议以及对结果模型的隐私和非识别性保证,来利用独特的多样数据集。这意味着联邦学习使得在许多领域可以在多个机构数据集上进行训练,而在以前这是不可能的。这提供了一个实际的机会,通过将数据跨越很可能与敏感属性相关的边界进行组合,利用更大、更多样的数据集,并探索以前仅限于小群体的模型的普适性。更重要的是,这提供了一个机会,通过组合可能与敏感属性相关的边界上的数据,来改善这些模型的公平性。例如,参加特定的健康或教育机构可能与个体的种族或社会经济地位相关。正如上面第6.1节所述,训练数据中的代表性不足是模型不公平性的一个已证明的驱动因素。

未来的联邦学习研究应该调查在联邦训练环境中提高多样性是否也会改善结果模型的公平性,以及这种环境中所需的差分隐私机制可能如何限制从增加多样性中获得的公平性和性能提升。这包括需要进行实证研究,应用联邦学习并量化多样性、公平性、隐私和性能之间的相互作用;以及理论研究,为在机器学习公平性背景下的多样性等概念提供基础。

6.5 联邦公平性:新机遇和挑战

需要注意的是,联邦学习为公平性研究人员提供了独特的机遇和挑战。例如,通过允许分布式观测数据,甚至是基于特征的分布,联邦学习可以实现对分区数据的建模和研究,这些数据可能因敏感性而不适合直接共享[215, 224]。联邦学习可以增加可以以联邦方式使用的数据集的可用性,有助于改进机器学习模型的训练数据多样性,从而推进公平建模的理论和实践。

研究人员和实践者还需要解决联邦学习带来的独特公平性挑战。例如,联邦学习可以通过决定基于连接类型/质量、设备类型、位置、活动模式和本地数据集大小等考虑因素来对客户端进行抽样,从而引入新的偏见来源[81]。未来的工作可以调查这些不同的抽样约束在生成的模型公平性方面的影响程度,以及如何在联邦框架内减轻这些影响,例如[302, 289, 158]。诸如“不可知的联邦学习”[352]等框架提供了控制训练目标中偏见的方法。在技术上接近联邦学习系统的其他组件(例如模型压缩)的技术限制逐渐显现之际,改进现有联邦训练算法的公平性将变得尤为重要,这些算法最初有助于在联邦训练过程中扩大候选客户端的多样性。并没有普遍采用的独特公平性标准,多个标准已被证明相互不兼容。解决这个问题的一种方法是Awasthi等人的在线公平性框架和算法[41]。将这些解决方案适应联邦学习环境,并进一步改进它们,将成为机器学习公平性理论和算法中具有挑战性的研究问题。

在经典的集中式机器学习环境中,在过去的十年里已经取得了相当大的进展,以训练公平的分类器,如约束优化、后移方法和分布鲁棒优化[223, 503, 225]。一个未解决的问题是,在联邦学习设置下,这些在集中式训练中已经证明在提高公平性方面有用的方法是否可以在数据以分散方式分布且从业人员可能无法获得与人口分布相匹配的无偏样本的情况下使用(如果可以的话,需要哪些附加假设)。

6.6 总结

除了继承集中式机器学习中与偏见、公平性和隐私有关的重要挑战外,联邦学习还在这些领域带来了一组新的独特挑战和机遇。随着联邦学习在更多用户、领域和应用中的实际部署不断扩展,这些考虑的重要性可能会继续增加。

  • 训练数据中的偏见(第6.1节)是与联邦学习模型中的偏见和公平性相关的重要问题,特别是由于联邦化所特有的附加抽样步骤(例如,客户端抽样)和部分模型计算转移到客户端设备。
  • 在许多联邦学习部署中,缺少有关敏感属性的数据可能对测量和确保公平性构成挑战,并且还暗示了以不需要此类数据的方式重新构思公平性问题(第6.2节)的潜在方法。
  • 由于联邦学习通常部署在既关注隐私又关注公平性的情况下,这可能会在实践中放大隐私和公平性目标之间的紧张关系。需要进一步的工作来解决在联邦和集中学习中都能实现隐私、公平性和稳健性的方法之间的潜在紧张关系(第6.3节)。
  • 联邦学习提供了利用多样的利益相关方和数据来提高学习质量的机会,这可以通过更具代表性的数据集来提高下游模型的整体质量,以及由于更具代表性的数据集而提高其公平性(第6.4节)。
  • 联邦学习在集中训练制度中不存在的与公平性相关的挑战,但也提供了新的解决方案(第6.5节)

7 解决系统挑战

正如我们将在本节中看到的,构建用于联邦学习的系统所面临的挑战可以很清楚地分为两个独立的设置:跨设备和跨机构的联邦学习(参见第1.1节和第2.2节)。我们首先简要讨论在终端用户设备上进行大规模软件部署所固有的困难(尽管由于联邦学习堆栈的复杂性而变得更加严重);然后,我们将关注于跨设备学习的特定关键挑战,包括偏见、调整和高效地在设备端执行机器学习工作流程,最后简要介绍跨机构设置。

7.1 平台开发和部署挑战

在终端用户设备上运行计算与数据中心环境有很大的不同之处:
• 由于车队的异构性(设备在硬件、软件、连接性、性能和持续状态方面可能不同),潜在问题和边缘案例的范围是巨大的,通常无法通过自动化测试充分详细地覆盖。
• 监控和调试更加困难,因为遥测有限、延迟,并且无法物理访问设备以进行交互式故障排除。
• 运行计算不应影响设备性能或稳定性,即对用户应该是不可见的。

代码部署 在终端用户设备上安装、更新和运行软件可能不仅涉及广泛的手动和自动测试,还涉及逐步和可逆的发布(例如,通过使用由服务器控制的功能标志来保护新功能),同时监控关键性能指标在A/B实验中,如崩溃率、内存使用和应用程序相关的指标,例如延迟和参与度。这样的发布可以持续几周或几个月,具体取决于更新的传播率(对于网络连接不稳定的设备来说尤其具有挑战性)和升级的复杂性(例如,协议更改)。因此,在任何给定时间的安装基础将涉及各种发布。虽然这个问题不特定于联邦学习,但由于联合计算的固有协作性质,它在这里的影响更大:设备不断与服务器和其他设备通信,并以间接方式交换模型和参数更新。因此,兼容性问题很多,必须通过稳定的交换格式来解决,或者在不可能的情况下,通过广泛的测试基础设施提前检测到。

监控和调试 另一个重要的复杂性是监视设备和交互式调试问题的能力有限。虽然从终端用户设备获取遥测数据是必要的以检测问题,但隐私问题严重限制了可以记录什么、谁可以访问这些日志,以及保留这些日志的时间长度。一旦检测到回归,由于缺乏详细的上下文,庞大的问题空间(软件版本、硬件、模型和设备状态的交叉乘积),以及除了在受控环境中成功复现问题外几乎没有交互式调试问题的能力,因此深入到根本原因可能非常麻烦。

这些挑战在联邦学习设置中更加严重,其中 a) 设备上的原始输入数据无法访问,b) 由于设计匿名、临时和仅在聚合中公开的个体设备的贡献,使用传统方法来调查问题可能会变得困难或不可能——通过查找与硬件或软件版本的相关性,或测试需要访问原始数据的假设。在受控环境中复现问题通常很困难,因为这种环境与现实之间存在差距:数百个异构的嵌入式有状态设备具有非独立同分布的数据。

有趣的是,联邦技术本身可以帮助减轻这个问题,例如使用联邦分析[382]以隐私保护的方式收集日志,或者在调试过程中对系统行为或原始数据进行训练生成模型进行采样(参见第3.4.3节、第5.2节和[31])。因此,保持联邦学习系统的正常运行需要通过a) 对所有软件层进行广泛的自动化、持续的测试覆盖,包括单元测试和集成测试;b) 使用功能标志和A/B发布;以及c) 对回归的性能指标进行持续监测,提前检测问题。这对于那些本可以从共享和测试过的联邦学习基础设施中受益的较小实体来说,可能代价过高。

7.2 系统引发的偏差

部署、监控和调试也许不会直接涉及到联邦学习平台的用户,例如模型的作者或数据分析师。对于他们来说,数据中心和跨设备设置之间的关键区别主要分为以下两个类别:

7.2.1 设备可用性配置的动态性

跨设备联邦学习的核心原则在于设备只有在满足一些约束条件的情况下才会连接到服务器并运行计算:
- 硬性约束,这可能包括需要设备开启、与服务器连接的网络连接以及操作系统允许运行计算。
- 软性约束,这可能包括被选择的设备状态,以确保联邦学习不会产生费用或影响设备的可用性。对于移动电话这种常见情况(参见[81, 26]),要求可能包括设备处于空闲状态、正在充电和/或电池电量高于某个阈值、连接到不计费网络以及同一时间没有其他联邦学习任务正在运行。

这些约束共同引发了一个未知的、随时间变化的、与设备特定的函数 A i ( t ) A_i(t) Ai(t),对于设备i,以及整个设备组的可用性配置 A ( t ) = ∑ i A i ( t ) A(t) = \sum_i A_i(t) A(t)=iAi(t)。回合完成率和服务器流量模式[81, 491]表明,移动电话的可用性配置倾向于以周期函数的形式聚集,周期为1天,通过因素如人口统计数据、地理位置等的影响,这些配置在设备之间的相位、形状和振幅上发生变化。

7.2.2 系统引发的偏差示例

偏差的来源将取决于设备参与训练的特定方式,以及系统如何影响哪些设备最终对最终聚合的模型更新做出贡献。因此,在这些问题上进行讨论时,采用一个简化但具有代表性的系统设计是有益的。在迭代的联邦学习算法中,例如Federated Averaging(第1.1.2节,[337]),回合会在至少M个设备的一组上连续运行。为了适应由于设备条件的变化、超时或缓慢而未能贡献的设备的比例d,使用了过度分配方案,其中:

  • 在至少有 M ′ = M 1 − d M^{'} = \frac{M}{1-d} M=1dM 设备可用时,开始回合。
  • 在以下情况下关闭回合:
    • (a)当超过 M ′ − M M^{'} - M MM 设备断开连接时中止;或
    • (b)当至少有M个设备报告时成功。可能的设计选择之一是在恰好有M个设备之后停止;另一种可能性是继续等待滞后者(可能长达一定的最大时间)。

以上过程结合了可变的可用性配置文件,可能会引入各种形式的偏差:

  • 选择偏差:设备是否在时间t包含在回合中取决于两个因素:
    • (a)其可用性配置文件 A i ( t ) A_i(t) Ai(t)
    • (b)同时连接的设备数量:小于 M 0 M_0 M0 则无法开始回合;大于 M ′ M^{'} M 则单个设备被包含的概率变得非常小。事实上,仅在车队的可用性高峰或低谷处活跃的设备可能会被

低估。

  • 生存偏差
    • (a)由于服务器可能选择在至少有M个设备报告后的任意时间关闭回合,因此贡献会偏向于网络连接较好、处理器更快、CPU负载更低和数据较少的设备。
    • (b)设备在被操作系统中断时退出回合,这可能是由Ai(t)描述的设备条件变化引起的,或者是由于过多的内存使用。

正如可以看出的,一个设备对联邦学习回合的贡献概率是一个复杂的函数,同时受内部(例如设备特定)和外部(车队动态)因素的影响。当这个概率与数据分布的统计量相关联时,聚合结果可能会产生偏差。例如,语言模型可能会过多地代表具有高质量互联网连接或高端设备的人口统计信息;排名模型可能不会从产生大量训练数据和因此需要更长训练时间的高参与用户中获得足够的贡献。

因此,设计系统以明确考虑这些因素并集成旨在量化和减轻这些效应的算法是一个根本重要的研究方向。

7.2.3 量化和减轻系统引发的偏见中的开放性挑战

尽管联邦学习中的偏差潜在问题已在文献中得到了讨论(第6节,[81, 302, 171]),但在现实环境中定性和量化偏差以及其来源的系统研究是未来研究的方向。进行必要的工作可能会受到资源获取的限制,以及由于缺乏基准真值的固有原因,难以量化最终统计估计中的偏差。

我们鼓励进一步的研究,研究如何量化偏差并随后减轻偏差。偏差的一个有用的代理度量是研究设备对联邦学习的预期贡献率。在一个没有偏见的系统中,每个设备的贡献率将是相同的;如果不是,非均匀性可能会提供偏见的度量。然后,研究这种非均匀性的根本原因可能为如何减轻偏见提供重要的线索,例如:

  • 当设备完成回合的情况与它们处理的示例数量或模型大小之间存在强相关性时,可能的修复方法包括早停止或减小模型大小。
  • 如果对贡献的预期率取决于我们无法控制的因素,如设备型号、网络连接、位置等,可以将这些因素视为定义层次的因素,并应用后分层[312],即通过缩放从各层设备上的贡献来纠正偏差。还可以采用分层抽样的方法,例如改变调度或服务器选择策略,以影响包含设备在回合中的概率作为其层次的函数。
  • 一个非常一般的、无根本原因的减轻方法可能仅基于设备的过去贡献配置文件(例如迄今为止启动或完成的回合数)。作为一种特殊情况,考虑无替换抽样,可以在系统级别(在成功贡献后停止连接)或模型级别(将除第一个贡献之外的所有贡献都加权为0)实现。当人口足够大,大多数设备只能偶尔贡献(大多数情况下是一次或零次)时,这种方法可能不足够;在这种情况下,基于某种相似性度量对设备进行聚类,并将群集成员身份用作层次可能会有所帮助。
  • 与前面一节中描述的同步、基于回合的执行相比,一些替代方法也可能有助于减轻偏见。特别是,某些类型的分析可能会受益于通过在非常多的参与者中长时间运行回合,而不对滞后者应用超时,从而减轻或消除设备之间的竞争以被包含在内。这种方法可能不适用于迭代方面重要的算法(运行许多个体、链式回合)的算法。

使这样的研究变得可能的最大障碍是获得代表性的终端用户设备车队,或者对车队的详细描述(例如以真实分布上的 A i ( t ) A_i(t) Ai(t)函数的统计模型形式)以便用于模拟。在这里,联邦学习生产堆栈的维护者在隐私保护的情况下,可以以这些统计数据或模型向学术伙伴提供这些统计数据或模型;另一个有前途的方向是最近引入的用于联邦学习研究的Flower框架[66]。

7.3 系统参数调整

实际的联邦学习是一种多目标优化形式:虽然一级目标是最大化模型质量指标,如损失或准确性,但其他重要考虑因素包括:

  • 收敛速度
  • 吞吐量(例如回合数、数据量或设备数)
  • 模型的公平性、隐私性和稳健性(见第6.3节)
  • 服务器和客户端的资源使用

这些目标可能存在紧张关系。例如,通过最大化回合吞吐量可能会引入偏见,或者通过优先选择性能良好且没有或很少数据的设备来伤害准确性。通过增加模型复杂性来最小化训练损失会使内存较少、示例多或大、CPU较慢的设备处于不利地位。在训练过程中以这种方式引发的偏见或公平性,在评估阶段可能很难检测,因为评估通常使用相同的平台,因此受到类似的偏见影响。

影响上述列出的指标的各种控制因素。其中一些与数据中心环境相似,特别是模型特定设置和学习算法的超参数。其他则特定于联邦学习:

  • 每轮的客户端数:完成一轮所需的最小设备数 M M M,以及开始一轮所需的设备数 M ′ M^{'} M
  • 服务器端调度:除了最简单的情况外,联邦学习系统将同时处理多个模型:支持多个租户;为不同的用例在相同的数据上训练模型;支持实验和架构或超参数网格搜索;以及并发运行训练和评估工作负载。服务器需要决定将哪个任务分配给传入的设备,这是一个调度问题的实例:将工作(训练或评估任务)分配给资源(设备)。因此,通常会出现以下挑战:理想的资源分配应该公平、避免饥饿、最小化等待时间,并同时支持相对优先级。
  • 设备端调度:如第7.2节所述,各种约束规定了设备何时可以连接到服务器并执行工作。在这些约束条件内,可以做出各种调度选择。一个极端情况是尽可能频繁地连接到服务器并运行计算,导致服务器和设备上的高负载和资源使用。另一种选择是固定间隔,但它们需要根据总设备数和每轮设备数等外部因素进行调整。Google开发的联邦学习系统通过一种名为“节奏控制”的流量控制机制来取得平衡,该机制在服务器指示设备何时返回。这种动态系统不仅可以实现大群体的时间负载平衡,还可以将连接尝试“集中”到特定的时间点以达到阈值 M ′ M^{'} M。由于设备可用性的随机性和动态性质,以及人口行为缺乏预测模型和反馈回路,开发这样的机制是困难的。

在联邦学习系统的背景下,定义合理的综合目标函数,并设计自动调整这些设置的算法,目前尚未得到探索,因此仍然是未来研究的课题。

7.4 设备端运行时

虽然存在许多用于数据中心训练的框架,但对于在资源受限的设备上训练模型的选择相当有限。通常,机器学习模型和训练过程是在高级语言(如Python)中编写的。对于联邦学习,这种描述包括在目标平台上执行的设备和服务器计算,并通过网络连接交换数据,需要以下内容:

  • 序列化和动态传输总计算的本地部分的方法(例如,模型的服务器端更新或本地客户端训练过程)。
  • 在目标平台上解释或执行此类计算的方法(服务器或设备)。
  • 用于参与设备和服务器之间数据交换的稳定网络协议。

一种极端的表示形式是原始的高级描述,例如Python TensorFlow程序[2]。这将需要一个带有TensorFlow后端的Python解释器,由于资源约束(二进制大小、内存使用)、性能限制或安全问题,这可能不是终端用户设备的可行选择。

另一种极端的计算表示是目标体系结构的机器代码,例如ARM64指令。这需要一个编译器或在较低级别语言(如C++)中重新实现模型,并且部署计算通常将受到应用于二进制代码部署的限制(参见第7.1节),导致执行新计算的延迟过大。

可以在目标平台上编译或解释的中间表示在灵活性和效率之间取得平衡。然而,目前这样的运行时并不广泛可用。例如,Google的联邦学习系统[81]在服务器端和设备端执行以及模型和参数传输方面都依赖于TensorFlow,但这种选择存在一些缺点:

  • 对于替代前端(如PyTorch [370]、JAX [86]或CNTK [410])来说,没有便捷的途径进入设备。
  • 该运行时未针对资源受限环境进行开发或优化,导致二进制大小较大、内存使用高且性能相对较低。
  • TensorFlow使用的中间表示GraphDef未经标准化或稳定化,前端和旧的设备端后端之间的版本不一致导致频繁的兼容性问题。

其他替代方案包括更专业的运行时,仅支持前端能力的子集,例如仅支持训练特定类型的模型,这要求在使用新的模型架构或训练算法时进行更改和较长的更新周期。极端情况是一个仅限于训练单一类型模型的运行时。

理想的设备端运行时应具备以下特点:

  1. 轻量级:小的二进制大小,或预安装;低内存和功耗配置。
  2. 高性能:低启动延迟;高吞吐量,支持硬件加速。
  3. 表达性:支持常见的数据类型和计算,包括反向传播、变量、控制流、自定义扩展。
  4. 稳定且紧凑的数据和计算表达格式。
  5. 广泛可用:便携式开源实现。
  6. 可以被常用的机器学习框架/语言所支持。
  7. 理想情况下也支持推理,或者如果不能支持,则支持为推理运行时构建个性化模型。

据我们所知,尚不存在满足这些要求的解决方案,我们预计在终端采用联邦技术时,有限的在终端设备上运行机器学习训练的能力将成为一个阻碍。

7.5 跨数据源场景

在跨数据源联邦学习场景中出现的系统挑战形式大不相同。如表1所述,客户端数量较少,更强大、可靠,且可知/可寻址,消除了跨设备设置中的许多挑战,同时允许身份验证和验证、记账以及对违规行为的合同强制处罚。尽管如此,还存在其他异质性的来源,包括数据的特征和分布,以及用于训练的软件堆栈。

在跨设备设置中,跨设备数据生成到服务器逻辑的基础设施通常由一个或少数几个组织实体(应用程序、操作系统或设备制造商)运营,而在跨数据源设置中,涉及许多不同的实体。这可能会导致高度的协调和运营成本,原因是在以下方面存在差异:

  • 数据是如何生成、预处理和标记的。在数据源之间进行学习将需要数据标准化,而当此类数据以不同方式收集和存储时(例如,使用不同的医学成像系统,以及在标记流程、注释和存储格式方面的不一致性)可能会很困难。
  • 哪个软件版本用于支持训练。在每个数据源中使用相同的软件堆栈——可能与模型一起使用容器技术进行交付,如FATE [33]所做的——可以消除兼容性问题,但是这种频繁且中心化的软件交付可能不被所有涉及方接受。一个更类似于跨设备设置的替代方案是标准化数据和模型格式以及通信协议。有关此方向的相关努力,请参阅IEEE P3652.1 “联邦机器学习工作组”。
  • 数据可能或不可能如何使用的批准流程。虽然在跨设备场景中,这个过程通常是集中的,但在跨数据源的情况下,情况可能不同,涉及到许多组织实体,而且当培训涵盖具有不同数据保护法规的不同司法管辖区时,可能会变得越来越困难。在这里,技术基础设施可能会通过建立编码访问策略的数据注释,并由基础设施强制执行这些策略,提供帮助;例如,将某些数据的使用限制为特定模型,或编码最小聚合要求,例如“每轮至少需要M个客户端”。

跨数据源设置中的另一个潜在差异是数据分区:在跨设备设置中,通常假定数据按照示例进行分区,所有示例都具有相同的特征(水平分区)。在跨数据源设置中,除了按示例分区外,按特征分区也具有实际关联性(垂直分区)。例如,两个组织,例如银行和零售公司,具有重叠的客户集,但与之相关的信息(特征)不同。有关算法方面的讨论,请参见第2.2节。使用按特征分区的数据进行学习可能需要不同的通信模式和附加处理步骤,例如实体对齐和处理缺失特征。

7.6 总结

虽然用于跨设备联邦学习的生产级系统已经成功运行[81, 26],但仍然存在各种挑战:

  • 频繁和大规模部署更新、监视和调试具有挑战性(第7.1节)。
  • 设备可用性差异引发各种形式的偏差;定义、量化和减轻这些偏差仍然是未来研究的方向(第7.2节)。
  • 调整系统参数很困难,因为存在多个可能冲突的目标(第7.3节)。
  • 在终端设备上运行机器学习工作

负载受到缺乏便携式、快速、小尺寸和灵活的设备端训练运行时的限制(第7.4节)。
对于跨数据源设置的系统(第7.5节),由于计算节点的能力和正在处理的数据的性质的不同,面临着完全不同的问题。

8 结束语

联邦学习使得分布式客户设备能够在保持所有训练数据在设备上的情况下协作地学习共享的预测模型,将进行机器学习的能力与将数据存储在云中的需求分离。这超越了在移动设备上进行预测的本地模型的使用,通过将模型训练也带到设备上。

近年来,这个话题在工业界和学术界都得到了爆炸性的关注。主要的科技公司已经在生产中部署了联邦学习,许多初创公司的目标是利用联邦学习来解决各个行业中的隐私和数据收集挑战。此外,本文调查的广泛论文范围表明,联邦学习正在在各种跨学科领域获得越来越多的关注,从机器学习到优化,再到信息论、统计学、密码学、公平性和隐私性。

在联邦学习研究日益增长的兴趣的推动下,本文讨论了最近的进展,并提出了大量的未解决问题和挑战。系统约束在算法上施加了效率要求,以使其变得实用,其中许多在其他情况下并不特别具有挑战性。我们认为数据隐私并不是二元的,并提出了一系列威胁模型,这些模型在各种假设下都是相关的,每个模型都提供了其独特的挑战。

本文讨论的未解决问题当然不是详尽无遗的,它们反映了作者的兴趣和背景。特别是,我们没有讨论在实际的机器学习项目中需要解决的任何非学习问题,这些问题可能需要基于分散数据来解决[382]。这可以包括计算基本的描述性统计信息等简单问题,也可以包括计算开放集上直方图的头部等更复杂的目标。解决此类问题的现有算法通常并不总是具有明显的“联邦版本”,在这个工作的系统假设下高效,或者不能提供有用的数据保护概念。另一组重要的未讨论的主题是可能会推动或限制联邦学习使用的法律和业务问题。

我们希望这项工作能够有助于界定联邦学习和相关领域的进一步研究方向。

致谢
作者们要感谢Alex Ingerman和David Petrou在审查过程中提供的有用建议和深刻评论。

常用软件和数据集

用于模拟的软件

联邦学习的模拟需要处理多个在数据中心机器学习研究中不会出现的问题,例如高效处理分区数据集,计算在不同模拟设备上运行,每个设备上的数据量各不相同。联邦学习研究还需要不同的指标,如设备上传或下载的字节数,以及模拟诸如不同客户端的到达时间或可能与本地数据性质相关的客户端退出问题。鉴于此,开发面向联邦学习研究(模拟)的开放软件框架有可能极大地加速研究进展。目前有几个平台可用或正在开发中,包括:

  • TensorFlow Federated:专门针对研究用例,提供大规模模拟功能以及灵活的采样控制。
  • FedML:一个面向研究的库,支持IoT和移动设备的设备端训练、分布式计算和单机模拟。为了研究的多样性,FedML还支持各种算法、模型和数据集。
  • PySyft:一个用于安全、私有深度学习的Python库。PySyft通过联邦学习、差分隐私和多方计算(MPC)在PyTorch中将私有数据与模型训练分离。
  • Leaf:提供多个数据集,以及模拟和评估能力。
  • Sherpa.ai Federated Learning and Differential Privacy Framework:这是一个开源的联邦学习和差分隐私框架,为联邦学习提供方法、流程和评估技术。

用于生产的软件

除了上述模拟平台外,还有几个面向生产的联邦学习平台正在开发中:

  • FATE(联邦AI技术增强器):旨在提供安全的计算框架,支持联邦AI生态系统。
  • PaddleFL:基于PaddlePaddle的开源联邦学习框架。PaddleFL提供了几种联邦学习策略和训练策略,以及应用程序演示。
  • Clara Training Framework:基于服务器-客户端方法支持跨边缘联邦学习,具有数据隐私保护功能。
  • IBM Federated Learning:适用于企业环境的基于Python的联邦学习框架,为添加高级功能提供了基本框架。
  • Flower framework:支持在移动和嵌入式设备上实现和测试联邦学习算法,模拟真实世界的系统条件。
  • Fedlearner:开源的联邦学习框架,可以对分布在机构之间的数据进行联合建模。

数据集

在分布式数据并且通常是不平衡的(不同客户端具有不同数量的示例)且不同分布的情况下,采用联邦学习。TensorFlow Federated这个开源软件包支持在模拟环境中加载分布式数据集,其中每个客户端ID对应于一个TensorFlow数据集对象。这些数据集可以轻松转换为numpy数组,以供其他框架使用。在撰写本文时,支持三个数据集,我们建议研究人员在这些数据集上进行基准测试。

  • EMNIST数据集:包含671,585个数字和大写/小写英文字母的图像(62类)。联邦版本将数据集分为3,400个不平衡的客户端,每个客户端的索引对应于数字/字符的原始作者。非独立同分布分布源自每个人的独特书写风格。
  • Stackoverflow数据集:包含来自Stack Overflow的问题和答案,带有时间戳、分数等元数据。训练数据集有超过342,477个唯一用户,含有135,818,730个示例。请注意,时间戳信息可以帮助模拟传入数据的模式。
  • 莎士比亚数据集:是从莎士比亚的全部作品中提取的语言建模数据集。它由715个连续行构成,这些行是客户端数据集中的示例。训练集有16,068个示例,测试集有2,356个示例。

EMNIST和Shakespeare的预处理由Leaf项目提供,该项目还提供了情感140和celebA数据集的联邦版本。这些数据集有足够的客户端,可以用于模拟跨设备的联邦学习场景,但对于特别重要的规模问题,它们可能太小了。在这方面,Stackoverflow提供了最逼真的跨设备联邦学习问题的例子。

跨边缘数据集
一个例子是iNaturalist数据集,它包含各种生物在全球范围内的大量观察数据。可以按照地理位置或观察的作者对其进行分区。如果按照生物所属的群体进行分区,比如界、门等,那么不同客户端就具有完全不同的标签,两个客户端之间的生物相似性已知。这使得它成为研究联邦迁

移学习和跨边缘多任务学习的非常合适的数据集。

另一个例子是Google-Landmark-v2,包括超过200,000种不同类型的地标的500多万张图像。与iNaturalist数据集相比,Google Landmark数据集提供了更多的多样性,对大规模联邦学习提出了更大的挑战。

最近,Luo等人发布了一个面向计算机视觉的联邦数据集。该数据集包含来自26个街头摄像头的900多张带有详细边界框注释的街道图像。由于数据集中示例的数量相对较小,可能无法充分反映出具有挑战性的现实情况。

需要更多的数据集:开发新的联邦学习数据集以代表真实世界的问题对于社区来说是一个重要的问题。像TensorFlow Federated这样的平台欢迎贡献新的数据集,并可能能够提供托管支持。虽然完全新的数据集总是很有趣的,但在许多情况下,可以将现有的开放数据集进行分区,将每个分区视为一个客户端。不同的分区策略可能适用于不同的研究问题,但通常非平衡和非独立同分布分区将是最相关的。还有有趣的是尽可能保留更多的额外元信息(时间戳、地理位置等)。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
MySQL 是一种开源的关系型数据库管理系统,常用于存储和管理大型数据集。以下是最详细的 MySQL 教程: 1. 安装 MySQL 首先,您需要下载 MySQL 并安装它。您可以在 MySQL 官方网站上下载 MySQL 安装程序,根据您的操作系统选择适当的版本。 2. 启动 MySQL 服务器 一旦您安装了 MySQL,您需要启动 MySQL 服务器。在 Windows 操作系统中,您可以使用“服务”应用程序找到并启动 MySQL 服务器。在 Linux 操作系统中,您可以使用命令行启动 MySQL 服务器。 3. 使用 MySQL 命令行 MySQL 命令行是与 MySQL 服务器交互的主要方式。在 Windows 操作系统中,您可以使用“命令提示符”应用程序打开 MySQL 命令行。在 Linux 操作系统中,您可以使用终端打开 MySQL 命令行。 4. 创建数据库 一旦您进入 MySQL 命令行,您可以创建一个新的数据库。使用以下命令创建一个名为“mydatabase”的新数据库: ``` CREATE DATABASE mydatabase; ``` 5. 创建表 接下来,您需要在数据库中创建表。使用以下命令创建一个名为“users”的新表: ``` USE mydatabase; CREATE TABLE users ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ); ``` 6. 插入数据 现在,您可以向表中插入数据。使用以下命令向“users”表中插入一行数据: ``` INSERT INTO users (firstname, lastname, email) VALUES ('John', 'Doe', 'john@example.com'); ``` 7. 查询数据 您可以使用以下命令从表中检索数据: ``` SELECT * FROM users; ``` 这将返回“users”表中的所有行和列。 8. 更新数据 您可以使用以下命令更新表中的数据: ``` UPDATE users SET email='newemail@example.com' WHERE id=1; ``` 这将更新 ID 为 1 的行的“email”列。 9. 删除数据 您可以使用以下命令从表中删除数据: ``` DELETE FROM users WHERE id=1; ``` 这将删除 ID 为 1 的行。 10. 关闭 MySQL 服务器 最后,您可以使用以下命令关闭 MySQL 服务器: ``` QUIT; ``` 以上就是 MySQL 的最详细的教程。希望对您有所帮助!

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值