我的博客园:https://www.cnblogs.com/MaplesWCT/

A survey on security and privacy of federated learning

Authors Viraaji Mothukuri, Reza M. Parizi, Seyedamin Pouriyeh, Yan Huang, Ali Dehghantanha, Gautam Srivastava
Keywords Artificial intelligence; Machine learning; Distributed learning; Federated learning; Federated machine learning; Security Privacy;
Abstract 联邦学习(FL)还处于起步阶段并且在公众中还没有获得太多的信任,主要是因为它未知的安全性和隐私含义。本文旨在提供关于FL 的安全和隐私方面的全面研究,并对相关方法和各种实现风格进行了说明式描述,对FL当前面临的挑战进行了调查,对需要在彻底和清晰的背景下考虑的安全和隐私问题进行了详细审查。研究结果表明,与安全威胁相比,FL相关的特定隐私威胁更少。当前最具体的安全威胁是通信瓶颈 (communication bottlenecks)、投毒(poisoning)和后门(backdoor)攻击等,而基于推理的攻击(inference-based attacks)对FL的隐私至关重要。我们总结了大量未来研究方向以使FL适用于现实场景。
Publication Future Generation Computer Systems 2021
DOI 10.1016/j.future.2020.10.007

1 Introduction

集中式的ML方法面临着不同的挑战,包括计算能力和时间,以及最重要的、长期被忽视的用户数据的安全性和隐私问题。联邦学习被提出以解决这些问题。

联邦学习[2]通过将数据从中央服务器分散到终端设备,提供了一种保护用户隐私的方法,并使AI能够受益于具有敏感数据和异构性的领域。FL范式兴起主要有两个原因:1)由于对此类数据的直接访问限制,没有足够的数据集中驻留在服务器端;2)数据隐私保护使用来自边缘设备的本地数据。基于去中心化的数据概念,FL是近年来ML领域中发展迅速的领域之一,因为它具有安全和隐私性,承诺遵守新兴的用户数据保护法律[3, 4]。

正如[1]FL中的作者所说,它将代码引入数据,而非将数据引入代码,并解决隐私、所有权和数据位置等基本问题。由于FL还处于研究的初始阶段,许多不同社区的研究人员都在努力改进现有框架,并确保FL中用户数据的隐私和安全。

FL隐私保护吸引了可能包含敏感数据的不同领域。某种程度上,FL解决了ML环境中敏感数据的隐 私问题,与此同时,模型参数共享以及训练迭代和通信数量的增加使联邦环境面临一系列新风险,并为黑客攻击开辟了新途径[5],以及好奇的攻击者跟踪漏洞以操纵ML模型输出或访问敏感的用户数据。为此,本文通过识别和评估开放的安全和隐私威胁,以及通过回答几个具体的研究问题来解决FL的缓解策略,来解决研究目标。

1.1 贡献

目前理解FL的安全性和隐私风险方面还没有取得足够的进展。本文在正式定义、成就和挑战等方面对FL安全性做出全面的概述。贡献如下:

  • 对FL实现的方法和技术进行了分类和概述。
  • 识别和检查FL环境中的安全漏洞和威胁,包括与FL相关的特定FL和一般基于ML的攻击。
  • 识别和评估FL环境中的隐私威胁、缓解技术,以及在FL环境中与隐私保护技术相关的权衡成本。
  • 提供对现有防御机制和未来方向的见解,以增强FL实现的安全性和隐私性。

2 联邦学习概览

近年来,大数据的可用性、计算能力和深度学习模型三个因素帮助ML取得了成功。虽然ML[7]取得了巨大成功,但由于两个主要障碍,许多领域的使用受到限制:

  • 关注用户数据隐私和机密性以及监管它们的法律。
  • 涉及的计算成本在ML实现上的数据或训练成本不足,无法建立ML模型。

FL通过提供一个高度训练的ML模型来解决隐私或机密性等问题,而没有暴露训练数据的风险。FL 还通过在异构域之间提供信任因子来解决数据不足问题。FL被认为是一个迭代过程,每次迭代都对中心ML模型进行更新。实现大概分为以下三个步骤(如下图所示):

  1. 模型选择:初始化预训练好的模型(全局模型)及其参数,并将其共享给FL环境中的所有客户机。
  2. 本地模型训练:设备在本地用自己的数据训练模型。
  3. 本地模型聚合:本地模型训练的更新发送给中心服务器进行聚合和训练全局模型。全局模型被更新,并且更新后的模型为下一轮各个客户机所共享。

FL处于一个持续的迭代学习过程中,重复上述2和3训练步骤,以保存所有客户端的全局模型更新。

移动应用程序:FL已经应用于键盘上下一个单词预测的移动应用程序中[15-18],如Android手机上谷歌的Gboard,以及唤醒词检测[19],它可以让语音辅助应用程序检测唤醒词而无需暴露手机敏感数据的风险。还有一些有用的应用程序用例试验使用FL在不同 领域构建保护隐私的ML解决方案。例如,[21, 22]中的研究通过避免通信开销,总结了使用FL进行无线通信的可能应用。

医疗领域:FL可用于保存患者数据的私密性,并增强ML能力,以帮助医疗从业者,类似于[20]的工作。维护患者健康记录[33]敏感信息的医疗网络物理系统中的攻击检测,以及 利用FL[34]管理数字健康记录都是FL应用的例子。

