联邦学习 深度学习对抗攻击

2023-11-11

 

联邦学习本身
“联邦学习” 实际上是一种加密的分布式机器学习技术,参与各方可以在不披露底层数据和底层数据的加密(混淆)形态的前提下共建模型。
如果机构之间的数据无法互通,一家企业一家机构数据量有限,或者是少数巨头公司垄断大量数据,而小公司很难获得数据,形成大大小小的“数据孤岛”。在这种没有权限获得足够多的用户数据的情况下,各个公司尤其是小公司,如何建模?

在这种情况下,“联邦学习”的概念应运而生。所谓 “联邦学习”,首先是一个“联邦”。不同于企业之前的“各自为政”,拥有独立的数据和独立的模型,联邦学习通过将企业、机构纳入“一个国家、一个联邦政府” 之下,将不同的企业看作是这个国家里的 “州”,彼此又保持一定的独立自主,在数据不共享的情况下共同建模,提升模型效果。所以“联邦学习” 实际上是一种加密的分布式机器学习技术,参与各方可以在不披露底层数据和底层数据的加密(混淆)形态的前提下共建模型。
Google 公司率先提出了基于个人终端设备的“横向联邦学习”(Horizontal Federated Learning),其核心是,手机在本地进行模型训练,然后仅将模型更新的部分加密上传到云端,并与其他用户的进行整合。目前该方法已在 Google 输入法中进行实验。一些研究者也提出了 CryptoDL 深度学习框架、可扩展的加密深度方法、针对于逻辑回归方法的隐私保护等。但是,它们或只能针对于特定模型,或无法处理不同分布数据,均存在一定的弊端。
在国内,联邦技术的研究由微众银行首席人工智能官(CAIO)杨强教授带领微众银行 AI 团队主导,并且首次提出了基于 “联邦学习” 的系统性的通用解决方案,强调在任何数据分布、任何实体上,均可以进行协同建模学习,解决个人 (to C) 和公司间 (to B) 联合建模的问题,开启了将联邦学习技术进行商用,建立联邦行业生态的探索。
对抗攻击中的一些术语:
对抗图像/对抗样本(Adversarial example/image):
对抗样本是对干净图像进行处理后的样本,被故意扰乱(如加噪声等)以达到迷惑或者愚弄机器学习技术的目的,包括深度神经网络。
对抗扰动(Adversarial perturbation):对抗扰动是添加到干净图像中的噪声,使其成为一个对抗样本。
对抗性训练(Adversarial training):对抗性训练使用除了干净的图像之外的对抗样本来训练机器学习模型。
对手(Adversary):对手通常指创建一个对抗样本的代理。但是在某些情况下,我们也称对抗样本本身为对手。
黑盒攻击(Black-box attacks):黑盒攻击是在不了解一个目标模型的具体情况下,针对该模型,生成了对抗样本(测试阶段)。在某些情况下,假设对手对模型的了解有限(例如,它的训练过程或者架构),但绝对不知道模型参数。在其他情况下,使用任何关于目标模型的信息称为半黑盒攻击。这篇文献使用前一种约定。
白盒攻击(White-box attacks):白盒攻击假设具备了目标模型的完整知识,包括其参数值、体系结构、训练方法,在某些情况下还包括训练数据。
检测器(Detector):检测器是一种(仅)检测图像是否为对抗样本的机制。
欺骗率(Fooling ratio/rate):欺骗率表示在图像被扰动后,经过训练的模型改变其预测标签的百分比。
一次性/单步方法(One-shot/one-step methods):一次性/单步法通过执行单步计算产生对抗性扰动,例如计算一次模型的损失梯度。与之相反的是迭代方法( iterative methods),它多次执行相同的计算以得到一个单独的扰动。后者的计算成本通常很高。
近似无法察觉(Quasi-imperceptible):近似无法察觉扰动从人类感知而言对图像影响很小。
修正器(Rectifier):修正器修改一个对抗样本来恢复这个目标模型的预测结果同该样本未扰动前的预测。
针对性攻击(Targeted attacks):有针对性的攻击欺骗了一个模型,使对抗性图像错误地预测成特定标签。它们与非目标攻击相反,在非目标攻击中,被预测的对抗图像的标签是无关的,只要它不是正确的标签。
威胁模型(Threat model):威胁模型指的是一种方法所考虑的潜在攻击类型,例如黑盒攻击。
可转移性(Transferability):可转移性指的是一个对抗样本具有可转移能力,即使是除了用来产生它的模型以外,它仍然有效。
通用扰动(Universal perturbation):通用扰动能够在任何图像上扰动并高概率欺骗一个给定模型。值得注意的是,通用性指的是一种与图像无关的扰动性质,区别于有很好的可转移性。
现有攻击方法(实验室)
针对分类阶段
Box-constrained L-BFGS
Szegedy等人首次证明了可以通过对图像添加小量的人类察觉不到的扰动误导神经网络做出误分类。他们首先尝试求解让神经网络做出误分类的最小扰动的方程。但由于问题的复杂度太高,他们转而求解简化后的问题,即寻找最小的损失函数添加项,使得神经网络做出误分类,这就将问题转化成了凸优化过程。下面为图例:

Fast Gradient Sign Method (FGSM)
Szegedy 等人发现可以通过对抗训练提高深度神经网络的鲁棒性,从而提升防御对抗样本攻击的能力。GoodFellow[23] 等人开发了一种能有效计算对抗扰动的方法。而求解对抗扰动的方法在原文中就被称为 FGSM。FGSM方法证实了现代深层神经网络的设计的高维线性性。
Kurakin等人提出了 FGSM 的「one-step target class」的变体。通过用识别概率最小的类别(目标类别)代替对抗扰动中的类别变量,再将原始图像减去该扰动,原始图像就变成了对抗样本,并能输出目标类别。
学者们还试验了利用不同的范式进行归一化后的结果进行生成对抗样本。
Basic & Least-Likely-Class Iterative Methods
one-step 方法通过沿一方向做一大步运算,增大分类器的损失函数而进行图像扰动,这个想法的一个直观的扩展为通过多个小步增大损失函数的变体,从而我们得到 Basic Iterative Methods(BIM)。而该方法的变体和前述方法类似,通过用识别概率最小的类别(目标类别)代替对抗扰动中的类别变量,而得到 Least-Likely-Class Iterative Methods(ILCM),由该方法生成的对抗样本已经让Inception v3模型受到了严重影响
Jacobian-based Saliency Map Attack (JSMA)
对抗攻击文献中通常使用的方法是限制扰动的l∞或l2范数的值以使对抗样本中的扰动无法被人察觉。但 JSMA提出了限制扰动的l0范数的方法来产生对抗性攻击。在物理上,这意味着目标是只修改图像中的几个像素,而不是扰乱整个图像来欺骗分类器。
算法生成所需的对抗性图像的关键可以理解如下。该算法一次修改一个干净图像的像素,并监测变化对结果分类的影响。通过使用网络层的输出的梯度来计算一个显著性图来执行监控。在这张图中,一个较大的值显示出了一个较高的可能性预测成目标类别,而非正确的类别。因此,该算法执行有针对性的欺骗。一旦计算出像素图,算法选择最有效的像素来欺骗网络并改变它。这个过程会重复,直到最大允许的像素数量在对抗性图像中被改变或者在欺骗成功。
One Pixel Attack https://arxiv.org/abs/1710.08864
这是一种极端的对抗攻击方法,仅改变图像中的一个像素值就可以实现对抗攻击。Su等人使用了差分进化算法,对每个像素进行迭代地修改生成子图像,并与母图像对比,根据选择标准保留攻击效果最好的子图像,实现对抗攻击。这种对抗攻击不需要知道网络参数或梯度的任何信息。下面为图例:

Carlini and Wagner Attacks (C&W)
Carlini 和 Wagner[36] 提出了三种对抗攻击方法,通过限制 l∞、l2和l0范数使得扰动近似无法被察觉。该算法生成的对抗扰动可以从 unsecured 的网络(没有蒸馏)迁移到 secured 的网络(蒸馏)上,从而实现黑箱攻击。
受C&W启发,有学者提出了Zeroth Order Optimization (ZOO)方法,直接估计目标模型的梯度来生成对抗样本。
DeepFool
Moosavi-Dezfooli 等人通过迭代计算的方法生成最小规范对抗扰动,该算法通过一个小的向量来扰动图像,将位于分类边界内的图像逐步推到边界外,直到出现错误分类。作者证明他们生成的扰动比 FGSM 更小,同时有相似的欺骗率。
Universal Adversarial Perturbations
诸如 FGSM 、 ILCM 、 DeepFool 等方法只能生成单张图像的对抗扰动,而 Universal Adversarial Perturbations 能生成对任何图像实现攻击的扰动,这些扰动同样对人类是几乎不可察觉的。该论文中使用的迭代方法和 DeepFool 相似,都是用对抗扰动将图像推出分类边界,不过同一个扰动针对的是所有的图像。虽然文中只针对单个网络( ResNet)进行攻击,但已证明这种扰动可以泛化到其它网络上,尤其是具有相似结构的网络。
此外,作者还扩展了一个方法doubly universal;Khrulkov等也提出了一种方法,将通用扰动作为网络的特征映射的雅可比矩阵的奇异向量,这使得仅使用少量图像就可以实现相对较高的欺骗率。另一种产生通用扰动的方法是Mopuri等的快速特性。它们的方法产生了独立于数据的通用扰动。下面为图例:

UPSET and ANGRI
Sarkar等人提出了两个黑箱攻击算法,UPSET ( Universal Perturbations for Steering to Exact Targets)和 ANGRI(Antagonistic Network for Generating Rogue Images for targeted fooling of deep neural networks)。UPSET 的能力来源于残差梯度网络,可以为特定的目标类别生成对抗扰动,使得该扰动添加到任何图像时都可以将该图像分类成目标类别。相对于 UPSET 的「图像不可察觉」扰动,ANGRI 生成的是「图像特定」的扰动。它们都在 MNIST 和 CIFAR 数据集上获得了高欺骗率。
Houdini
Houdini是一种用于欺骗基于梯度的机器学习算法的方法,通过生成特定于任务损失函数的对抗样本实现对抗攻击,即利用网络的可微损失函数的梯度信息生成对抗扰动。除了图像分类网络,该算法还可以用于欺骗语音识别网络(谷歌语音等)。
Adversarial Transformation Networks (ATNs)
Baluja 和 Fischer训练了多个前馈神经网络来生成对抗样本,可用于攻击一个或多个目标网络。经过训练的模型被称为对抗变换网络(ATNs)。该算法通过最小化一个联合损失函数来生成对抗样本,该损失函数有两个部分,第一部分使对抗样本和原始图像保持相似,第二部分使对抗样本被错误分类。
同样的研究方向, Hayex and Danezis同样用攻击神经网络训练对抗样本进行黑盒攻击,近期结果表明,虽然生成的对抗样本仍旧可察觉和原始图像的区别,但是欺骗率非常的高。
Miscellaneous Attacks 其它攻击
这一部分列举了更多其它的生成对抗样本的方法,详情请参见原文。

表 1:以上列举的各种攻击方法的属性总结:「perturbation norm」表示其限制的 p-范数(p-norm)以使对抗扰动对人类不可见或难以察觉。strength 项(*越多,对抗强度越大)基于回顾过的文献得到的印象。
除分类问题以外的对抗攻击:
Attacks on Autoencoders and Generative Models 在自编码器和生成模型上的攻击
Tabacof等研究了自动编码器的对抗性攻击,并提出了一种扭曲输入图像(使其对抗性)的技术,从而误导自动编码器重构完全不同的图像。他们的方法攻击了神经网络的内部表示,使得对抗性图像的表示与目标图像相似。然而,报道称,自动编码器似乎比典型的分类器网络更能抵御对抗性攻击。Kos等还探讨了获得深度成性模型的对抗样本的方法,例如变分自动编码器(VAE)和VAE-生成的对抗性网络(VAE- gans)。GANs,例如方法现在在计算机视觉应用程序中变得非常流行,因为它们能够学习数据分布并使用这些分布生成真实的图像。作者介绍了针对VAE和VAE- gans的三种不同类型的攻击。
Attack on Recurrent Neural Networks 在循环神经网络上的攻击
Papernot等成功地生成了递归神经网络的对抗性输入序列。Papernot等证明了为前馈神经网络计算对抗样本的算法(例如FGSM)也适用于欺骗 RNNs。长短时记忆(LSTM) RNN体系结构也成功被欺骗。
Attacks on Deep Reinforcement Learning 深度强化学习上的攻击
Lin等提出了两种不同的针对深度强化学习训练的代理的对抗性攻击。在第一种攻击中,被称为策略定时攻击,对手通过在一段中的一小部分时间步骤中攻击它来最小化对代理的奖励值。提出了一种方法来确定什么时候应该制作和应用对抗样本,从而使攻击不被发现。在第二种攻击中,被称为迷人攻击,对手通过集成生成模型和规划算法将代理引诱到指定的目标状态。生成模型用于预测代理的未来状态,而规划算法生成用于引诱它的操作。这些攻击成功地测试了由最先进的深度强化学习算法训练的代理。
Huang等证明了FGSM也可以用于在深度强化学习的背景下显著降低训练策略的性能。他们的威胁模型认为对手能够对政策的原始输入产生微小的扰动。所进行的实验表明,即使在黑箱场景中,也很容易用对抗样本欺骗将神经网络策略。关于这项工作的视频和进一步的细节可以在上找到。
Attacks on Semantic Segmentation and Object Detection 在语义切割和物体检测上的攻击
语义图像分割和对象检测属于计算机视觉的主流问题。Metzen等[67]受Moosavi-Dezfooli的启发,发现了图像近似不可察觉扰动的存在,它可以欺骗一个深层的神经网络,从而明显地破坏图像的预测分割。此外,他们还表明,可以计算出噪声向量,它可以从分割的类中移除特定的类,同时保持图像分割大部分不变(例如,从道路场景中移除行人)。
Arnab等也评估了FGSM基于语义分割的对抗性攻击,并指出对这些攻击的许多观察并没有直接转移到分割任务中。
Xie等计算了在观察下的语义分割和对象检测的对抗样本,可以将这些任务定义为在图像中对多个目标进行分类——目标是一个像素或一个可接受的分割区域,以及在检测中的 object proposal。他们的方法,称为密集对手生成,通过一组 pixels/proposal来优化一个损失函数,以产生对抗样本。所生成的样本被测试来欺骗各种基于深度学习的分割和检测方法。他们的实验评价不仅证明了目标网络的成功欺骗,还表明了所产生的扰动在不同的网络模型中得到了很好的推广。在图4中,根据该方法,展示了一个用于分割和检测的网络欺骗的典型样本。下面为图例:

现实场景下的对抗攻击
Attacks on Face Attributes 面部特征攻击
人脸图像的性别(性别分类器)被修改,而人脸匹配系统的生物识别功能保持不变,下面为图例:

Cell-phone camera attack 手机相机攻击
Kurakin等首先证明了对抗性攻击的威胁也存在于物质世界中。为了说明这一点,他们打印了对抗性的图像,并从手机摄像头拍下了快照。这些图像进行对象分类。结果显示,即使是通过相机,也有很大一部分图像被错误分类。下面为图例:

Road sign attack 路标攻击
攻击者打印一个路标扰动图像替换真正标志或者贴纸扰动,打印一些贴纸形成扰动。下面为图例:

Generic adversarial 3D objects 生成敌对3D对象
Athalye等介绍了一种构造三维物体的方法,该方法可以在各种角度和视点上欺骗神经网络。他们的(EOT)框架能够构建在整个图像/对象分布上的对抗样本。他们的端到端方法可以打印任意的对抗3D对象。下面为图例:

Cyberspace attacks 网络攻击
Papernot等在现实世界中,对网络空间中的深层神经网络分类器发起了第一次攻击。他们在合成数据上为目标黑盒分类器训练了一个替代网络,并通过MetaMind、Amazon和谷歌实例化攻击远程托管的神经网络,结果显示误分类欺骗率很高。实际上,攻击者在其威胁模型中唯一可用的信息是攻击者输入的目标网络的输出标签。
Robotic Vision & Visual QA Attacks 机器人视觉和视觉QA攻击
Melis等人证明了机器人对输入图像的对抗性操作的脆弱性。Xu等对视觉图灵测试产生了对抗性攻击,也称为视觉问题回答(VQA)。作者指出,使用深度神经网络的常用的复合和非复合VQA体系结构容易受到对抗性攻击的攻击。此外,对抗样本可以在模型之间转移。
对抗样本的存在性分析
Limits on adversarial robustness 对抗鲁棒性的限制
Fawzi等提出了一种研究分类器在敌对扰动表现出不稳定的框架。他们建立了分类器鲁棒性的基本限制,叫作数据集类别之间的可区别性测量。可区别性被定义为两个类的线性分类器之间的距离的均值和学习的非线性分类器的矩阵二阶力矩之间的距离。这一研究表明,在深层神经网络之外的分类器中也存在着对抗样本。所提出的分析追溯了对低灵敏度分类器敌对不稳定性的现象,这与当时盛行的观点并不是完全匹配的,即因为网络的高度非线性使得它们容易受到对抗样本的影响。
Space of adversarial examples 对抗样本的空间
Tabacof和Eduardo在MNIST和ImageNet数据集上生成了浅层和深层网络分类器的对抗样本,并利用不同的分布和强度的噪声来探测对抗样本的像素空间。作者通过经验证明,在像素空间的大区域中出现了对抗样本,这与文章中的类似主张是一致的。然而,与线性假设相反,他们认为和一个强大的深层分类器一样,一个弱的、浅的、更线性的分类器也同样易受对抗性的例子的影响。
Tramer等提出了一种估计对抗样本空间维数的方法。它声称,对抗样本跨越了一个连续的高维空间(维数大约为25)。由于高维度,不同分类器的子空间可以交叉,从而产生了对抗样本的可转移性。有趣的是,他们的分析表明,即使是在容易受到直接攻击的情况下,也可以防御基于转移攻击的分类器。
Boundary tilting perspective 边界倾斜视角
Tanay和Griffin提供了一种边界倾斜视角,对深度神经网络的对抗样本的存在进行了研究。他们认为,一般来说,当一个单类数据被抽样来学习和评估一个分类器时,存在一个类的子簇,当分类边界靠近这个子簇时,就存在这个类的对抗样本。他们将分类器的对抗性强度的概念形式化,并将其简化为考虑分类器边界与最近的质心分类器之间的偏差角。结果表明,分类器的对抗强度可以随决策边界的倾斜而变化。作者还认为分类器的对抗稳定性与正则化有关。在Tanay和Griffin的观点中,关于对抗样本存在的线性假设是无法令人信服的。
Prediction uncertainty and evolutionary stalling of training cause adversaries预测的不准确性和训练中进化的停滞导致了敌手的产生
Cubuk等认为,对抗样本的起源主要是由于神经网络对其预测的固有的不确定性。他们从经验上计算出不确定性的函数形式,这表明它独立于网络体系结构、训练协议和数据集。有人认为,这种形式只对网络分对数差异的统计有一定的影响。这最终导致了由对抗性攻击造成的欺骗比率,显示了对扰动大小的普遍缩放。他们研究了FGSM、ILCM和BIM的攻击,以证实他们的说法。也有人声称,基于干净图像的网络的准确性与它的对抗健壮性相关。
Rozsa等人假设,对抗扰动的存在是对训练图像的决策边界演化停滞的结果。在他们看来,个体训练样本一旦被正确分类,就停止了对模型(即神经网络)的训练损失的贡献,这最终会使他们接近决策边界。因此,通过添加小扰动就可以将这些(类似的)样本丢弃到错误的类区域。他们提出了一个批量调整的网络梯度(BANG)算法来训练一个网络,以减轻训练过程中的进化停滞。
Accuracy-adversarial robustness correlation 准确性-对抗 的鲁棒性相关
为了研究对抗样本的存在性,Rozsa等对8个深度网络分类器的准确率以及对[23], [94]中引入的3个对抗性攻击的鲁棒性之间的相关性进行了实证分析。研究的分类器包括AlexNet[9]、vgg16和VGG-19网络[163]、berkeley训练版本的GoogLeNet和普林斯顿-GoogLeNet[18]、ResNet- 52;resnet - 101;和resnet - 152[147]。在大规模ImageNet数据集[11]的帮助下,利用[23]和[94]中提出的技术,生成了对抗样本。他们的实验结果表明,具有较高分类准确率的网络通常对抗辩的例子表现出更强的鲁棒性。他们还得出结论,对抗样本能更好地转移在相似的网络拓扑之间。
More on linearity as the source 更多关于线性的来源
Kortov和hopfield在稠密联想记忆模型(DAM)模型中考察了对抗性扰动的存在[164]。与典型的现代深层神经网络相比,DAM模型采用了更高阶(二阶以上)的神经元之间的相互作用。作者已经证明,使用较小的相互作用能力的DAM模型产生的对抗样本,类似于使用一个带有ReLU激励函数[165]的深度神经网络,无法欺骗那些具有更高阶的交互作用的模型。作者提供了独立于FGSM[23]攻击的对抗样本存在的经验证据,但支持Goodfellow等人的线性假设[23]。
Existence of universal perturbations 通用扰动的存在
Moosavi-Dezfooli等[16]最初认为,通用的对抗性扰动利用分类器诱导的决策边界之间的几何相关性。它们的存在一定程度上归功于一个子空间,它包含了决定边界的法线,这样,法线也围绕着自然图像。在[70]中,他们进一步建立了他们的理论,并显示了共同方向的存在(在数据点之间共享),而分类器的决策边界可以非常积极地弯曲。他们认为,这种方向在通用扰动的存在中起着关键作用。在此基础上,提出了一种新的几何方法来有效地计算普遍的对抗性扰动。
值得注意的是,以前的Fawzi等人[69]也将分类器的鲁棒性的理论界限与决策边界的曲率联系起来。类似地,Tramer等[77]也在数据点附近保持了决策边界的曲率,负责神经网络对黑盒攻击的脆弱性。在最近的另一项工作中,Mopuri等[193]提出了一个类似于GAN的模型,以学习针对给定目标模型的通用对抗扰动的分布。学习的分布也被观察到在模型之间显示良好的可移植性。
对抗攻击防御
目前,在对抗攻击防御上存在三个主要方向:
1)在学习过程中修改训练过程或者在测试阶段修改的输入样本。
2)修改网络,比如:添加更多层/子网络、改变损失/激活函数等。
3)当分类未见过的样本时,用外部模型作为附加网络。
这些方向具体又可分为
(a)完全抵抗(Complete),即能够分对对抗样本的原始类别
(b)仅探测方法(Detection only),即只鉴别出哪些是对抗样本。具体分类如下图:


修改训练过程/ 输入数据
Brute-force adversarial training 蛮力对抗训练
对抗训练是抵御对抗样本攻击的第一道防线。通过不断输入新类型的对抗样本并执行对抗训练,从而不断提升网络的鲁棒性。为了保证有效性,该方法需要使用高强度的对抗样本,并且网络架构要有充足的表达能力。这种方法需要大量的训练数据,因而被称为蛮力对抗训练。很多文献中提到这种蛮力的对抗训练可以正则化网络以减少过拟合 [23,90],进而增强网络的抵抗能力。然而,Moosavi-Dezfooli[16] 指出,无论添加多少对抗样本,都存在新的对抗攻击样本可以再次欺骗网络。
Data compression as defense 数据压缩
注意到大多数训练图像都是 JPG 格式,Dziugaite等人使用 JPG 图像压缩的方法,减少FGSM对抗扰动对准确率的影响。实验证明该方法对部分对抗攻击算法有效,但通常仅采用压缩方法是远远不够的,并且压缩图像时同时也会降低正常分类的准确率,而微小的压缩又不能够去除对抗扰动。
Foveation based defense 基于中央凹机制的防御
Luo等人提出用中央凹(foveation)机制可以防御 L-BFGS 和 FGSM 生成的对抗扰动,其假设是基于CNN分类器训练大量数据集对于图像的缩放和转换变动是鲁棒的,而对抗模式不具备这种特性。但这种方法在更强大的攻击下还没被证明有效性。
Data randomization and other methods 数据随机化方法及其他方法
Xie等人发现对训练图像引入随机重缩放可以减弱对抗攻击的强度,其它方法还包括随机 padding、训练过程中的图像增强等。
修改网络
首先,是几种完全抵抗方法,然后再是仅探测方法。
Deep Contractive Networks 深度压缩网络
人们观察到简单地将去噪自编码器(Denoising Auto Encoders)堆叠到原来的网络上只会使其变得更加脆弱,因而 Gu 和 Rigazio[24] 引入了深度压缩网络(Deep Contractive Networks),其中使用了和压缩自编码器(Contractive Auto Encoders)类似的平滑度惩罚项。
Gradient regularization/masking 梯度正则化/ 遮罩
Ross 和 Doshi-Velez使用输入梯度正则化以提高对抗攻击鲁棒性 ,方法训练可微模型(如深度神经网络),同时惩罚导致输出相对于输入的变化程度。这样一个小的对抗扰动就不会对输出有很显著的影响。该方法和蛮力对抗训练结合有很好的效果,但计算复杂度太高,在很多场合已经弃用。
在此之前,Lyu等人也使用了惩罚网络模型在输入方面的损失函数梯度的概念,以对抗基于L-BFGS[22]和FGSM[23]的攻击。类似地,Shaham等人试图通过在每次参数更新时最小化模型在对抗性示例上的损失来改善神经网络的局部稳定性。他们最小化模型在对抗样本数据集的损失,而不是原始数据。在一项相关的工作中,Nguyen和Sinha[44]通过在网络的logit输出中添加噪声,引入了一种基于遮罩的对C&W攻击[36]的防御。
Defensive distillation 防守性蒸馏
据Hinton等[166]介绍,distillation (蒸馏)是指将复杂网络的知识迁移到简单网络上。该知识以训练数据的类概率向量形式提取,并反馈给训练原始模型。Papernot[38] 利用这种技术提出了 Defensive distillation,并证明其可以抵抗小幅度扰动的对抗攻击。防御性蒸馏也可以被看作是梯度遮罩技术的一个例子。
Biologically inspired protection 生物启发的防御方法
使用类似与生物大脑中非线性树突计算的高度非线性激活函数以防御对抗攻击。另外一项工作 Dense Associative Memory 模型也是基于相似的机制 [127]。Brendel和Bethge[187]声称,由于计算的数值限制,这些攻击在生物激发的保护上失败了[124]。稳定计算再次让攻击受保护的网络成为可能。
Parseval Networks 帕网络
这些网络通过控制网络的全局Lipschitz常数来分层正则化。网络可以被看作是函数(在每一层)的组合,通过对这些函数保持一个小的Lipschitz常数,可以对这些函数对抗小的干扰。
DeepCloak
在分类层(一般为输出层)前加一层特意为对抗样本训练的遮罩层。添加的层通过向前传递干净的和对抗性的图像对进行显式的训练,它为这些图像对编码先前层的输出特性之间的差异。它背后的理论认为添加层中最主要的权重对应于网络最敏感的特性(就对抗操纵而言)。因此,在进行分类时,这些特征被强制将添加的层的主导权重变为零。
Miscellaneous approaches 混杂方法
这章包含了多个人从多种角度对深度学习模型的调整从而使模型可以抵抗对抗性攻击。
Zantedeschi等提出使用有界的ReLU来降低图像中对抗性模式的有效性。
Jin等介绍了一种前馈CNN,它使用附加噪声来减轻对抗性示例的影响。
Sun et al提出了以统计过滤为方法使网络具有鲁棒性的超网络。
Madry et al.从鲁棒优化的角度研究对抗性防御。他们表明,与PGD对手进行对抗性训练,可以成功地抵御一系列其他对手。后来,Carlini等也证实了这一观察。
Na等采用了一种统一嵌入的网络进行分类和低水平相似度学习。该网络使用的是干净图像和相应的对抗性嵌入样本之间的距离。
施特劳斯等人研究了保护网络免受扰动的集成方法。
Kadran等修改了神经网络的输出层,以诱导对对抗攻击的鲁棒性。
Wang et al.利用网络中的非可逆数据变换,开发了抗敌对神经网络。
Lee等人开发了多种规则化网络,利用训练目标来最小化多层嵌入结果之间的差异。
Kotler和Wong提出学习基于相关性的分类器,该分类器对小对抗扰动具有鲁棒性。他们训练一个神经网络,在一个标准设置中,它可以很好地达到高精确度(90%)。
Raghunathan等研究了具有一个隐藏层的神经网络的防御问题。他们的方法在
MNIST数据集上生成一个网络和一个证书,达到一个防御目的。
Kolter和Wong和Raghunathan等是为数不多的几种可以证明的对抗敌对攻击的方法。考虑到这些方法在计算上不适用于更大的网络,唯一被广泛评估的防御是Madry等人的防御。
使用附加网络
防御通用扰动
Akhtar等人提出了一种防御框架,该框架将额外的预输入层附加到目标网络中,并训练它们对对抗样本进行校正,使分类器对同一图像的干净版本的预测与对抗样本预测相同。通过提取训练图像输入输出差异的特征,对分离的检测器进行训练。利用一个单独训练的网络加在原来的模型上,从而达到不需要调整系数而且免疫对抗样本的方法。
基于 GAN 的防御
Lee等人利用生成性对抗网络的流行框架来训练一个对FGSM类攻击健壮的网络。作者建议沿着一个生成网络直接对网络进行训练,该网络试图对该网络产生扰动。在训练过程中,分类器不断尝试对干净和扰动的图像进行正确的分类。我们将此技术归类为附加方法,因为作者建议始终以这种方式训练任何网络。在另一个基于GAN的防御中,Shen等人使用网络的生成器部分来修正一个受干扰的图像。
仅探测方法
介绍了 Feature Squeezing、MagNet 以及混杂的办法。
Feature Squeezing 方法用了两个模型来探查是不是对抗样本。后续的工作介绍了这个方法对 C&W 攻击也有能接受的抵抗力。He等也将特征压缩与中提出的集成方法相结合,以显示防御的力量并不总是通过组合它们而增加。
MagNet: Meng和Chen[45]提出了一个框架使用一个或多个外部探测器将输入图像分类为对抗性或干净图像。在培训期间,该框架的目的是学习各种清洁图像。对图片的流行(manifold)测量值来训练,从而分辨出图片是不是带噪声的。
混杂方法(Miscellaneous Methods):Liang等 [50]训练了一个模型,把所有输入图片当成带噪声的,先学习怎么去平滑图片,之后再进行分类。将图像的摄动处理为噪声,并利用标量量化和空间平滑滤波分别检测这些摄动。将分离的二进制分类器训练为使用所提议的特性的对抗样本检测器。Gebhart和Schrater[92]将神经网络计算视为图中的信息流,并提出了一种利用诱导图的持久同源性检测对抗性扰动的方法。

