Abstract
1、提供了协作学习的系统概述
2、简要介绍了完整性和隐私攻击
3、详细介绍了现有的完整性和隐私攻击及其防御
Introduction
举例:医学图像分类、移动键盘预测
协作学习:允许两个或多个参与者协作训练共享的全局DL模型,同时他们的训练数据集保留在本地。每个参与者用自己的训练数据训练共享模型,并与其它参与者交换和更新模型参数。
模型完整性威胁: 只有一个攻击者也可以破坏模型完整性
隐私性: 尽管不共享原始训练样本,但共享的更新是由样本生成的,间接泄露了训练数据集的信息。在训练过程中,可以从共享的梯度中捕获成员关系和无意的特征泄露。甚至可以从相应的更新中重构训练样本。
为了实现拜占庭容错协作学习:
使用统计工具在每次迭代中检查参与者的更新,并在聚合更新时放弃潜在的恶意更新。
隐私保护方面,提出搜索保护隐私的转换函数,并对该函数的训练样本进行预处理,以防御重构攻击。
协作学习系统综述
本文重点介绍的是监督学习
并行性
四种主要分区策略:数据并行、模型并行、流水线和混合并行
数据并行:将数据集中的样本划分到多个计算资源中。
模型并行:模型的不同部分在不同的计算资源中处理,每份模型都包含完整的数据。
流水线: 划分为多个任务分配到各个节点中。流水线既是网络并行处理样本的一种数据并行,也是模型分层划分的一种模型并行。
混合并行:结合了多种并行方案。
参数分布
集中式:包含中心参数服务器。SGD更新
分散式:不包含中心服务器。
模型一致性
同步
在所有节点完成对一批样本的计算后,主节点聚合参数。这种策略保证了模型的强一致性,但是提前完成的节点必须等待所有其他节点完成它们的计算,会导致计算能力的低利用率。
异步
一个节点将其更新完的结果传到中心服务器并提取中心服务器当前的参数,不等待其它节点,避免了节点的等待时间。
过时-同步
对于大规模的集群,异步策略的模型一致性会出现过时问题,即存在一些计算速度的较慢的陈旧节点,使用异步策略会聚合来自陈旧节点和较快节点的梯度,从而破坏模型一致性。因此该方法,在达到一个节点的梯度老化界限之前强制执行全局同步步骤。
联邦学习
协作学习的威胁
完整性威胁
只存在单个的恶意参与者可以影响甚至控制整个模型训练过程。
compromize vs. backdoor
compromize: 通过改变模型参数来降低或破坏训练模型的性能。在这种攻击中,协作学习的一些参与者可以进行不适当的行为,传播错误信息。
backdoor: 将预定义的恶意训练样本注入到模型中。如果输入样本中包含注入的触发器后门将被激活。由于触发器的保密性,后门模型在正常样本上正常运行,因此很难识别后门攻击。(只对具有某种特定特征的数据做出错误判断)
data poisoning vs. model poisoning
data poisoning: 插入错误数据,诱使其做出错误的预测。
model poisoning: 攻击者在训练过程中对一些参与者进行攻击并完全控制他们的行为,直接改变局部模型的更新,从而影响全局模型。
隐私威胁
由于更新是从训练样本中计算出来的,它们仍然携带敏感信息,这使得协作学习系统容易受到许多推理攻击。例如,攻击者可以在每次迭代时从交换的梯度中恢复图像的像素精度和文本的标记匹配。
成员推理攻击:给定一个数据记录和对模型或更新的黑盒访问,成员推理攻击可以确定该记录是否在模型的训练集中。
攻击者可以推断出训练集中存在特定的数据样本。
属性推理攻击:推断出参与者训练数据的属性
样本推理攻击:攻击者在训练阶段试图提取训练数据及其标签
被动攻击:攻击者仅能通过观察来推断,不能对模型进行任何的攻击
主动攻击:允许攻击者在训练过程中做任何事情,它可以对其上传的参数进行反向修改,还可以向中心服务器或者邻居节点发送假信息。
全局攻击者(参数服务器)可以在每次迭代中控制更新的参与者,以对抗方式更新全局参数再传给参与者
主动攻击者可以分为独自实施攻击的单一攻击者和共享信息的拜占庭攻击者
拜占庭式攻击者可以协作进行最优攻击。攻击者可以是有共同利益的参与者,也可以是被恶意对手控制的参与者。
完整性攻击
拜占庭攻击
数据中毒会对独立模型训练系统产生很大影响,但是在协作学习中模型中毒比数据中毒更有效。(模型中毒和数据中毒的目的都是修改局部模型的权重,模型中毒更为直接)
假设攻击者拥有访问和修改来自协作学习系统中多个参与者的更新的权限。
恶意更新即为修改后的更新
a little is enough 恶意节点给予模型参数一个轻微的扰动,最终的准确率也会下降近50%
此外,如果攻击者知道中心服务器的聚合规则,可以更为有效的进行攻击。
后门攻击
数据中毒
协作学习有针对性地攻击:参与者中的恶意节点通过发送来自错误标签数据的模型来毒害全局模型。但是这种攻击对于含有数量较多的好节点的协作学习无效。
模型中毒
受损的客户端可以更改本地的模型参数,从而影响全局模型参数。攻击者可以修改图像分类器,使其为具有某些特征的图像分到攻击者选择的标签中。
完整性防御
拜占庭防御
利用更新中的经验过滤恶意参与者(更新的平均值或者中值或者是交互的历史)
现有的拜占庭容错算法可以分为基于统计的和基于学习的
基于统计的: krum, Bulyan, 余弦相似度(删除相似度超过一定阈值的更新),Zeno, UBAR
看一下
基于学习的: 通过历史交互来识别恶意参与者。
1、采用隐马尔可夫模型来指定和学习每个参与者在训练过程中提供的模型更新的质量,可以提高检测恶意更新的准确性和效率。
隐马尔可夫模型:对于盲人来说也许不能够直接获取到天气的观察情况,但是他可以通过触摸树叶通过树叶的干燥程度判断天气的状态。于是天气就是一个隐藏的状态,树叶的干燥程度是一个可观察的状态,于是我们就有了两组状态,一个是不可观察、隐藏的状态(天气),一个是可观察的状态(树叶),我们希望设计一种算法,在不能够直接观察天气的情况下,通过树叶和马尔可夫假设来预测天气。
未观察到的随机变量g:客户端k在第t次迭代时提供良好更新的概率。
观察到的随机变量o:客户端k在第t次迭代他们的算法的结果(该结果表示客户端k是否根据给定的聚合算法进行更新)
2、 Justinian’s GAAvernor. 通过强化学习学习对拜占庭攻击的鲁棒性,它将历史交互视为经验,将干净数据集上损失的相对减少视为奖励。它将参与者的积分定义为目标策略,在获得全局更新的奖励后,通过强化学习优化当前策略。
3、使用DNN在多轮中学习良性更新的相关性,将DNN作为分类器对拜占庭式更新进行分类。
4、 观察到拜占庭更新在某些回合中具有显著偏差,将动量引入到好节点更新的计算中,并使用简单的迭代剪辑来聚合更新。
后门防御
数据检查:数据检测方法主要是通过异常检测来检查输入数据是否包含触发器,或者在推理过程中直接去除异常样本。
模型检查:看一下
依靠异常技术来检测由后门引起的模型异常行为。
除了以上的检测方法还提出了几种后门防御方法。
1、梯度规范裁剪和弱差分隐私可以在不损害模型整体性能的情况下减轻攻击
2、引入额外的训练层
3、客户端交叉验证,每个更新都要根据来自其他参与者的本地数据进行评估
隐私攻击
成员推理攻击、属性推理攻击、样本推理攻击
黑盒:攻击者只能看到模型的输出
白盒:攻击者知道模型的结构及参数
成员推理攻击
参数服务器可以随时观察单个参数的更新,可以控制所有参与者对全局参数的视图,而每个参与者都可以观察全局参数的更新,并可以控制自己的参数上传。因此,与独立学习的攻击相比,参数服务器和参与者拥有更多的每次迭代的更新信息,更容易进行成员推断攻击。
在协作学习中,相同训练数据集上的更新历史可以揭示隐私信息,提高推理攻击的准确性。主动攻击:主动对自己的数据集中的一组目标数据点进行梯度上升,从而影响到自己的模型的参数进而影响其他方的参数。这就放大了其它方针对该数据点的存在感,从而可以判断出是否是推理的成员。
属性推理攻击
利用来自服务器的聚合更新,攻击者可以逐步确定参与者训练数据的属性。利用公开可见的属性,推理出其它隐秘的属性。
基于GAN:使用GAN生成实例,这些实例在视觉上与被攻击的参与者的样本相似。
被动属性推理:假设攻击者拥有由具有相关属性的数据和不具有相关属性的数据组成的辅助数据。得到全局模型,将具有相关属性的和不具有相关属性的数据分别进行更新,可以观察出来从全局传来的模型是否具有该属性。
样本推理攻击
隐私防御
差分隐私防御
差分隐私攻击:攻击者现在知道数据集中有三个苹果三个梨,现在数据集中又增加了一条新数据,攻击者再进行查询发现有了三个苹果四个梨,那么它就会知道新插入的一条数据。
差分隐私可以理解为约束两个分布之间的差异。
解决方法:添加随机噪声。添加过多的噪声可以满足隐私要求,但是代价是模型的精度下降。因此确定最优的噪声量很重要,既能提供所需的隐私保护也能保持可接受的模型性能。
其中D2和D1仅有一条数据不同,其余数据都是相同的。M为一个随机的机制。\(\epsilon\)为隐私预算,\(\delta\)为一个实数,通常很小。隐私预算可以理解为一个阈值,每访问一次数据,阈值就会减小,当预算用完了就不能访问了。
epsilon越小的时候意味着查询一条数据的值越没办法区分,攻击者无法确定任何一条记录,从而保护了用户的隐私。因此\(\epsilon\)越小,保护强度越大;\(\epsilon\)越大,保护强度越小。
当对同一数据执行隐私预算\({\epsilon}_1\)和\({\epsilon}_2\)时,两种不同的机制合并后的隐私预算=两种机制的隐私预算的和。
由于组合特性,相应的噪声的规模也会增加。为了更好地权衡隐私性和可用性,出现了CDP和RDP
差分隐私变体
集中差分隐私CDP:使用亚高斯散度来限制隐私损失变量的均值和标准差。散度是用来衡量两个分布之间的差距的。
瑞丽差分隐私RDP:是基于瑞丽熵的差分隐私
DP-SGD
添加随机噪声的方法:目标函数和梯度上添加。
加密隐私保护
同态加密
即用户直接对密文进行算术运算 == 对明文执行相同的运算(达到可算不可见的目的)
全同态加密:允许其进行多种运算(+ - * /)
半同态加密:只支持其中一种。
安全多方计算
保证参与方获得正确计算结果的同时,无法获得计算结果之外的任何信息。
比如f(x1,x2,…,xn) -> (y1,y2,…,yn),节点xi只可以得到yi
保护隐私的协同学习方法
这些隐私防御也关注于处理训练数据或模型更新,以实验性地保证隐私信息不受推理攻击。
例:
该方法通过搜索特定的变换,将原始的本地数据样本转换为相关的样本,使样本推理攻击失效。
混合防御
混合防御
针对一种攻击的防御不能直接用于另一种攻击的防御,这些混合防御主要利用针对完整性攻击和隐私攻击的技术。
主要设计策略:是将现有的完整性防御和隐私防御合并在一起,以实现安全的协作学习系统
一些混合防御利用同态加密技术,为加密数据提供保密性的同时,也为参数服务器提供了惩罚投毒者的通道。
协同对抗训练
对抗训练可以理解为一种引入噪声的方式,可以对参数正则化,增强模型的泛化能力和鲁棒性。
其主要思想是在训练过程中利用现有的对抗例生成方法对训练数据进行扩充。因此,对抗训练的模型在推理过程中对对抗实例具有更强的鲁棒性。
提出问题
1、拜占庭攻击与防御中的非iid或噪声场景。现有拜占庭容错算法大多针对iid
2、针对认证后门攻击的防御。现有的协作学习后门防御主要集中在经验识别或清除后门。
3、差异隐私中的隐私-性能权衡。
4、属性推理攻击中的基础数据集。如何利用基数据集进行属性推理攻击?现有攻击是利用本地数据集来推断其他参与者属性,同时假设这些本地数据集与受害者参与者具有相同的分布,但是现实敌方可能不知道对方的训练数据集的分布
5、样本推理防御的性能改进。一些防御措施如添加噪声或修剪参数会损害协同训练模型的性能。
标签:Collaborative,Privacy,攻击,模型,更新,隐私,Learning,攻击者,数据 From: https://www.cnblogs.com/luuumos/p/16932496.html