安全领域:FL已经提供了恶意软件分类[23]、人类活动识别[24]、异常检测[25]、入侵检测[26]等。

智能交通:自动驾驶汽车与驾驶之间的数据共享[27, 28],防止车辆信 息物理系统[29]中的数据泄露,交通流预测[30],检测空中车辆[31]中的攻击都是这类工作的例子。

计算机视觉:微众银行在[32]中提出了基于安全FL的Fedvision目标检测方法。

本文的主要关注点是研究FL内部潜在的安全和隐私相关问题。

3 联邦学习技术/方法的分类

本节从不同角度收集并概述相关技术的内部工作原理,后面章节更深入地理解安全性和隐私方面 内容。如下图所示,FL实现网络拓扑用于构建FL环境,基于数据可用性和分区分类,聚合/优化算法建 立在中央服务器保存通信带宽/成本和聚合逻辑,和开源框架在实践中实现FL。

3.1 网络拓扑

根据网络拓扑结构,FL可分为集中式和完全去中心化两种[35]。

3.1.1 集中集群式FL(Centralized & Clustered FL)

尽管FL从根本上是基于去中心化的数据方法,但仍然依赖于一个中央服务器来管理从涉及FL环境的客户机收集的训练过的模型,构建一个全局模型并与所有客户机共享它。主要借助建立可信第三方,以建立它们之间的信任。采用单服务器和多客户机拓扑[36],确保了一个中央权威机构监视和管理持续学习过程。与传统集中式服务器承载数据并在共享数据上训练给定模型不同,FL环境中的集中式服务器仅通过客户机的同步或异步更新在共享模型上工作。

为解决集中式网络拓扑中客户机数据的异构性,提出了聚类技术。聚类是一种有助于检测恶意更新的技术。

  • [37]中谷歌的研究工作提出了三种算法,以最小的通信轮数实现本地模型的个性化版本。

  • [38]提出了一种基于联邦多任务学习的方法,利用局部模型的余弦相似度识别客户端的FL簇。

  • [39]的研究工作提出了联邦随机期望最大化来训练多个全局ML模型并得到一个解决方案。损失函数称为基于距离的联邦损失,是多中心FL的目标,它是在多聚类环境下,在不同全局模型中寻找最优全局模型。

  • [40]中,作者提出了迭代联邦聚类算法(IFCA)框架,该框架试图最小化每个FL客户端的损坏函数,并在每轮训练中将客户端标记到一个聚类中。

3.1.2 完全去中心化FL

完全分散的方法排除了模型聚合对中心服务器的依赖。集中式的权威被建立信任和可靠性的算法所取代。针对完全去中心化的实用方法,提出了各种附加技术或算法。

  • [42]作者提出了一种基于拜占庭概念的自适应平均算法,该算法假设FL中超过2/3的系统是诚实的。通过这种方法,一组来自不同领域、具有共同目标的客户可以协作、共享数据和建立ML模型,并利用高精度的优势[43,44],而无需依赖第三方集中服务器。
  • [45]作者提出了一个名为MATCHA的框架,通过为 客户端之间的通信提供关键链接来解决网络延迟问题。
  • [46]展示了p2p网络,如下图所示。

3.2 数据划分

本部分的分类可以被认为是构建FL环境的“前期工作”。对具有价值的用户数据做相关的前期工作对整个FL过程至关重要。根据数据分布特征,即参与FL的异构数据和客户之间的分化和碰撞因素,可大致分为水平、垂直和迁移学习(HFL,VFL,TFL/FTL)三种。

3.2.1 横向联邦学习(Horizontal Federated Learning)

HFL定义为设备上的数据集与不同实例共享相同特征的情况。在FL这一类别中,客户端在领域、派 生统计信息的使用风格或FL的任何其他结果方面具有类似的特征。

Google Gboard上应用的FL就属于HFL。另一个例子来自医疗领域,研究人员分析医疗图像并预测癌细胞出现的可能性。

3.2.2 纵向联邦学习(Vertical Federated Learning)

VFL定义为不相关领域之间共同数据被用于训练全局模型。这种方法倾向于有一个中立第三方组织/资源提供加密逻辑以确保只有共同数据才被共享。但第三方也不是强制性的,[48]展示了没有第三方参与加密的VFL实现。

纵向联邦学习方法的实时用例是这样一种场景:银行信用卡部门的营销团队希望通过学习在线购物领域中购买的大多数商品来增强其ML模型。只有银行和购物网站中的普通用户可以共享详细信息来训练ML模型,中间加密逻辑确保了派生数据的这种安全和受限共享。通过这种信息交换的联系,银行领域可以更好地为客户提供相关的优惠,而在线购物领域可以修改他们对使用信用卡的客户的积分分配。

3.2.3 联邦迁移学习(Federated Transfer Learning)

FTL是现有经典ML迁移学习技术的一种实现,对一个已经在相似数据集上预训练好的模型上进行训练,该相似数据集是为了解决完全不同的问题的。在ML中,在预训练好的模型上面训练效果比从零开始训练的效果好得多。

  • [49-53]解释了外语在迁移学习模式中的实施。参与者可以从更大的数据集和训练有素的ML模型统计数据中受益,以满足他们的个人需求,而不是将条件限制为只共享匹配的数据信息。
  • [54–56]FedRL将强化ML算法与FL结合在旨在实现个性化人工智能的应用中。FedRL利用FL从训练有素的安全模型中应用迁移学习,而不允许直接迁移学习。

