联邦学习(FL)安全威胁
Posted learning-striving
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了联邦学习(FL)安全威胁相关的知识,希望对你有一定的参考价值。
MPC、DP等:通过降低模型性能或系统效率为代价来确保隐私安全
一、FL安全问题
- 训练过程中,联邦学习仍然存在模型更新过程中向第三方或中央服务器透露敏感信息的情况
- FL协议设计存在漏洞,任一参与方可能获得全局参数并能控制这些参数的上传
- 模型训练和预测阶段,恶意参与者可通过对模型输入输出值的恶意修改来窃取模型参数
- 攻击者在梯度迭代环节能窃取训练数据
- 恶意第三方可以从服务器的共享数据更新中恢复参与者的部分数据
1.1 FL安全性要求(CIA模型):
- 机密性(confidentiality):指FL系统保证模型不会泄露相关敏感信息,要求系统必须保证未得到授权的用户无法接触到系统中的私密信息, 既包括模型的训练数据, 也包括模型的架构、参数等信息
- 完整性(integrity):指FL系统在模型学习和推理预测过程中完全不受干扰,输出结果符合模型的典型性能,要求模型的预测结果不能偏离预期
- 可用性(availability):指FL可以被普遍使用,要求系统在面对异常输入甚至是恶意输入时仍能提供正常服务
对应攻击方式:
- 机密性攻击:FL系统在模型学习或预测阶段泄露敏感信息,包括模型参数、模型结构、训练方式、训练数据。通常通过特定的方法窃取模型信息或通过某种手段恢复部分训练模型的数据,从而推断出用户的敏感数据
- 完整性攻击:对模型学习过程和推理预测过程的干扰,使模型的输出结构不符合预期性能
- 可用性攻击:利用FL系统中的软件漏洞对训练数据进行恶意操作,使模型无法得到正确更新,导致模型无法被正常使用。主要利用联邦学习系统的漏洞,采用数据投毒攻击和拜占庭攻击破坏联邦学习模型的可用性
二、机密性攻击
2.1 模型提取攻击
是一种通过重建相同或相似模型,将替代模型作为目标的攻击方法,在黑盒攻击条件下,攻击者试图窃取联邦学习模型的参数或超参数,尽可能完整地重建模型,或构建与目标模型相似的替代模型
两个角度进行:一是构建替代模型;二是从目标模型中恢复信息
构建替代模型:重点是创建与测试集的精度相匹配的模型
从目标模型中恢复信息:提出窃取机器学习分类器参数的攻击,具体就是攻击BigML和 Amazon机器在线学习模型(即功能映射模型和决策树模型),并提取出和在线学习模型几乎相同的模型
2.2 模型反转攻击
利用机器学习系统提供的API获取模型的初步信息,并利用这些初步信息对模型进行逆向分析.当成功实施模型反转攻击时,模型反转攻击生成的类成员类似于被攻击模型训练时的输入类
实现:通过从已完成的模型中获取训练集信息来推测目标模型的某些数据,其中,从逆向攻击中推断出的训练集信息可以是训练集的成员信息,也可以是训练集的某些统计特征
目标:恢复敏感特征或完整的数据样本
成员推理攻击
成员推理攻击:攻击者利用目标数据点和模型的访问权限,试图推断 ∈X,X为私有训练数据
分类:
主动攻击:攻击者可以篡改联邦学习模型训练协议,实现对其他学习参与者的攻击
被动攻击:攻击者观察更新后的模型参数,并在不改变任何本地或全局协作训练过程的情况下推断是否为私有训练数据
攻击者的目的:构建一个攻击模型,该模型可以识别目标模型行为中的这些差异,并利用它们来区分目标模型的成员和非成员
成员推理的目的:推断特定样本是否属于参与学习的一方或两方的私有训练数据
成员推理攻击方法:
- 影子模型的成员推理攻击
- 独立于数据模型的成员推理攻击
- 仅带标签的成员推理攻击
- 针对生成网络的成员推理攻击
属性推理攻击
属性推理攻击:攻击者试图提取未明确编码为特征或与学习任务无关的数据集属性,这些属性独立于联邦学习模型特征.该类攻击可以获得更多关于训练数据的信息,攻击者基于这些信息构建与联邦学习模型类似的模型
属性推理的目的:从模型中提取无意中学到的信息,与训练任务无关
属性推理攻击用于FL系统的限制条件:
- 属性推理攻击需要辅助数据,这些辅助数据有时是难以获取的
- 对于联邦学习参与者的数量,实验一般是在20~30个成员条件下进行,实际应用中可能会达到几百个
- 部分属性信息本身不可分离,此时属性推理攻击会失效
- 无法推理出属性信息的来源
- 属性推理攻击依赖上下文环境
- 攻击者需要持有推理出的部分数据来实施攻击
2.3 重构攻击
侧重于重构出实际数据以及可能属于训练集敏感特征的典型类
目标:重构部分或全部训练样本及标签
生成对抗网络攻击
构建的只是类的个例,而不是构建实际的训练输入数据.当且仅当特殊情况下所有类成员都相似时,生成对抗网络攻击构建的个例才和训练集数据相似
生成对抗网络:主要由生成网络和鉴别网络两部分组成,生成网络尽可能生成图像去欺骗鉴别网络,鉴别网络的作用是区分生成网络生成的图像,生成网络和鉴别网络构成了动态“博弈过程”
限制条件:
- 被攻击方参与训练的每轮数据必须有相似的数据分布
- 实际攻击过程中,模型更新必须加入随机噪声
- 并不十分适合处理类似文本数据的以离散形式存在的数据
- 相比训练变分自动编码和像素循环神经网络模型,训练一个生成对抗网络并不稳定
- 需要一定规模的计算资源
变分自动编码攻击
是生成模型的一种,该方法的实质是结合深度模型和静态推理将高阶数据映射到低维空间
实现原理:通过变分自动编码中的编码器生成置信度的分布区间,为每个隐藏变量生成一个确定值,并通过抽样得到全新的数据
优势:生成对抗网络无法通过编码和解码过程实现对重构图片和原始图片差异的直接比较,变分自动编码则可以实现对攻击获得的重构图片和原始图片的直接比较
缺陷:不使用对抗网络,产生的图片会比较模糊
解决:通过改进变分自动编码方法设计了自省变分自动编码方法(IntroVAE)
梯度信息泄露攻击
通过多次迭代获得训练输入数据和标签
特点:可以恢复像素级精度的原始图像和匹配符号级的原始文本
存在问题:
- 在收敛方面有诸多困难
- 难以连续识别出基本的正确标签
- 模型中的池化层会显著降低效果
- 需要已知模型中参数的分布,且仅适用于具有平均分布初始化的模型,不能恢复正态分布和已经训练好的模型参数
三、完整性攻击
模型在推理阶段和训练阶段最容易受到完整性攻击,模型的完整性一旦被破坏,模型的预测结果就会发生偏离
- 推理阶段:对抗攻击
- 训练阶段:模型投毒攻击
3.1 对抗攻击
利用不同类各个实例之间的边界生成使模型错误分类的输入样本,利用深度学习的缺点破坏识别系统的方法,即通过对识别对象进行肉眼不可见的特殊改动来使模型识别出错,在模型的推理和预测阶段,通过在原始数据中加入精心设计的微扰,攻击者可以获得对抗样本,从而欺骗深度学习模型使其给出高信度的误判
逃逸攻击:是对抗攻击的一个分支,攻击者可以在不改变目标机器学习系统的情况下,通过构造特定的输入样本来欺骗目标系统
数据中毒:攻击者在输入模型的数据中加入大量质量很差甚至错误的数据,扰乱数据集中数据的分布,从而破坏模型
常见问题:模型在预测阶段做出错误的判断,虽然错误分类不会直接侵犯联邦学习参与者
的隐私数据,但会导致模型的准确性和可用性受到影响
3.2 模型投毒攻击
主要指攻击者在全局聚合过程中通过发送错误的参数或破坏模型来扰乱联邦学习过程
通过控制学习参与者传递给服务器的更新参数,影响整个学习过程模型参数走向和降低模型的收敛速度,甚至破坏训练模型的正确性,影响联邦学习模型的性能
有目标攻击:针对某一分类样本的攻击
非目标(泛化)攻击:实现的是对所有样本的错误分类,并不只针对某一分类样本
联邦学习中,数据投毒攻击没有将数据发送到服务器,模型投毒攻击则因将数据发送到服务器而需要复杂的技术和较高的计算资源,其综合效果比数据投毒攻击更有效
3.3 后门攻击
通过故意改变决策边界使某些输入被错误分类,攻击者能够在模型中插入隐藏的后门,并在预测阶段通过触发简单的后门触发器完成恶意攻击,其危害性较大
四、可用性攻击
4.1 数据投毒攻击
指攻击者污染了训练集中的样本,不改变目标ML系统情况下,构造特定的输入样本来欺骗系统完成攻击
直接攻击:攻击者通过提供假传感器数据的方式锁定目标节点,直接向目标节点注入经恶意修改的有毒数据
间接攻击:攻击者不向任一目标节点注入有毒数据的条件下,利用设备间的通信协议缺陷等漏洞,通过向其他节点注入有毒数据来间接影响目标节点
混合攻击:直接攻击和间接攻击的结合,即攻击者既可以直接向目标节点也可以间接向目标节点注入有毒数据
4.2 拜占庭攻击
指攻击者控制多个授权节点,任意干扰或破坏网络.主要实现方法是使数据包延迟或无法送达而导致系统错误
攻击者的目标:是在训练阶段破坏学习过程的完整性,通过多次迭代积累的偏差,使学习到的全局模型与攻击前的模型之间的差异变得明显,从而使模型无法正常使用。归根到底,攻击者的目的是使用拜占庭攻击来控制和改变整个联邦学习模型的局部模型参数,提高全局模型的测试错误率,最终破坏联邦学习系统的可用性
五、攻击方法问题分析
5.1 联邦学习主要攻击方法缺点和不足
5.2 破坏联邦学习CIA模型的攻击方法存在的问题
- 现有攻击方法是研究人员在不同条件下提出的,研究中数据集、目标模型和威胁模型差异较
大,虽然攻击方法可行,但其有效性仍取决于实际应用场景 - 目前大多数攻击方法都是基于联邦学习而不是协作学习,大多数研究人员只考虑了联邦平均算法(FedAvg),忽略了联邦学习中添加的其他保护机制
- 现有大部分攻击方法都是被移植到联邦学习中的,没有针对联邦学习框架的特定聚合算法或特征攻击
六、未来研究方向
提高攻击效果和提高联邦学习安全性
- 纵向和迁移联邦学习隐私保护:现有攻击方法都是针对横向联邦学习场景,对纵向联邦学习和迁移联邦学习的研究相对较少,这可能是联邦学习遭受攻击的一个重点方面,也是未来联邦学习研究的一个重要方向
- 通用攻击方法:无论是横向还是纵向联邦学习场景,都应致力于研究一种通用的攻击方法。目前的攻击方法使用条件相对苛刻,难以满足需求
- 投毒攻击:由于投毒攻击的实施方式比较灵活,且不容易被传统安全检测方法检测到,因而可以将投毒攻击和其他攻击组成混合攻击方法,以达到更好的攻击效果
- 后门检测:现有针对联邦学习的攻击方法都是移植实现的攻击方法,未来可以针对这些方法研究联邦学习后门的检测方法
- 鲁棒性:通过对各种攻击方法原理的掌握,未来可以在提高联邦学习鲁棒性和有效对抗攻击方面做一些深入的研究工作
参考文献:
[1]王坤庆,刘婧,李晨,赵语杭,吕浩然,李鹏,刘炳莹.联邦学习安全威胁综述[J].信息安全研究,2022,8(03):223-234.
联邦学习开坑!
入门联邦学习(FL),在导师的建议下,我决定从客户端数据异构这一方向出发开展学习。这里就先开个坑,开始记录自己的学习心得,欢迎各位批评指正,共同学习。
为什么需要联邦学习
许多数据集本质上是分散的,分布在不同用户拥有的多个设备上。传统的机器学习将这些用户的数据样本聚集到一个中央存储器中,并在其上训练机器学习模型。将数据从本地设备移动到中央存储器带来了两个关键挑战。
首先,它损害了数据的隐私和安全。《General Data Protection Regulation》(GDPR)和 Health Insurance Portability and Accountability Act (HIPAA)等政策规定了相关条款,使得实现这类数据迁移并非易事。
其次,它增加了通信开销,大量数据的迁移可能带来非常昂贵的通信开销。
联邦学习是什么
联邦学习(FL)是一个框架,它允许多个用户(即客户端)协作训练一个共享全局模型,并且不需要从他们的本地设备移动数据。中央服务器协调由多个轮次组成的FL过程。在每一轮开始时,服务器将当前的全局模型发送给参与的客户端。每个客户都用本地数据对该模型进行训练,并且只将模型得参数更新发送回服务器。服务器从所有客户端收集这些更新,并对全局模型进行一次更新,从而完成一轮更新。
通过消除在单个设备上聚合所有数据的需要,联邦学习克服了上述隐私和通信方面的挑战,并允许机器学习模型在去中心化数据上进行训练。
联邦学习中的异构性问题
在现有的 FL 系统中,参与每一轮更新的客户端数量通常是固定的。最初的 FL 系统假设全部客户端都完全参与,即所有客户端都参与了每一轮的训练。而在实际应用中,受限于客户端状态、网络条件等,FL 的实施方案在每轮训练中只是随机选择一小部分客户端参与(如FedAVG)。但是,由于在 FL 环境中存在大量的异构客户端(Heterogeneous client),这种随机选择客户端的方式会加剧数据异质性带来的不利影响 。
FL 中的异构性主要包括:
(1)各个客户端设备在存储、计算和通信能力方面存在异构性;
(2) 各个客户端设备中本地数据的非独立同分布(Non-Idependently and Identically Distributed,Non-IID)所导致的数据异构性问题;
(3)各个客户端设备根据其应用场景所需要的模型异构性问题。
设备异构性
针对设备异构性的问题,一般可以通过设计新的分布式架构(如《Client-Edge-Cloud Hierarchical Federated Learning》)或新的联邦学习算法( 如《Asynchronous Federated Optimization》)来解决。这种异构性问题我想暂时放着,先搞搞Non-IID和模型异构性问题
数据异构性
首先FL中的Non-IID是指“参与训练的客户端的数据独立分布但不服从同一采样方法”,具体分为几种情况。
以下是《Advances and Open Problems in Federated Learning》对Non-IID的分类
Feature distribution skew (covariate shift): 同一类别,有不同的表现形式,如同样的数字,不同人的写法不一样。
Label distribution skew (prior probability shift): 同样的标签,有不同的表现形式,当客户被绑定到特定的地理区域时,标签的分布因客户而异,如标签同样是动物,但袋鼠大多只在澳大利亚或动物园。
Same label, different features (concept shift): 对于不同的客户,相同的标签 y 可以有不同的特征 ,如不同地区的建筑物存在很大差别。
Same features, different label (concept shift): 由于个人喜好,训练数据中相同的特征向量可以有不同的标签。例如,反映情绪或next word predictors的标签具有个人和区域差异。
Quantity skew or unbalancedness: 不同的客户的数据量不同。
不管是哪种情况的Non-IID,每个设备中的数据分布不能代表全局数据分布,即每个设备中的数据类别都是不完备的。此外,每个类别的样本数量也会影响Non-IID程度,但数量上的不同一般描述为unbalanced。
模型异构性
联邦学习最初的标准是所有客户端共享一个全局模型,但对于许多应用程序来说,数据在客户端之间的分布是Non-IID的。这种数据上的异质性使得很难训练出一个适合所有客户的全局模型。
客户端所带有数据异构性问题往往会影响全局模型的训练效率和预测精度。客户参与联邦学习主要是希望获得更好的模型,没有足够的私有数据来开发精确的本地模型的客户将从协作学习中获得性能更佳的模型。然而,对于那些拥有足够私有数据来训练精确的本地模型的客户来说,在许多任务中全局共享模型不如他们自己训练的局部模型准确,这种情况下要他们参与训练全局模型他们自然就不干了。
《Survey of Personalization Techniques for Federated Learning》调查了关于在联邦学习中为客户构建个性化模型的最新研究,这些模型预期比全局共享模型或局部个体模型工作得更好。
《Personalized federated learning for intelligent iot applications》这篇文章总结了目前已有的几种实现全局模型个性化的方法,专栏里有这篇文章的学习记录,有兴趣的旁友可以康康这里!
如何缓解异构性给FL带来的影响
这便是我接下来一段时间所要学习和研究的具体方向,后面我将从数据异构性和模型异构性入手,欢迎类似方向的旁友多多交流!
引用
[1] McMahan B, Moore E, Ramage D, et al. Communication-efficient learning of deep networks from decentralized data[C]//Artificial Intelligence and Statistics. PMLR, 2017: 1273-1282.
[2] Zhao Y, Li M, Lai L, et al. Federated learning with non-iid data[J]. arXiv preprint arXiv:1806.00582, 2018.
[3] Kairouz P, McMahan H B, Avent B, et al. Advances and open problems in federated learning[J]. arXiv preprint arXiv:1912.04977, 2019.
[4] Yang, Q. , et al. “Federated Machine Learning: Concept and Applications.” ACM Transactions on Intelligent Systems and Technology 10.2(2019):1-19.
[5] Kulkarni V , Kulkarni M , Pant A . Survey of Personalization Techniques for Federated Learning[J]. 2020.
以上是关于联邦学习(FL)安全威胁的主要内容,如果未能解决你的问题,请参考以下文章