原文链接:https://blog.csdn.net/qq_41409438/article/details/102692563

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

联邦学习 深度学习对抗攻击 的相关文章

随机推荐

  • “GetInputName“: 不是 “Ort::Session“ 的成员

    项目场景 使用C 和ONNXruntime部署深度学习模型 问题描述 作者在尝试使用onnxruntime和C 部署深度学习模型推理的时候 按照官网的文档对于Ort Session Run的定义 如下 需要获得模型输入层与输出层的名字 st
  • 如何根据SF6气体压力温度曲线,决定不同温度下断路器的充气压力?

    如何根据SF6气体压力温度曲线 决定不同温度下断路器的充气压力 答 SF6断路器的额定压力般为0 4 0 6MPa 表压 通常这时指环境温度为20 时的压力值 温度不同时 SF6气体的压力也不同 充气或检查时必须查对SF6气体温度压力曲线
  • 基于SSM框架的《超市订单管理系统》Web项目开发(第三天)用户管理,模糊查询,精准匹配,分页显示数据

    基于SSM框架的 超市订单管理系统 Web项目开发 第三天 用户管理 模糊查询 精准匹配 分页显示数据 昨天我们完善了登录的功能模块和退出的功能模块 今天我们将实现超市订单管理系统的用户管理功能模块中的用户列表和查询用户功能 今天要完成的功
  • Basic Commands for splunk(基本命令)

    1 搜索请求的数据 Task 1 Search for the requested data 导航到Search视图 如果你在主应用程序中 从屏幕左侧的列中单击Search Reporting 你也可以通过点击屏幕顶部栏上的搜索菜单选项来访
  • The Database Migration Assistant for Unicode (DMU) Tool (文档 ID 1272374.1)

    APPLIES TO Oracle Database Enterprise Edition Version 10 2 0 4 to 12 1 0 1 Release 10 2 to 12 1 Oracle Database Standard
  • SpringMVC中GET请求类型接收参数的两种方式

    1 PathVariable 方式接收URI参数 URI如 http localhost 8080 MyApp 123 Jack GetMapping user userId userName public String printMess
  • 将来时的表示

    一般将来时表示将来某一时刻的动作或状态 或将来某一段时间内经常发生的动作或状态 常常表示将来的时间状语连用 如 tomorrow 明天 next week 下周 in the future 将来 助动词will或shall 动词原形 表示将
  • 2021年总结

    一 目标回顾 一 工作 团队建设 学会管理团队 指引 领导团队前进 不太适合管理团队 技术 前端vue 熟悉 可以独立进行开发 并未达到 后端java熟悉springboot框架 可以独立进行开发项目 并且开发好一个项目 并达到 二 自我提
  • MYSQL设置密码时显示Failed! Error: SET PASSWORD has no significance for user ‘root‘@‘localhost‘ as the authe

    用这个命令进入mysql sudo mysql 在sql命令行输入以下命令回车 你就可以把密码改成mynewpassword ALTER USER root localhost IDENTIFIED WITH mysql native pa
  • 麒麟系统虚拟机安装教程

    作者 朱金灿 来源 clever101的专栏 为什么大多数人学不会人工智能编程 gt gt gt 1 首先得安装VM Ware软件 2 打开VM Ware 点击 文件 gt 新建虚拟机 3 进入新建虚拟机向导 点击下一步 如下图 4 安装来
  • elasticsearch-查询平分排序

    排序与相关性 默认情况下 返回的结果是按照 相关性 进行排序的 最相关的文档排在最前 在本章的后面部分 我们会解释 相关性 意味着什么以及它是如何计算的 不过让我们首先看看 sort 参数以及如何使用它 排序 为了按照相关性来排序 需要将相
  • idea生产junit类

    1 定义一个类 package com spring pro jdk8 construction test import lombok AllArgsConstructor import lombok Data import lombok
  • 本地运行hexo-theme-butterfly报错重定向次数过多

    本地运行hexo theme butterfly报错重定向次数过多 Github被墙了故选择使用Gitee 顺便搭建gitee page博客 使用了一个比较简约好看纯净的主题hexo theme butterfly 在这基础上进行配置 问题
  • 笔试,计算贡献值,2022-9-2

    计算时间区间的贡献值 若同一时间有多个应用程序 均分贡献值 每个vector表示一个应用的开始 结束时间段 一个应用可能有多个时间段 考虑 1 区间重叠 均分贡献值 2 浮点数计算 用整型处理单个时间会去掉小数 累计起来就错了 includ
  • 小样本中的自监督

    自监督脉络 SimCLR SimCLRV2 BYOL Moco SimSiam 一些典型操作 原图地址 When Does Self supervision Improve Few shot Learning 2019 ECCV 关键点 通
  • 计算机视觉(四):使用K-NN分类器对CIFAR-10进行分类

    1 引言 之前我们学习了KNN分类器的原理 现在让我们将KNN分类器应用在计算机视觉中 学习如何使用这个算法来进行图片分类 2 准备工作 创建项目结构如图所示 在datasets文件中下载数据集Cifar 10 k nearest neig
  • 基于Tensorflow搭建卷积神经网络CNN(花卉识别)保姆及级教程

    项目介绍 TensorFlow2 X 搭建卷积神经网络 CNN 实现人脸识别 可以识别自己的人脸哦 搭建的卷积神经网络是类似VGG的结构 卷积层与池化层反复堆叠 然后经过全连接层 最后用softmax映射为每个类别的概率 概率最大的即为识别
  • C#使用checked检查溢出

    在进行数值类型之间的强制转换时 可能会丢失信息 比如将 int 类型转换为 short 类型时 如果 int 类型会的值大于 short 类型所能存储的最大值 那么就会发生溢出 1 使用checked检查溢出 通常情况下 发生溢出时并不会自
  • this指向

    1 在全局环境中的this window 无论是否在严格模式下 在全局执行环境中 在任何函数体外部 this 都指向全局对象 use strict console log this window console log this windo
  • 联邦学习 深度学习对抗攻击

    联邦学习本身 联邦学习 实际上是一种加密的分布式机器学习技术 参与各方可以在不披露底层数据和底层数据的加密 混淆 形态的前提下共建模型 如果机构之间的数据无法互通 一家企业一家机构数据量有限 或者是少数巨头公司垄断大量数据 而小公司很难获得