3.3 数据可用性

正如谷歌[36]中讨论的那样,根据数据可用性和客户机结点数量,FL可分为Cross-silo FL和Cross-device FL。

silo的意思是“仓库;地窖;竖井”,这里可以理解为仓库或者企业,device就是设备。

直观上看,Cross-silo FL面对的客户端是企业级别、机构单位级别的,而Cross-device FL针对的则是便携式电子设备、穿戴式电子设备等,统称为物联设备(IoT devices)。

3.3.1 Cross-silo FL

在这种情况下的客户端数量通常是范围从2到100个设备的小数目,通常有索引,几乎总是在训练轮中可用。训练数据可分为横向联邦学习和纵向联邦学习。计算和通信瓶颈是主要问题。与Cross-device FL相比,Cross-silo FL更加灵活,可用在组织或一组组织的场景中使用它们的机密数据来训练ML模型。在纵向和迁移学习中,更喜欢用加密技术来限制来自每个客户端的信息推理。

  • [58]中的研究工作基于FATE[57]框架,演示了同态加密的cross-silo,并提出了基于梯度量化[59]的批量(batch)加密算法,以减少FL环境中的计算和通信成本[60]。

3.3.2 Cross-device FL

具有来自全局模型的相似领域的大量客户端的FL方法被称为Cross-device FL。由于客户端数量庞大,很难跟踪和维护交易历史日志。大多数客户使用不可靠的网络连接,在这些网络中,选择/参与训练是随机发生的。

  • 横向联邦学习中的数据划分类似,资源分配策略[61]如客户机选择/重要性[62],设备调度[63]用于从贡献更好的客户机中选择更新。像博弈论[64]这样的激励机制旨在激励客户为FL做出贡献。对于拥有大量客户的用例,如物联网或移动应用[16],这种类型非常适合。

3.4 聚合/优化算法

有助于客户机绑定更新以实现目标全局ML模型的算法因FL的优先级和体系结构而异。配置这个逻辑至关重要,因为它解决了客户端的异构性和权重变化,以及通信问题。在集中式FL中,有一个聚合算法可以从协调训练工作到优化更新。很少有提出的算法专注于客户机的优化选择,优化训练轮以实现高效通信和FL成本。本节覆盖了FL 不同方法中用于集成、强化、优化、聚合和达成共识的算法。

3.4.1 聚合算法

聚合算法在任何集中式拓扑和横向联邦学习环境中都起到关键作用。逻辑[65]结合了来自参与训练轮的所有客户端的本地模型更新。许多算法的目的是增强本地模型更新的隐私性,或保持通信带 宽,或促进来自客户端的异步更新。基于预配置参数,联邦学习在FL的每个实现中都有所不同。 如下:

  • FedAvg[1]:引入了基于随机梯度下降(SGD)优化算法的联邦平均算法(称为 FedAvg)。
  • SMC-Avg[66]:安全聚合基于安全多方计算(SMC)算法的概念,该算法聚合相互不信任的各方的私有值,而不揭示其私有值信息。
  • FedProx[67]:提出了一种改进的FedAvg算法来处理FL的异构性。
  • FedMA[68]:提出了在FL环境中构建基于CNNs和LSTM的ML模型更新的共享模型。
  • Scaffold[70]:随机控制平均(Scaffold)解决了FedAvg的梯度不同/客户漂移(client-drift)问题,客户端是有状态的,算法可以在客户端和服务器端维护/控制变异,以确保客户端更新朝着全局收敛发展。
  • Tensor Factorization:在医学领域,很少有应用倾向于用张量因子分解 [71,72] 来限制共享信息的数量。张量因子分解将大量的医疗记录转换为有意义的表型。
  • Personalization-based Algorithms:[73]的研究工作提出了一种方法,将神经网络分离为每个客户机结点的基础层和个性化层。

3.4.2 通信效率和代价

本部分讨论FL训练中提高通信效率和降低通信成本的算法。

  • FedBCD:在[75]中提出了联邦随机块坐标下降(FedBCD)算法,它类似于FedAvg算法。
  • FedAttOpt:在[76]中提出的注意联邦聚合(FedAttOpt)增加了一种注意力增强机制,在FL的 中央服务器上对聚合进行模块化,根据每个客户端的贡献计算注意力得分。
  • 异步FL训练轮:客户端数量越多,通信瓶颈和计算成本的风险就越大。很少有研究工作是通过在FL的训练轮中以最小通信成本为目标来解决通信效率问题。
  • 通信开销:[80]中提出的方法设置了在FL训练轮中选择客户端更新的预定义规则,这种有助于通过消除贡献最少的FL客户端更新来减少通信成本。

3.5 开源框架

  • Tensorflow Federated(TFF):谷歌的TensorFlow Federated在Gboard中有一个产品化的版本,它可以让Android手机用户在使用手机键盘时预测下一个单词[82-86],这是社区中将FL变为现实的最早尝试。
  • PySyft:Pysyft是在PyTorch框架之上用Python编写的,它提供了一个虚拟hook,通过 WebSocket端口连接到客户端[90,91]。
  • FATE:来自微众银行开发人员名为FATE的软件,每次发布都在即兴创作。FATE提供了一个在横向、纵向和迁移学习模式下实施FL的框架。它可以通过docker镜像或手动步骤实现。

