我的博客园:https://www.cnblogs.com/MaplesWCT/
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 |
集中式的ML方法面临着不同的挑战,包括计算能力和时间,以及最重要的、长期被忽视的用户数据的安全性和隐私问题。联邦学习被提出以解决这些问题。
联邦学习[2]通过将数据从中央服务器分散到终端设备,提供了一种保护用户隐私的方法,并使AI能够受益于具有敏感数据和异构性的领域。FL范式兴起主要有两个原因:1)由于对此类数据的直接访问限制,没有足够的数据集中驻留在服务器端;2)数据隐私保护使用来自边缘设备的本地数据。基于去中心化的数据概念,FL是近年来ML领域中发展迅速的领域之一,因为它具有安全和隐私性,承诺遵守新兴的用户数据保护法律[3, 4]。
正如[1]FL中的作者所说,它将代码引入数据,而非将数据引入代码,并解决隐私、所有权和数据位置等基本问题。由于FL还处于研究的初始阶段,许多不同社区的研究人员都在努力改进现有框架,并确保FL中用户数据的隐私和安全。
FL隐私保护吸引了可能包含敏感数据的不同领域。某种程度上,FL解决了ML环境中敏感数据的隐 私问题,与此同时,模型参数共享以及训练迭代和通信数量的增加使联邦环境面临一系列新风险,并为黑客攻击开辟了新途径[5],以及好奇的攻击者跟踪漏洞以操纵ML模型输出或访问敏感的用户数据。为此,本文通过识别和评估开放的安全和隐私威胁,以及通过回答几个具体的研究问题来解决FL的缓解策略,来解决研究目标。
目前理解FL的安全性和隐私风险方面还没有取得足够的进展。本文在正式定义、成就和挑战等方面对FL安全性做出全面的概述。贡献如下:
近年来,大数据的可用性、计算能力和深度学习模型三个因素帮助ML取得了成功。虽然ML[7]取得了巨大成功,但由于两个主要障碍,许多领域的使用受到限制:
FL通过提供一个高度训练的ML模型来解决隐私或机密性等问题,而没有暴露训练数据的风险。FL 还通过在异构域之间提供信任因子来解决数据不足问题。FL被认为是一个迭代过程,每次迭代都对中心ML模型进行更新。实现大概分为以下三个步骤(如下图所示):
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内部潜在的安全和隐私相关问题。
本节从不同角度收集并概述相关技术的内部工作原理,后面章节更深入地理解安全性和隐私方面 内容。如下图所示,FL实现网络拓扑用于构建FL环境,基于数据可用性和分区分类,聚合/优化算法建 立在中央服务器保存通信带宽/成本和聚合逻辑,和开源框架在实践中实现FL。
根据网络拓扑结构,FL可分为集中式和完全去中心化两种[35]。
尽管FL从根本上是基于去中心化的数据方法,但仍然依赖于一个中央服务器来管理从涉及FL环境的客户机收集的训练过的模型,构建一个全局模型并与所有客户机共享它。主要借助建立可信第三方,以建立它们之间的信任。采用单服务器和多客户机拓扑[36],确保了一个中央权威机构监视和管理持续学习过程。与传统集中式服务器承载数据并在共享数据上训练给定模型不同,FL环境中的集中式服务器仅通过客户机的同步或异步更新在共享模型上工作。
为解决集中式网络拓扑中客户机数据的异构性,提出了聚类技术。聚类是一种有助于检测恶意更新的技术。
[37]中谷歌的研究工作提出了三种算法,以最小的通信轮数实现本地模型的个性化版本。
[38]提出了一种基于联邦多任务学习的方法,利用局部模型的余弦相似度识别客户端的FL簇。
[39]的研究工作提出了联邦随机期望最大化来训练多个全局ML模型并得到一个解决方案。损失函数称为基于距离的联邦损失,是多中心FL的目标,它是在多聚类环境下,在不同全局模型中寻找最优全局模型。
[40]中,作者提出了迭代联邦聚类算法(IFCA)框架,该框架试图最小化每个FL客户端的损坏函数,并在每轮训练中将客户端标记到一个聚类中。
完全分散的方法排除了模型聚合对中心服务器的依赖。集中式的权威被建立信任和可靠性的算法所取代。针对完全去中心化的实用方法,提出了各种附加技术或算法。
本部分的分类可以被认为是构建FL环境的“前期工作”。对具有价值的用户数据做相关的前期工作对整个FL过程至关重要。根据数据分布特征,即参与FL的异构数据和客户之间的分化和碰撞因素,可大致分为水平、垂直和迁移学习(HFL,VFL,TFL/FTL)三种。
HFL定义为设备上的数据集与不同实例共享相同特征的情况。在FL这一类别中,客户端在领域、派 生统计信息的使用风格或FL的任何其他结果方面具有类似的特征。
Google Gboard上应用的FL就属于HFL。另一个例子来自医疗领域,研究人员分析医疗图像并预测癌细胞出现的可能性。
VFL定义为不相关领域之间共同数据被用于训练全局模型。这种方法倾向于有一个中立第三方组织/资源提供加密逻辑以确保只有共同数据才被共享。但第三方也不是强制性的,[48]展示了没有第三方参与加密的VFL实现。
纵向联邦学习方法的实时用例是这样一种场景:银行信用卡部门的营销团队希望通过学习在线购物领域中购买的大多数商品来增强其ML模型。只有银行和购物网站中的普通用户可以共享详细信息来训练ML模型,中间加密逻辑确保了派生数据的这种安全和受限共享。通过这种信息交换的联系,银行领域可以更好地为客户提供相关的优惠,而在线购物领域可以修改他们对使用信用卡的客户的积分分配。
FTL是现有经典ML迁移学习技术的一种实现,对一个已经在相似数据集上预训练好的模型上进行训练,该相似数据集是为了解决完全不同的问题的。在ML中,在预训练好的模型上面训练效果比从零开始训练的效果好得多。
正如谷歌[36]中讨论的那样,根据数据可用性和客户机结点数量,FL可分为Cross-silo FL和Cross-device FL。
silo的意思是“仓库;地窖;竖井”,这里可以理解为仓库或者企业,device就是设备。
直观上看,Cross-silo FL面对的客户端是企业级别、机构单位级别的,而Cross-device FL针对的则是便携式电子设备、穿戴式电子设备等,统称为物联设备(IoT devices)。
在这种情况下的客户端数量通常是范围从2到100个设备的小数目,通常有索引,几乎总是在训练轮中可用。训练数据可分为横向联邦学习和纵向联邦学习。计算和通信瓶颈是主要问题。与Cross-device FL相比,Cross-silo FL更加灵活,可用在组织或一组组织的场景中使用它们的机密数据来训练ML模型。在纵向和迁移学习中,更喜欢用加密技术来限制来自每个客户端的信息推理。
具有来自全局模型的相似领域的大量客户端的FL方法被称为Cross-device FL。由于客户端数量庞大,很难跟踪和维护交易历史日志。大多数客户使用不可靠的网络连接,在这些网络中,选择/参与训练是随机发生的。
有助于客户机绑定更新以实现目标全局ML模型的算法因FL的优先级和体系结构而异。配置这个逻辑至关重要,因为它解决了客户端的异构性和权重变化,以及通信问题。在集中式FL中,有一个聚合算法可以从协调训练工作到优化更新。很少有提出的算法专注于客户机的优化选择,优化训练轮以实现高效通信和FL成本。本节覆盖了FL 不同方法中用于集成、强化、优化、聚合和达成共识的算法。
聚合算法在任何集中式拓扑和横向联邦学习环境中都起到关键作用。逻辑[65]结合了来自参与训练轮的所有客户端的本地模型更新。许多算法的目的是增强本地模型更新的隐私性,或保持通信带 宽,或促进来自客户端的异步更新。基于预配置参数,联邦学习在FL的每个实现中都有所不同。 如下:
本部分讨论FL训练中提高通信效率和降低通信成本的算法。
TFF:https://www.tensorflow.org/federated/federated_learning
Pysyft:https://blog.openmined.org/tag/pysyft/
FATE:https://fate.fedai.org
FL技术在采用者和开发人员应该坚持信息安全的基本原则,如机密性、完整性和可用性。拥有大量客户进行协作训练和暴露模型参数的去中心化方法使FL容易受到各种攻击和风险。FL安全方面的研究问题如下:
漏洞可以定义为系统中的一个弱点,它为好奇/恶意攻击者提供了获得未经授权访问的机会[98]。了解系统或框架公开的漏洞有助于管理和防御可能的攻击。通过实现防御漏洞的先决条件,识别漏洞将有助于构建一个更安全的环境。下面列出五种不同的资源被认为是开发的弱点。
威胁/攻击是指漏洞可能被恶意/好奇的攻击者利用,从而影响系统安全性并违反其隐私策略。在FL中,通常恶意代理利用漏洞[99]控制一个或多个参与者(即客户端),以最终操纵全局模型。在这种情况下,攻击者针对不同的客户端,希望访问本地静止数据、训练过程、超参数或传输中更新的权值[100],在全局模型中修改并发动攻击。对安全威胁/攻击分类如下。
在FL中最有可能发生的攻击称为中毒攻击[101,102],因为FL中每个客户都可以访问训练数据,因此被篡改的数据权重添加到全局ML模型的可能性非常高。中毒可能发生在训练阶段,影响训练数据集或局部模型,反过来/间接篡改全局模型的性能/准确性。一个或多个客户端数据的中毒攻击的概率很高,威胁的严重程度也很高。
推理攻击更多的是对隐私的威胁,其严重性余投毒攻击非常类似,因为推理攻击的可能性非常高,无论是来自参与者,还是来自FL过程中恶意的中央服务器。
与后门攻击相比,投毒和推理攻击更透明。后门攻击是将恶意任务注入到现有模型中,同时保持
实际任务的准确性的一种方法。由于实际ML任务的准确性可能不会立即受到影响,因此识别后门
攻击既困难又耗时。后门攻击的严重程度较高,需要很长时间才能识别攻击的发生。此外,后门
攻击的影响是高的,因为后门攻击能够混淆ML模型,并自信地预测假正例的能力。
基于GAN的攻击能够发起投毒和推理攻击,对给定系统的安全性和隐私构成威胁。由于基于GAN的威胁的所有可能性都无法预见,因此它被归类为高影响和优先级的威胁。
停机是IT系统中无法避免的威胁,由于后端服务器上的计划外或计划中的活动, 高度配置和安全的应用程序经常需要一个停机阶段。在FL中,这种威胁的严重性较低,因为我们在每个客户节点上都有一个本地-全局模型,并且在中断后可以恢复训练过程。即使严重程度较低, 这也是一个相当大的威胁,因为停机可能是一种精心策划的攻击,从FL环境中窃取信息。
受影响的或恶意的服务器会产生巨大的影响,而诚实但好奇的或恶意的服务器可以很容易地提取私有客户端数据或操纵全局模型,利用共享的计算能力在全局ML模型中构建恶意任务。
从多个异构设备的数据中训练ML模型的挑战之一是通信带宽。在FL方法,通过传输训练过的模型 而不是发送大量的数据来降低通信成本,但我们仍然需要保持通信带宽。这种威胁的严重性是很高的,因为通信瓶颈可以显著破坏FL环境。
很少有客户机扮演被动的角色,仅仅为了利用全局ML模型的好处而与环境联系,而没有对训练过程 做出贡献。这种被动客户端也可能插入虚拟更新,而不使用其本地数据训练ML模型。由于这种攻击发生的概率较低,因此严重程度为中等。
在训练过程中,客户的缺失或流失可能会导致全球模型的训练效率低下。这类似于搭便车攻击,但在此场景中,由于网络问题或任何其他意想不到的障碍,客户机无意中错过了参与训练过程。这种威胁的严重性是中等的,因为概率较低,而且可以选择可以异步工作的聚合算法。
在FL中,我们有一个学习过程的迭代,包括从客户机到中央服务器的通信轮。如果存在弱通信通道,攻击者可以通过弱通信通道窃听和提取数据。窃听可以被认为是攻击FL模型的中度严重威胁,因为黑盒模型通常很难攻击。攻击者更愿意接管安全性较弱的客户端,因为后者会提供模型参数和白盒全局模型。
这种威胁发生的可能性很低,因为配置FL环境的数据科学家要确保全局模型的部署在投入到所有客户的生产之前得到了很好的分析。该威胁的严重性较低,但仍然是一个相当大的威胁,因为在FL中有意或无意的配置错误可能会导致安全漏洞。
目前提出的分布式机器学习(Distributed Machine Learning,DML)旨在解决大数据和计算能力的挑战,同时训练ML模型。共享数据和计算能力来训练一个通用的ML模型。通过配置参数服务器或多个服务器节点,将数据或任务分配给DML的客户端节点。从架构的角度来看,DML与FL有一些共同的特性,也有一些研究工作解决了DML中的安全与隐私问题。然而,FL与现有的DML解决方案相比是独特的,默认情况下具有更高的安全性和隐私级别。本节旨在讨论FL和DML之间共同的常见威胁。
DML与FL共同威胁:
防御技术有助于防范已知的攻击,降低风险发生的可能性。防御有两种类型,即主动防御和被动防御。主动防御是一种猜测与之相关的威胁和风险并采用成本效益高的防御技术的方法。反应性防御是在识别攻击后完成的工作,并作为缓解过程的一部分,防御技术在生产环境中作为修补程序部署。下表总结了当前FL的防御技术和它们所减轻的威胁类型。
另一种基于GAN的针对FL安全性提出的防御技术称为PDGAN,它在[165]中提出,用于帮助防御来自FL恶意客户端的数据中毒攻击。还有一种防御技术,使用[166]中提出的垂直联邦学习方法,称为Secureboost框架,它基于梯度增强树算法。
默认情况下,FL通过减少网络(中央服务器)中用户数据的占用来提高隐私。受此启发,本节致力于探讨联邦学习技术中存在的隐私问题和当前的相关成就。本节专门回答以下隐私有关的研究问题:
根据最近的研究,FL仍然存在一些隐私威胁,因为对手可以根据每个参与者上传的参数部分揭示原始训练数据集中的每个参与者的训练数据。FL中的这些关键威胁可以概括为不同类型的推理攻击。
成员推理攻击[167]的目的是通过检查训练集上是否存在数据来获取信息。攻击者滥用全局模型来获取其他用户的训练数据。在这种情况下,通过猜测来推断训练数据集上的信息,并训练预测模型来预测原始训练数据。
在这种情况下,来自客户机的更新或梯度会意外地泄露中央服务器上的信息。[168]作者利用了无意的数据泄露漏洞,并通过推理攻击成功地重构了其他客户端的数据。
GANs是近年来在大数据领域非常流行的生成式对抗网络,也适用于基于FL的方法。针对FL,[114]中的作者提出了mGAN-AI框架,用于探索基于GAN的对FL的攻击。
在FL客户中可能存在潜在的对手,这些客户可能只使用旧的本地数据作为其贡献,以换取全局模型。在获得全局模型后,可以使用推理技术推断其他客户信息。由于对客户概况和声誉的了解有限,这种行为很难辨别。此外,只有参数更新的协同训练也使得FL服务器难以评估每个客户端贡献的效果。
FL中增强隐私保护和减少威胁的算法主要基于两类:安全多方计算(SMC)和差分隐私 (DP)。
在SMC中,通信采用密码学方法进行保护。最近,SMC已经被用来在FL框架中保护来自客户端的更新。与传统的SMC算法不同,FL算法只需要对参数进行加密,无需对大量的数据输入进行加密,大大提高了计算效率。这一性能特点使SMC在FL环境中成为一个较好的选择。基于SMC的解决方案仍存在一些挑战。主要的挑战是效率和隐私之间的平衡。此外,如何为FL客户端设计一个轻量级的SMC解决方案仍然是一个开放的问题。
DP的主要概念是通过对个人敏感属性添加噪声来保护隐私[174]。因此,每个用户的隐私都受到了保护。同时,与增加隐私保护相比,每个用户增加的噪声造成的统计数据质量损失相对较低。在FL中,为了避免数据的反向检索,引入了DP对参与者上传的参数添加噪声。
但是,这样的解决方案会给上传参数带来不确定性,可能会影响训练的效果。此外,这些技术使FL服务器更难评估客户ji的行为来计算收益。
VerifyNet[180]是一个隐私保护和可验证的FL框架。它被列为保护隐私的首选缓解策略,因为它提供了双重掩蔽协议,使攻击者难以推断训练数据。它为客户端提供了一种验证中心服务器结果的方法,保证了中心服务器的可靠性。这个框架的唯一问题是通信开销,因为中央服务器必须向每个客户端发送可验证的证明。
对抗性数据的例子是对现实世界数据的不完善的预测。攻击者试图用扰动数据来影响FL模型的鲁棒性。对抗性训练是一种主动防御技术,从训练阶段开始就尝试攻击的所有排列,以使FL全局模型对已知的对抗性攻击具有鲁棒性。
对抗性训练提高了用户数据的隐私性,因为增加了对抗性样本,最大限度地减少了通过推理揭示实际训练数据的威胁。
由于FL默认提供用户数据隐私,因此针对FL的隐私威胁很少。如[187]所讨论和实验的,在保护用户数据隐私方面,FL优于DML。在带有参数服务器的DML解决方案中,发起推断攻击(如5.1节所述)从其他客户端窃取信息将是最不可取的方法,因为数据很容易在参数服务器上或通过客户端更新访问。然而,对于DML应用程序,例如[8],训练良好的ML模型被外包为付费服务,因此很有可能受到基于推理的攻击[188,189]。
基于GANs的推理攻击(在第5.1.3节中所讨论)在FL环境中是可行的,但对于DML解决方案是不太合适的方法,这使得基于GANs的推理攻击仅针对FL。
每一个附加增强都有它自己的一组额外的成本和影响。这里的成本定义了由于实现的增强方法而引起的开销或结果。安全多方计算和差分隐私增强了FL的隐私保护能力,但在准确性和效率方面付出了更高的代价。安全多方计算和差分隐私增强了FL的隐私保护能力,但在准确性和效率方面付出了更高的代价。在基于加密的安全多方计算方法中,每个客户机都需要花费额外的计算资源来执行加密。因此,每个客户端都需要花费额外的计算资源来执行加密。这可能与客户机设备是否受到计算限制有关,例如物联网设备中常见的计算限制。因此,为了使用加密增强用户数据的隐私性,ML模型的效率可能会被折衷。
下表总结了本节讨论的隐私保护技术及其相关特征。
目前该领域最先进的研究调查和综述从不同的角度提供了不同目标和专注度的外语教学的显著成果。尽管FL的安全性和隐私性很重要,但在文献中并未得到充分的论述,我们的研究工作致力于提供这项重点研究,以填补空白,帮助社区和新来者获得关于FL安全和隐私的深入信息和知识。
FL的防御措施旨在防范已知的漏洞和特定的预定义恶意活动,在测试时,它们在检测设计参数之外的攻击方面的作用较小。尽管这种现象适用于几乎任何ML应用程序的防御机制,但在FL中这种可能性更大,因为我们在生产中没有很多版本能够证明各种攻击的可能性。
FL的一个主要挑战是在底层ML过程的整个生命周期中跟踪全局ML模型。有一些初步工作利用区块链技术[210-212]和FL提供并跟踪事务更新到全局ML模型[129,131],希望在深度学习中实现更透明的训练过程跟踪ML模型。
FL需要详细分析用不同方法标记的所有优缺点,需要定义标准化的技术来支持不同领域的FL的新需求。由于隐私是FL的一个关键因素,需要进行进一步增强隐私,对每个需求的方法进行标准化,并定义一个过程(使用通用api)来实现这些增强的方法。
目前的研究工作显示了如何以牺牲效率或准确性为代价来加强FL中的隐私保护。但是,目前还没有找到合适的SMC加密级别和加噪量的研究工作。如果加密级别或噪声量不够,参与者仍然存在隐私泄露的风险。相反,如果加密级别过高或参数中加入了过多的噪声,则FL模型的精度会较低。
发展FL增强的隐私保护框架可能是一个紧迫的研究方向,可以有利于学术研究和FL在行业中的应用。
训练计划和训练轮客户选择策略在FL中至关重要。[213]的研究工作提出了最优的方法,但仍需要为FL中的每个ML算法用例制定标准化的方法。
基于不同的ML算法,需要有预定义的、标准化的优化算法来构建FL模型。有许多提议的聚合/优化算法建议优化或增强FL,但仍然有必要进行专门的研究,为当前所有ML应用/用例提供FL特定的优化算法。这有助于未来的实现者/适配器轻松开发FL特定的解决方案。
由于FL的训练需要时间、成本和计算成本,因此,在设置最优值方面有远见将有助于建立鲁棒且具有成本效益的FL解决方案。
没有简单直接的方法来生产FL环境。[215]中的研究工作提出了在转向生产时需要考虑的许多因素,但是仍然需要建立完善的指导方针,以便在FL中实现新的用例或将现有的ML环境迁移到分散的FL方法。
在本文中,我们提供了一个全面的研究安全和隐私成就问题,以及在FL环境中的影响。通过对安全与隐私的评估和结果,我们希望给社区提供新的视角,并引起社区对构建适合大规模采用的无风险FL环境的关注。未来方向部分,我们概述了FL需要深入研究和调查的领域。FL是一个相对较新的市场框架,需要进一步研究,以确定适合不同FL环境风格的增强充溢。