TFF:https://www.tensorflow.org/federated/federated_learning

Pysyft:https://blog.openmined.org/tag/pysyft/

FATE:https://fate.fedai.org

4 联邦学习中的安全问题

FL技术在采用者和开发人员应该坚持信息安全的基本原则,如机密性、完整性和可用性。拥有大量客户进行协作训练和暴露模型参数的去中心化方法使FL容易受到各种攻击和风险。FL安全方面的研究问题如下:

  • 问题1:FL生态系统的脆弱性来源有什么?
  • 问题2:FL域的安全威胁/攻击有哪些?
  • 问题3:与分布式ML相比,FL特有的安全威胁有什么?
  • 问题4:针对FL安全漏洞的防御技术有什么?

4.1 问题1:FL生态系统的脆弱性来源有什么?

漏洞可以定义为系统中的一个弱点,它为好奇/恶意攻击者提供了获得未经授权访问的机会[98]。了解系统或框架公开的漏洞有助于管理和防御可能的攻击。通过实现防御漏洞的先决条件,识别漏洞将有助于构建一个更安全的环境。下面列出五种不同的资源被认为是开发的弱点。

  • 通信协议:FL使用随机选择的客户端实现迭代学习过程,这涉及给定网络上的大量通信。
  • 客户端数据操作:在一个更大的环境中,FL拥有大量的客户端,这些客户端对攻击者开放,以便攻击者利用模型参数和训练数据。对全局模型的访问可能更容易受到数据的重构攻击。
  • 受损的中央服务器:中央服务器应当是健壮和安全的,中央服务器负责共享初始模型参数,聚合本地模型,并向所有客户端共享全局模型更新。
  • 较弱的聚合算法:聚合算法是中心权威。换句话说,作为本地模型的更新,它应该能够智能地识别客户端更新的异常,并且它应该有一个设置来删除来自可疑客户端的更新。
  • FL环境的实现者:有意或无意地,参与FL实现的架构师、开发人员和部署人员团队可能会成为安全风险的来源。由于混淆或缺乏对敏感用户数据和非敏感用户数据的理解,可能是安全和隐私被侵犯的原因。

4.2 问题2:FL域的安全威胁/攻击有哪些?

威胁/攻击是指漏洞可能被恶意/好奇的攻击者利用,从而影响系统安全性并违反其隐私策略。在FL中,通常恶意代理利用漏洞[99]控制一个或多个参与者(即客户端),以最终操纵全局模型。在这种情况下,攻击者针对不同的客户端,希望访问本地静止数据、训练过程、超参数或传输中更新的权值[100],在全局模型中修改并发动攻击。对安全威胁/攻击分类如下。

4.2.1 投毒(攻击)

在FL中最有可能发生的攻击称为中毒攻击[101,102],因为FL中每个客户都可以访问训练数据,因此被篡改的数据权重添加到全局ML模型的可能性非常高。中毒可能发生在训练阶段,影响训练数据集或局部模型,反过来/间接篡改全局模型的性能/准确性。一个或多个客户端数据的中毒攻击的概率很高,威胁的严重程度也很高。

  • 数据投毒(Data Poisoning):数据中毒攻击ML算法的概念首次提出[103],作者在攻击者的
    目标支持向量机算法的脆弱性,并试图将恶意数据点在训练阶段,希望最大化分类错误。虽然FL环境使客户端能够主动贡献训练数据并向服务器发送模型参数,但它为恶意客户端提供了通过操纵训练过程来毒害全局模型的机会。FL中的数据中毒定义为生成“脏样本”来训练全局模型,以期产生伪造的模型参数并将其发送到服务器。数据注入也可以看作是数据中毒的一个子类,恶意客户端可以将恶意数据注入到客户端本地模型处理中。因此,恶意代理可以控制多个客户端的本地模型,并最终使用恶意数据对全局模型进行操作。
  • 模型投毒(Model Poisoning):在数据中毒中,恶意代理的目的是利用假数据操纵全局模型,而在模型中毒中,恶意代理的目标是全局模型。在最近的研究中,模型中毒攻击被证明比数据中毒攻击更有效[100,104,105]。
  • 数据修改(Data Modification):数据篡改/修改攻击可能涉及改变训练数据集,如特征碰撞[106],它合并数据集中的两个类,试图欺骗ML模型,使其总是错误地分类目标类。

4.2.2 推理(攻击)

推理攻击更多的是对隐私的威胁,其严重性余投毒攻击非常类似,因为推理攻击的可能性非常高,无论是来自参与者,还是来自FL过程中恶意的中央服务器。

4.2.3 后门攻击(Backdoor Attacks)

与后门攻击相比,投毒和推理攻击更透明。后门攻击是将恶意任务注入到现有模型中,同时保持
实际任务的准确性的一种方法。由于实际ML任务的准确性可能不会立即受到影响,因此识别后门
攻击既困难又耗时。后门攻击的严重程度较高,需要很长时间才能识别攻击的发生。此外,后门
攻击的影响是高的,因为后门攻击能够混淆ML模型,并自信地预测假正例的能力。

4.2.4 GANs

基于GAN的攻击能够发起投毒和推理攻击,对给定系统的安全性和隐私构成威胁。由于基于GAN的威胁的所有可能性都无法预见,因此它被归类为高影响和优先级的威胁。

4.2.5 系统中断IT停机时间

停机是IT系统中无法避免的威胁,由于后端服务器上的计划外或计划中的活动, 高度配置和安全的应用程序经常需要一个停机阶段。在FL中,这种威胁的严重性较低,因为我们在每个客户节点上都有一个本地-全局模型,并且在中断后可以恢复训练过程。即使严重程度较低, 这也是一个相当大的威胁,因为停机可能是一种精心策划的攻击,从FL环境中窃取信息。

4.2.6 恶意服务器

受影响的或恶意的服务器会产生巨大的影响,而诚实但好奇的或恶意的服务器可以很容易地提取私有客户端数据或操纵全局模型,利用共享的计算能力在全局ML模型中构建恶意任务。

4.2.7 通信瓶颈

从多个异构设备的数据中训练ML模型的挑战之一是通信带宽。在FL方法,通过传输训练过的模型 而不是发送大量的数据来降低通信成本,但我们仍然需要保持通信带宽。这种威胁的严重性是很高的,因为通信瓶颈可以显著破坏FL环境。

4.2.8 搭便车攻击(Free-riding Attacks)

很少有客户机扮演被动的角色,仅仅为了利用全局ML模型的好处而与环境联系,而没有对训练过程 做出贡献。这种被动客户端也可能插入虚拟更新,而不使用其本地数据训练ML模型。由于这种攻击发生的概率较低,因此严重程度为中等。

4.2.9 不可用性

在训练过程中,客户的缺失或流失可能会导致全球模型的训练效率低下。这类似于搭便车攻击,但在此场景中,由于网络问题或任何其他意想不到的障碍,客户机无意中错过了参与训练过程。这种威胁的严重性是中等的,因为概率较低,而且可以选择可以异步工作的聚合算法。

4.2.10 窃听(Eavesdropping)

在FL中,我们有一个学习过程的迭代,包括从客户机到中央服务器的通信轮。如果存在弱通信通道,攻击者可以通过弱通信通道窃听和提取数据。窃听可以被认为是攻击FL模型的中度严重威胁,因为黑盒模型通常很难攻击。攻击者更愿意接管安全性较弱的客户端,因为后者会提供模型参数和白盒全局模型。

4.2.11 与数据保护法的相互作用(Interplay with data protection laws)

这种威胁发生的可能性很低,因为配置FL环境的数据科学家要确保全局模型的部署在投入到所有客户的生产之前得到了很好的分析。该威胁的严重性较低,但仍然是一个相当大的威胁,因为在FL中有意或无意的配置错误可能会导致安全漏洞。

4.3 问题3:与分布式ML相比,FL特有的安全威胁有什么?

目前提出的分布式机器学习(Distributed Machine Learning,DML)旨在解决大数据和计算能力的挑战,同时训练ML模型。共享数据和计算能力来训练一个通用的ML模型。通过配置参数服务器或多个服务器节点,将数据或任务分配给DML的客户端节点。从架构的角度来看,DML与FL有一些共同的特性,也有一些研究工作解决了DML中的安全与隐私问题。然而,FL与现有的DML解决方案相比是独特的,默认情况下具有更高的安全性和隐私级别。本节旨在讨论FL和DML之间共同的常见威胁。

DML与FL共同威胁:

  • 投毒攻击
  • 后门攻击
  • 通信瓶颈

4.4 问题4:针对FL安全漏洞的防御技术有什么?

防御技术有助于防范已知的攻击,降低风险发生的可能性。防御有两种类型,即主动防御和被动防御。主动防御是一种猜测与之相关的威胁和风险并采用成本效益高的防御技术的方法。反应性防御是在识别攻击后完成的工作,并作为缓解过程的一部分,防御技术在生产环境中作为修补程序部署。下表总结了当前FL的防御技术和它们所减轻的威胁类型。

  • Sniper:最近,作者在[136]中提出了Sniper方法,它可以识别合法用户,并显著降低中毒攻击的成功率,即使涉及多个攻击者。
  • 知识蒸馏(Knowledge distillation):它是模型压缩技术的一种变体,在模型压缩技术中,经过充分训练的神经网络将知识一步一步地转移到一个小模型中。知识精馏节省了训练模型所涉及的计算成本。在FL中,只共享知识而不共享模型参数的概念可以用来增强客户机数据的安全性。
  • 异常检测(Anomaly detection):这种技术经常使用统计和分析方法来识别不符合预期模式或活动的事件。一个有效的异常检测系统需要一个正常行为或事件的概要来检测攻击是否偏离正常行为概要。在FL环境中,可以使用不同的异常检测技术检测不同的攻击,如数据中毒、模型中毒或木马威胁。
  • 移动目标防御(Moving target defense):移动目标防御定义为一种部署各种机制和策略的方式,这些机制和策略会随着时间的推移不断变化,从而增加攻击者的成本和复杂性[155]。移动目标防御也增加了系统的弹性,同时限制了系统漏洞的泄露和攻击的机会。移动目标防御是在服务器级、网络级和应用程序级保护入侵的最佳防御类型。它是一种主动防御体系结构,旨在掩盖漏洞来源,不让攻击者发现。
  • 联邦多任务学习(Federated MultiTask Learning):联邦学习在考虑到本地数据隐私的大量移动设备上提供协作训练ML模型。这种设置也可以扩展到联合多任务学习环境,在该环境中,多任务学习驱动个性化但共享的设备模型。
  • 可信执行环境(Trusted Execution Environment,TEE):这种技术也被用于不同的ML模型的隐私保护,其中计算资源的私有区域被隔离为一个特定的任务[160]。这种方法也适用于计算资源非常有限的联邦学习。TEE是一个抗篡改的处理环境,它提供了在主处理器的安全区域中执行的代码的完整性和保密性。
  • 数据消毒(Data Sanitization):[142]首次提出的训练数据消毒主要是作为异常检测器来过滤掉看起来可疑的训练数据点。[162,163]最近的工作旨在通过使用不同的稳健统计模型来改进数据清理技术。在FL环境中,数据消毒技术是针对数据中毒攻击的常见防御技术之一,但是[164]的研究报告指出,更强的数据中毒攻击有可能打破数据消毒防御。
  • Foolsgold:恶意客户端创建多个假身份,并向中央服务器发送伪造的更新。这种类型的攻击可能会破坏FL环境的安全性和真实性。
  • 剪枝(Pruning):它是FL中的一种技术,使ML模型的大小最小化,以降低复杂性和提高精度。在FL中,客户端具有相对较低的计算能力和通信带宽。当我们在FL环境中训练大型深度神经网络时,问题就出现了,因为与大型数据中心中的机器相比,客户端通常具有相对较低的计算能力和通信带宽。

另一种基于GAN的针对FL安全性提出的防御技术称为PDGAN,它在[165]中提出,用于帮助防御来自FL恶意客户端的数据中毒攻击。还有一种防御技术,使用[166]中提出的垂直联邦学习方法,称为Secureboost框架,它基于梯度增强树算法。

5 联邦学习中的隐私问题

默认情况下,FL通过减少网络(中央服务器)中用户数据的占用来提高隐私。受此启发,本节致力于探讨联邦学习技术中存在的隐私问题和当前的相关成就。本节专门回答以下隐私有关的研究问题:

  • 问题1:FL域中的隐私威胁/攻击有哪些?
  • 问题2:有哪些技术可以减轻问题1中已识别的威胁,并增强FL的一般隐私保护特性?
  • 问题3:与分布式ML相比,FL面临的独特的隐私威胁有什么?
  • 问题4:问题2中确定的隐私保护技术的相关代价有什么?

5.1 FL域中的隐私威胁/攻击有哪些?

根据最近的研究,FL仍然存在一些隐私威胁,因为对手可以根据每个参与者上传的参数部分揭示原始训练数据集中的每个参与者的训练数据。FL中的这些关键威胁可以概括为不同类型的推理攻击。

5.1.1 成员推理攻击

成员推理攻击[167]的目的是通过检查训练集上是否存在数据来获取信息。攻击者滥用全局模型来获取其他用户的训练数据。在这种情况下,通过猜测来推断训练数据集上的信息,并训练预测模型来预测原始训练数据。

5.1.2 无意的数据泄露&通过推理重建

在这种情况下,来自客户机的更新或梯度会意外地泄露中央服务器上的信息。[168]作者利用了无意的数据泄露漏洞,并通过推理攻击成功地重构了其他客户端的数据。

5.1.3 基于GANs的推理攻击

GANs是近年来在大数据领域非常流行的生成式对抗网络,也适用于基于FL的方法。针对FL,[114]中的作者提出了mGAN-AI框架,用于探索基于GAN的对FL的攻击。

在FL客户中可能存在潜在的对手,这些客户可能只使用旧的本地数据作为其贡献,以换取全局模型。在获得全局模型后,可以使用推理技术推断其他客户信息。由于对客户概况和声誉的了解有限,这种行为很难辨别。此外,只有参数更新的协同训练也使得FL服务器难以评估每个客户端贡献的效果。

5.2 有哪些技术可以减轻问题1中已识别的威胁,并增强FL的一般隐私保护特性?

FL中增强隐私保护和减少威胁的算法主要基于两类:安全多方计算(SMC)和差分隐私 (DP)。

5.2.1 安全多方计算(Secure multi-party computation)

在SMC中,通信采用密码学方法进行保护。最近,SMC已经被用来在FL框架中保护来自客户端的更新。与传统的SMC算法不同,FL算法只需要对参数进行加密,无需对大量的数据输入进行加密,大大提高了计算效率。这一性能特点使SMC在FL环境中成为一个较好的选择。基于SMC的解决方案仍存在一些挑战。主要的挑战是效率和隐私之间的平衡。此外,如何为FL客户端设计一个轻量级的SMC解决方案仍然是一个开放的问题。

5.2.2 差分隐私(Differential privacy)

DP的主要概念是通过对个人敏感属性添加噪声来保护隐私[174]。因此,每个用户的隐私都受到了保护。同时,与增加隐私保护相比,每个用户增加的噪声造成的统计数据质量损失相对较低。在FL中,为了避免数据的反向检索,引入了DP对参与者上传的参数添加噪声。

但是,这样的解决方案会给上传参数带来不确定性,可能会影响训练的效果。此外,这些技术使FL服务器更难评估客户ji的行为来计算收益。

5.2.3 VerifyNet

VerifyNet[180]是一个隐私保护和可验证的FL框架。它被列为保护隐私的首选缓解策略,因为它提供了双重掩蔽协议,使攻击者难以推断训练数据。它为客户端提供了一种验证中心服务器结果的方法,保证了中心服务器的可靠性。这个框架的唯一问题是通信开销,因为中央服务器必须向每个客户端发送可验证的证明。

5.2.4 对抗训练

对抗性数据的例子是对现实世界数据的不完善的预测。攻击者试图用扰动数据来影响FL模型的鲁棒性。对抗性训练是一种主动防御技术,从训练阶段开始就尝试攻击的所有排列,以使FL全局模型对已知的对抗性攻击具有鲁棒性。

对抗性训练提高了用户数据的隐私性,因为增加了对抗性样本,最大限度地减少了通过推理揭示实际训练数据的威胁。

5.3 与分布式ML相比,FL面临的独特隐私威胁有什么?

由于FL默认提供用户数据隐私,因此针对FL的隐私威胁很少。如[187]所讨论和实验的,在保护用户数据隐私方面,FL优于DML。在带有参数服务器的DML解决方案中,发起推断攻击(如5.1节所述)从其他客户端窃取信息将是最不可取的方法,因为数据很容易在参数服务器上或通过客户端更新访问。然而,对于DML应用程序,例如[8],训练良好的ML模型被外包为付费服务,因此很有可能受到基于推理的攻击[188,189]。

基于GANs的推理攻击(在第5.1.3节中所讨论)在FL环境中是可行的,但对于DML解决方案是不太合适的方法,这使得基于GANs的推理攻击仅针对FL。

5.4 问题2中确定的隐私保护技术的相关成本有什么?

每一个附加增强都有它自己的一组额外的成本和影响。这里的成本定义了由于实现的增强方法而引起的开销或结果。安全多方计算和差分隐私增强了FL的隐私保护能力,但在准确性和效率方面付出了更高的代价。安全多方计算和差分隐私增强了FL的隐私保护能力,但在准确性和效率方面付出了更高的代价。在基于加密的安全多方计算方法中,每个客户机都需要花费额外的计算资源来执行加密。因此,每个客户端都需要花费额外的计算资源来执行加密。这可能与客户机设备是否受到计算限制有关,例如物联网设备中常见的计算限制。因此,为了使用加密增强用户数据的隐私性,ML模型的效率可能会被折衷。

下表总结了本节讨论的隐私保护技术及其相关特征。

6 其他文献工作

目前该领域最先进的研究调查和综述从不同的角度提供了不同目标和专注度的外语教学的显著成果。尽管FL的安全性和隐私性很重要,但在文献中并未得到充分的论述,我们的研究工作致力于提供这项重点研究,以填补空白,帮助社区和新来者获得关于FL安全和隐私的深入信息和知识。

7 FL安全与隐私的未来方向

7.1 零日对抗攻击及其辅助技术

FL的防御措施旨在防范已知的漏洞和特定的预定义恶意活动,在测试时,它们在检测设计参数之外的攻击方面的作用较小。尽管这种现象适用于几乎任何ML应用程序的防御机制,但在FL中这种可能性更大,因为我们在生产中没有很多版本能够证明各种攻击的可能性。

7.2 可信的可溯源性

FL的一个主要挑战是在底层ML过程的整个生命周期中跟踪全局ML模型。有一些初步工作利用区块链技术[210-212]和FL提供并跟踪事务更新到全局ML模型[129,131],希望在深度学习中实现更透明的训练过程跟踪ML模型。

7.3 使用API定义好的过程

FL需要详细分析用不同方法标记的所有优缺点,需要定义标准化的技术来支持不同领域的FL的新需求。由于隐私是FL的一个关键因素,需要进行进一步增强隐私,对每个需求的方法进行标准化,并定义一个过程(使用通用api)来实现这些增强的方法。

7.4 优化隐私保护增强和成本之间的权衡

目前的研究工作显示了如何以牺牲效率或准确性为代价来加强FL中的隐私保护。但是,目前还没有找到合适的SMC加密级别和加噪量的研究工作。如果加密级别或噪声量不够,参与者仍然存在隐私泄露的风险。相反,如果加密级别过高或参数中加入了过多的噪声,则FL模型的精度会较低。

7.5 在实践中建立FL隐私保护增强框架

发展FL增强的隐私保护框架可能是一个紧迫的研究方向,可以有利于学术研究和FL在行业中的应用。

7.6 FL的客户选择和训练计划

训练计划和训练轮客户选择策略在FL中至关重要。[213]的研究工作提出了最优的方法,但仍需要为FL中的每个ML算法用例制定标准化的方法。

7.7 不同ML算法的优化技术

基于不同的ML算法,需要有预定义的、标准化的优化算法来构建FL模型。有许多提议的聚合/优化算法建议优化或增强FL,但仍然有必要进行专门的研究,为当前所有ML应用/用例提供FL特定的优化算法。这有助于未来的实现者/适配器轻松开发FL特定的解决方案。

7.8 对训练策略和参数的愿景

由于FL的训练需要时间、成本和计算成本,因此,在设置最优值方面有远见将有助于建立鲁棒且具有成本效益的FL解决方案。

7.9 易于迁移和生产

没有简单直接的方法来生产FL环境。[215]中的研究工作提出了在转向生产时需要考虑的许多因素,但是仍然需要建立完善的指导方针,以便在FL中实现新的用例或将现有的ML环境迁移到分散的FL方法。

8 总结

在本文中,我们提供了一个全面的研究安全和隐私成就问题,以及在FL环境中的影响。通过对安全与隐私的评估和结果,我们希望给社区提供新的视角,并引起社区对构建适合大规模采用的无风险FL环境的关注。未来方向部分,我们概述了FL需要深入研究和调查的领域。FL是一个相对较新的市场框架,需要进一步研究,以确定适合不同FL环境风格的增强充溢。

【论文笔记】A survey on security and privacy of federated learning(综述)相关推荐

  1. 联邦学习安全与隐私保护综述 A survey on security and privacy of federated learning

    联邦学习安全与隐私保护综述 写在前面的话 联邦学习是什么 联邦学习工作流程 联邦学习的技术分类 安全问题和解答 隐私问题和解答 未来方向 写在前面的话 本篇博客参考<A survey on se ...

  2. [论文笔记] A Survey of Software Refactoring(TOSE, 2004)第一部分

    Time:8 hours Timespan:Dec 8 – Dec 14 (杂事多,断断续续看了一周,终于把这篇综述看完了) Tom Mens, Tom Tourwé (2004). A Survey ...

  3. [TIST 2022] No Free Lunch Theorem for Security and Utility in Federated Learning

    联邦学习中的安全性和实用性没有免费午餐定理 No Free Lunch Theorem for Security and Utility in Federated Learning 目录 摘要 简介 ...

  4. 论文笔记:On the Security of Two-Round Multi-Signatures

    论文提出了一种针对两轮多重签名(Multi-signature)的亚指数时间攻击算法,攻击者可以通过并发来伪造任意消息上的多重签名.这种攻击方法能够广泛应用在当时已有的两轮多重签名方案中,其中包括了许 ...

  5. 【论文笔记】Progressive Layered Extraction (PLE): A Novel Multi-Task Learning (MTL) Model for Personalized

    论文 论文题目:Progressive Layered Extraction (PLE): A Novel Multi-Task Learning (MTL) Model for Personaliz ...

  6. 论文阅读:HybridAlpha: An Efficient Approach for Privacy-Preserving Federated Learning

    论文名字 HybridAlpha: An Efficient Approach for Privacy-Preserving Federated Learning 来源 会议 the 12th ACM ...

  7. 【论文笔记】Incorporating Learnable Membrane Time Constant to Enhance Learning of SNN

    写在前面 本文是对论文Incorporating Learnable Membrane Time Constant to Enhance Learning of Spiking Neural Netw ...

  8. 论文笔记 NAACL 2021|Document-level Event Extraction with Efficient End-to-end Learning of Cross-event De

    文章目录 1 简介 1.1 动机 1.2 创新 2 背景知识 3 方法 3.1 基础模型 3.2 跨事件依赖 4 实验 1 简介 论文题目:Document-level Event Extractio ...

  9. 【论文笔记】(VC)《Combining Progressive Rethinking and Collaborative Learning: ... for In-Loop filtering》

    <Combining Progressive Rethinking and Collaborative Learning: A Deep Framework for In-Loop Filter ...

  10. 论文笔记 | Self-organized Text Detection with Minimal Post-processing via Border Learning

    论文链接:http://openaccess.thecvf.com/content_ICCV_2017/papers/Wu_Self-Organized_Text_Detection_ICCV_201 ...

最新文章

  1. 用C语言解“求整数段和”题
  2. springboot统一异常处理类及注解参数为数组的写法
  3. Vue——props默认值为工厂函数时[工厂函数:undefined]问题解决方案
  4. codeblocks哪个字体最舒服_如果给你一百万让你放弃一种美食永远不吃,你会放弃哪个?...
  5. python 实现本地查找文件,并打印(os for os.open chdir)
  6. Rabbitmq---消息队列
  7. 360手机浏览器_扰乱网络传播秩序!搜狗、360等手机浏览器国家网信办纳入首批重点整治范围...
  8. 过年用计算机弹奏,过年实用,你可能需要的亲戚称呼计算器
  9. selenium配置
  10. 深入浅出:Java多线程编程实战(一)
  11. 测试开发工程师必备软硬能力高级测试开发工程师需要具备什么能力?
  12. Linux笔记:Ubuntu18.04有线网络和无线网络的优先级设置
  13. C站能力认证(C4前端基础认证) //任务一:构建可访问性HTML实例
  14. 【游戏开发】小白学Lua(上)
  15. cannot find -lbz2
  16. lua unpack php,Lua 可变参数 和 table.unpack() 函数
  17. Android股票app模拟同花顺,适合练手的Android项目
  18. 为什么要进行实名认证?如何实名认证?
  19. proteus仿真里面的LCD1602液晶屏初始化
  20. 关于system(pause)

热门文章

  1. 苹果计算机关机时间不准,苹果电脑怎么设置定时自动关机
  2. 使用JSONObject比较Java复杂对象
  3. OSPF网络可以没有BDR(实验)
  4. UVa OJ 10909-Soya Milk
  5. springboot+easypoi excel表格多个sheet导出
  6. 爱的5种能力,你有吗?
  7. Ubuntu下修改只读文件方法
  8. GitHub 官宣:弃用 trending 热榜,开发者炸锅了
  9. windows蓝牙编程—— 0 获取本地蓝牙的句柄和信息
  10. HDU 3903 Trigonometric Function (三角恒等式余弦定理)