英文不大好,论文翻译这类博客都是机器翻译用来自己阅读的,大家有兴趣的随便看看就好


DeepFool:一种简单而准确的愚弄深度神经网络的方法

摘要

最先进的深度神经网络已经在许多图像分类任务中取得了令人印象深刻的结果。然而,这些相同的架构已经被证明是不稳定的,一些小的扰动也会对结果造成干扰。尽管这一现象很重要,但还没有提出有效的方法来精确计算最先进的深度分类器对大规模数据集上这种扰动的鲁棒性。在本文中,我们填补了这一空白,并提出了深度愚人算法来有效地计算愚弄深度网络的扰动,从而可靠地量化这些分类器的鲁棒性。大量的实验结果表明,我们的方法在计算对抗扰动和提高分类器的鲁棒性方面优于最近的方法。

1. 介绍

深度神经网络是一种强大的学习模型,在生物信息学[1,16]、语音[12,6]和计算机视觉[10,8]等许多研究领域实现了最先进的模式识别性能。虽然深度网络在分类任务中表现出了非常好的性能,但最近他们被证明对数据[18]的敌对扰动特别不稳定。事实上,数据样本非常小且常常难以察觉的扰动足以欺骗最先进的分类器,并导致错误的分类。(例如,图1)。在形式上,对于给定的分类器,我们定义一个敌对的摄动最小扰动r,足以改变估计标签ˆk (x):

其中x是一个形象和ˆk (x)估计标签。我们称之为∆(x;ˆk)的健壮性ˆk点x。分类器的鲁棒性ˆ然后定义为k

图1:对抗性扰动的一个例子。第一行:列为ˆk的原始图像x (x) =“鲸鱼”。第二行:图像x + r列为ˆk (x + r) =“海龟”和相应的扰动r DeepFool推算出来的。第三行:分类为“turtle”的图像,用快速梯度符号法[4]计算出相应的扰动。“深度傻瓜”带来的是一种更小的干扰。

其中Ex是数据分布的期望。对抗性扰动的研究有助于我们理解分类器所使用的特征。这些例子的存在似乎与学习算法的泛化能力相矛盾。虽然深度网络在图像分类任务中取得了最先进的性能,但它们对小的对抗扰动根本不鲁棒,而且往往会对看起来与干净样本相似的最小扰动数据进行错误分类。虽然对抗性攻击是特定于分类器的,但似乎对抗性扰动可以在不同的模型[18]中推广。从安全的角度来看,这实际上可能成为一个真正的担忧。

因此,有必要研究和比较不同分类器对对抗扰动的鲁棒性。它可能是更好地理解当前架构的局限性和设计方法以增加健壮性的关键。尽管最先进的分类器对于对抗不稳定性的脆弱性的重要性,没有一个有充分根据的方法被提出来计算对抗扰动,我们在本文中填补了这一空白。

我们的主要贡献如下:

•我们提出了一种简单而准确的方法来计算和比较不同分类器对对抗性扰动的鲁棒性。

•我们进行了广泛的实验比较,并表明1)我们的方法比现有方法更可靠和有效地计算对抗摄动2)使用对抗例子增强训练数据显著提高了对对抗摄动的鲁棒性。

•我们表明,使用不精确的方法来计算对抗性扰动可能会导致不同的、有时会误导的关于稳健性的结论。因此,我们的方法提供了一个更好的理解这一有趣的现象及其影响因素。

我们现在回顾一些相关的工作。对抗不稳定现象首次在[18]中被引入并研究。作者通过解决惩罚优化问题估计了对抗例子,并提出了一个分析,表明神经网络的高复杂性可能是解释大数据集规模的一个原因。存在对抗性的例子。不幸的是,在[18]中使用的优化方法是耗时的,因此不能扩展到大型数据集。

在[14]中,作者通过在Pascal3D+标注上做的实验表明,卷积网络对某些类型的变换不是不变的。最近,Tsai等人[19]提供了一个软件,可以在指定的类别中对给定的图像进行错误分类,而不必寻找最小的扰动。Nguyen等人的[13]生成了合成的无法识别的图像,并对其进行了高可信度的分类。[3]的作者还研究了如何找到愚弄图像分类器的最小几何变换的相关问题,并给出了分类器对几何变换的鲁棒性的定量度量。与我们的工作更接近的是,[4]的作者引入了“快速梯度符号”方法,它非常有效地计算给定分类器的对抗性扰动。尽管这种方法很有效,但它只提供了最优扰动向量的粗略近似。事实上,它执行一个独特的梯度步骤,这往往导致次优的解决方案。然后,为了建立更健壮的分类器来应对对抗性扰动,[5]在训练过程中引入了平滑惩罚,从而提高了分类器的鲁棒性。值得注意的是,[18]中的方法是为了产生对抗性的扰动。最后需要指出的是,对抗性不稳定现象也导致了[2]的理论工作,研究了一些分类器族的对抗性扰动问题,并给出了这些分类器鲁棒性的上界。然而,需要对更复杂的分类器的对抗性不稳定性现象有更深入的理解;本研究中提出的方法可被视为有效和准确地产生对抗性扰动的基线,以便更好地理解这一现象。

论文的其余部分组织如下。在第2节中,我们将介绍一种有效的算法来在二元分类器中寻找对抗性的扰动。第3节提供了对多类问题的扩展。在第4节中,我们提出了大量的实验来确认我们方法的准确性,并概述了它在构建更稳健的分类器方面的好处。

2. 用于二进制分类器的DeepFool

由于多分类器可以看作是二元分类器的集合,我们首先提出了二元分类器的算法。这里,我们假设ˆk (x) = (f (x)),f是一个任意纯量值图像分类函数f: R n→R f我们也表示,{x: f (x) = 0}零的水平集f。我们首先分析的是一个仿射分级机f (x) = wT x + b,然后推导出通用算法,可以应用于任何可微的二元分类器。

图2:线性二元分类器的对抗性例子。

在分类器f是仿射的情况下,很容易看出f在点x0,∆(x0;f)2,等于x0到分离的仿射超平面f = {x: wT x + b = 0}的距离(图2)。改变分类器决策的最小扰动对应于x0在f上的正交投影,由封闭形式公式给出:

假设f是一个一般的二元可微分类器,我们采用迭代方法来估计∆(x0;f)。具体来说,在每次迭代中,f围绕当前点xi线性化,线性化分类器的最小扰动计算如下

算法在第i次迭代时的扰动ri使用公式(3)中的封闭形式解计算,并更新下一个迭代xi+1。当xi+1改变分类器的符号时,算法停止。算法1总结了二分类器的深度愚弄算法,图3显示了该方法的几何图解。在实践中,上述算法通常可以收敛到一个点在零水平集f .为了达到分类边界的另一边,最后一个扰动向量rˆ乘以一个常数1 +η,与η 1。在我们的实验中,我们使用了η= 0.02。

3.DeepFool用于多类分类器

现在我们将DeepFool方法扩展到多类情况。多类分类器最常用的方案是一对一。因此,我们也在此分类方案的基础上提出了我们的方法。在这个方案中,分类器有c输出,其中c是类的数量。因此,可以将一个分类器定义为f: Rn→Rc,通过以下映射进行分类:

其中fk(x)是对应第k类的f(x)的输出。与二进制情况类似,我们首先将所提出的方法推广到线性情况,然后将其推广到其他分类器上。

图3:n = 2时算法1的图解。假设x0∈Rn。绿色平面是∇f(x0) + f(x0)T(x−x0)的图,与分类器函数(线框图)x 7→f(x)相切。橙色线表示f(x0) +∇f(x0) T (x−x0) = 0。x1是由x0通过将x0投影到Rn的橙色超平面上得到的。

3.1. Affine multiclass classifier

让f (x)是一个仿射分类器,也就是说,f (x) =给定W W > x + b和b。自映射ˆk是one-vs-all分类方案的结果,最小扰动愚弄的分类器可以改写如下

图4:对于属于第4类的x0,设Fk = {x: Fk (x)−f4(x) = 0}。这些超平面用实线表示,P的边界用绿色虚线表示。

其中wk是w的第k列,上述问题在几何上对应于计算x0到凸多面体P的补的距离,

其中x0位于p内,我们用dist(x0, Pc)表示这个距离。多面体P定义的区域空间,f输出标签ˆk (x0)。此设置如图4所示。式(6)中问题的解可以封闭形式计算为:定义ˆl (x0)的最近的超平面的边界P l(例如ˆ(x0)如图4 = 3)。正式ˆl (x0)可以计算如下

最小扰动r∗(x0)是超平面上的向量项目x0被ˆl (x0),也就是说,

换句话说,我们找到了x0在P上的最接近的投影。

3.2.一般分类器

现在我们将深度愚人算法推广到多类可微分类器的一般情况。一般非线性分类器,集P Eq。(7)描述该地区的空间分类器输出标签ˆk (x0)不再是一个多面体。根据在二进制情况下解释的迭代线性化过程,我们在迭代i中近似集合P

图5:对于属于第4类的x0,设Fk = {x: Fk (x)−f4(x) = 0}。线性化的零水平集是图中虚线表示多面体P ~ 0的边界(绿色)。

然后,我们在迭代i中近似xi和P, dist(xi, Pc)的补码之间的距离,通过dist(xi, P属于ci)。具体地说,在算法的每次迭代中,到达多面体P属于i的边界的扰动向量将被计算,并且当前的估计将被更新。该方法在算法2中给出。值得注意的是,所提出的算法以一种贪婪的方式运行,并不能保证收敛于(1)中的最优扰动。然而,我们在实践中观察到,我们的算法产生非常小的扰动,而这些扰动被认为是对最小扰动的良好逼近。

值得注意的是,DeepFool的优化策略与现有的优化技术密切相关。在二元情况下,可以看作是待定情况下[15]非线性方程组求根的牛顿迭代算法。这种算法被称为常规流法。该优化技术的收敛性分析可以在[21]中找到。在二进制情况下,我们的算法也可以看作是梯度下降算法,具有在每次迭代时自动选择的自适应步长。算法2中的线性化也类似于顺序凸规划,其中每一步的约束都是线性化的。

3.3.扩展到' p规范

在本文中,我们用' 2范数测量了扰动。然而,我们的框架并不局限于这种选择,所提出的算法可以简单地适应于任何' p范数(p∈[1,∞))的最小对抗摄动。为此,更新步骤在第10行和算法2中的11必须分别被以下更新替换

特别地,当p =∞(即上范数'∞)时,这些更新步骤变为

4. 实验结果

4.1.设置

我们现在在应用于MNIST、CIFAR-10和ImageNet图像分类数据集的深度卷积神经网络架构上测试我们的DeepFool算法。我们考虑以下深层神经网络架构:

  • MNIST:两层全连接网络,两层LeNet卷积神经网络体系结构[9]。这两个网络都是使用MatConvNet[20]包进行动量SGD训练的。
  • CIFAR-10:我们培训了一个三层的LeNet架构,以及一个网络中的网络(NIN)架构[11]。
  • ILSVRC 2012:我们使用CaffeNet[7]和google[17]预训练模型。为了评估分类器的鲁棒性采用扰动f,我们计算出平均健壮性ρˆ副词(f),定义为

在rˆ(x)是使用DeepFool,获得的估计最小扰动和D表示测试set4。我们将提出的深度愚人方法与最先进的技术进行比较,以计算[18]和[4]中的对抗扰动。[18]中的方法解决了一系列惩罚优化问题来寻找最小扰动,而[4]通过取梯度的符号来估计最小扰动。

以J为训练神经网络的代价,θ为模型参数,y为x的标号,该方法称为快速梯度符号法。在实践中,由于缺乏一般规则选择参数,我们选择最小的这样perturbation.5后90%的数据被误诊。

4.2.结果

表1中我们报告的准确性和鲁棒性平均ρˆ副词的分类器使用不同的计算方法。我们还展示了每种方法计算一个对抗样本所需的运行时间。可以看出,与使用竞争方法计算的结果相比,DeepFool估计的扰动更小(因此更接近于(1)中定义的最小扰动)。例如,使用DeepFool获得的平均扰动比使用[4]估计的低5倍。在ILSVRC2012挑战数据集上,平均扰动比快速梯度法小一个数量级。此外,还应注意到,与[18]方法相比,该方法产生的扰动向量也略小。因此,所提出的方法在检测可能欺骗神经网络的方向时更准确。因此,DeepFool可以作为一种有价值的工具来准确评估分类器的鲁棒性。在复杂性方面,所提出的方法比[18]中提出的标准方法快得多。事实上,虽然[18]方法涉及一系列目标函数的代价昂贵的最小化,但我们根据经验观察到,DeepFool会在几次迭代(即少于3次)中收敛到一个扰动向量,以愚弄分类器。因此,与最先进的方法相比,所提出的方法获得了更精确的扰动向量,同时计算效率更高。这使得它很容易被用作一种基线方法来估计在大规模数据集上的深度神经网络的鲁棒性。在此背景下,我们首次对大规模ImageNet数据集上的最先进分类器的鲁棒性进行了定量评估。可以看出,尽管它们的测试精度非常高,但这些方法对于对抗性扰动是非常不稳定的:一个比原始图像小1000的扰动就足以欺骗最先进的深度神经网络。

表1:不同分类器在不同数据集上的对抗鲁棒性。计算每种方法的一个样本所需的时间在时间列中给出。时间是在2015年年中没有CUDA支持的MacBook Pro上计算的。星号表示使用GTX 750 Ti GPU计算的值。

我们在图1中演示了由快速梯度符号和DeepFool生成的扰动图像。可以看出,该方法产生了难以察觉的对抗扰动,而快速梯度符号法输出了高范数的扰动图像。值得注意的是,当使用“∞范数”测量扰动时,上述结论保持不变:DeepFool产生的对敌扰动比其他计算对敌例子的方法更小(因此更接近最佳)。表2报告”∞鲁棒性对抗的扰动以ρˆ∞副词(f) = 1 | | Px∈D krˆ(x) k∞kxk∞,在rˆ(x) iscomputed分别使用DeepFool (p =∞,见3.3节),和快速梯度签署MNIST和CIFAR-10任务的方法。

表2:ρ值ˆ∞副词为四个不同的网络基于DeepFool最小(l∞扰动)和快速梯度方法90%的误分类标志。

在本节中,我们针对对抗示例对表1中的网络进行微调,以为MNIST和CIFAR-10任务构建更健壮的分类器。具体来说,对于每个网络,我们进行了两个实验:(i)在深度愚人对抗例子上微调网络,(ii)在快速梯度符号对抗例子上微调网络。我们通过执行5个额外的时期来微调网络,仅在受干扰的情况下学习率降低了50%训练集。对于每个实验,在所有额外的5个纪元中使用相同的训练数据。为了完整性,我们还对原始数据执行了5个额外的epoch。ρ的进化ˆ副词为不同的微调策略如图6 - 6 d,在鲁棒性ρˆ使用DeepFool难以估计的,因为这是最准确的方法,如表1所示。观察到,即使在一个额外的纪元之后,深度愚弄对抗例子的微调显著增加了网络对对抗扰动的鲁棒性。例如,网络对MNIST的鲁棒性提高了50%,NIN的鲁棒性提高了40%左右。另一方面,非常令人惊讶的是,[4]中的方法会导致对网络的敌对扰动的鲁棒性降低。我们假设这种行为是由于使用快速梯度符号法估计的扰动比最小对抗性逐扰动大得多。使用过度扰动图像对网络进行微调会降低网络对对抗扰动的鲁棒性。为了验证这一假设,我们在图7中比较了经过微调的网络的对抗鲁棒性与使用DeepFool获得的对抗例子,其中扰动的规范被故意乘以α= 1,2,3。有趣的是,我们看到,通过放大对抗性扰动的规范,微调网络的稳健性降低了。这也许可以解释为什么过分扰乱图像减少MNIST网络的健壮性:这些扰动可以真正改变数字的类,因此调整基于这些例子会导致下降的鲁棒性(有关说明,请参见图8),这让人们相信我们的假设,并进一步显示了设计的重要性,准确的方法来计算最小扰动。

(a)两种不同的LeNet方法计算的对抗性例子的微调对MNIST的影响。

(b)对两种完全连接网络的不同方法计算的对抗例子的微调对MNIST的影响。

(c)在CIFAR-10上对NIN的两种不同方法计算的对抗性例子进行微调的影响。

(d)微调对CIFAR-10上LeNet两种不同方法计算的对抗性例子的影响。

表3列出了经过微调的网络的准确性。可以看出,利用DeepFool进行微调可以提高网络的准确性。相反,使用[4]中的方法进行微调会导致我们所有实验中的测试精度下降。这证实了快速梯度符号方法输出过度扰动的图像,导致图像不太可能在测试数据中出现的解释。因此,它降低了方法的性能,因为它充当的是一个正则化器,而不是原始数据的分布。这一效果类似于几何数据增强方案,在这种方案中,原始样本的大量变换对泛化有相反的效果.

图7:基于放大的DeepFool的对抗性扰动的微调。

图8:从“1”到“7”:原始图像分类为“1”,DeepFool扰动图像用不同的α值分类为“7”。

表3:对抗性例子微调后的网络测试误差(历经五个时代)。每一列对应一种不同类型的增广扰动。

为了强调对最小扰动的正确估计的重要性,我们现在证明使用近似方法会导致关于网络的对抗鲁棒性的错误结论。我们在快速梯度符号对抗性例子上微调NIN分类器。我们遵循前面描述的过程,但这一次,我们将学习率降低了90%。我们已经使用深度愚弄和快速梯度符号方法评估了该网络在不同额外时间的对抗鲁棒性。如图9所示,红色的图夸大了训练对对抗例子的影响。此外,它还不够敏感,不足以证明在第一个额外的时期鲁棒性的丧失。这些观察证实,使用精确的工具来衡量分类器的鲁棒性对于得出关于网络鲁棒性的结论是至关重要的。

5.结论

在这项工作中,我们提出了一个算法,DeepFool,来计算对抗的例子,愚弄最先进的分类器。它基于分类器的迭代线性化,以产生足以改变分类标签的最小扰动。我们在3个数据集和8个分类器上提供了广泛的实验证据,显示了所提方法在计算对抗扰动方面优于最先进的方法,以及所提方法的效率。由于该算法对对抗扰动的准确估计,为评估分类器的鲁棒性提供了一种有效而准确的方法,并通过适当的微调来提高分类器的性能。因此,所提出的方法可以作为一种可靠的工具来准确估计最小扰动向量,并建立更鲁棒的分类器。

图9:如何通过不同的方法判断对抗的稳健性。由相应的归一化值ρˆ副词的原始网络。

本研究在CORA项目框架内得到了瑞士Hasler基金会的部分支持。

DeepFool论文阅读相关推荐

  1. [论文阅读] (04) 人工智能真的安全吗?浙大团队外滩大会分享AI对抗样本技术

    外滩大会 AI安全-智能时代的攻守道 Deep Learning Security: From the NLP Perspective 浙江大学 <秀璋带你读论文>系列主要是督促自己阅读优 ...

  2. 论文阅读工具ReadPaper

    对于搞科研的同学们来说,看论文是要经历的第一关,尤其是要读好多篇论文的时候,更是着实令人头大. 这不,最近无意中发现了个在线论文阅读网站:readpaper.com,号称「论文阅读笔记神器,硕博科研学 ...

  3. 多目标跟踪:CVPR2019论文阅读

    多目标跟踪:CVPR2019论文阅读 Robust Multi-Modality Multi-Object Tracking 论文链接:https://arxiv.org/abs/1909.03850 ...

  4. 快速人体姿态估计:CVPR2019论文阅读

    快速人体姿态估计:CVPR2019论文阅读 Fast Human Pose Estimation 论文链接: http://openaccess.thecvf.com/content_CVPR_201 ...

  5. Action4D:人群和杂物中的在线动作识别:CVPR209论文阅读

    Action4D:人群和杂物中的在线动作识别:CVPR209论文阅读 Action4D: Online Action Recognition in the Crowd and Clutter 论文链接 ...

  6. 深度学习点云语义分割:CVPR2019论文阅读

    深度学习点云语义分割:CVPR2019论文阅读 Point Cloud Oversegmentation with Graph-Structured Deep Metric Learning 摘要 本 ...

  7. 3D目标检测论文阅读多角度解析

    3D目标检测论文阅读多角度解析 一.前言 CNN(convolutional neural network)在目标检测中大放异彩,R-CNN系列,YOLO,SSD各类优秀的方法层出不穷在2D图像的目标 ...

  8. 3D目标检测论文阅读摘要

    3D目标检测论文阅读摘要 2D Object Detection 的研究已经非常成熟了,代表作品有RPN系列的FasterRCNN,One Shot系列的YOLOv1-YOLOv3,这里推荐一个2D ...

  9. 目标检测——Faster R-CNN论文阅读

    论文阅读--Faster R-CNN:Towards Real-Time Object Detection with Region Proposal Networks 文章目录 论文阅读--Faste ...

  10. 【独家】深度学习论文阅读路线图

    如果你是深度学习领域的一名新手,可能会遇到的第一个问题是"应该从哪篇论文开始读起呢?" 这里给出了深度学习论文阅读路线图! 路线图按照下面四个准则构建而成: 从提纲到细节 从经典到 ...

最新文章

  1. 机器学习(三十二)——t-SNE, Adaboost
  2. 第六天,字典Dictionary
  3. java.io.File.setExecutable(boolean executable) 方法来设置所有者对于此抽象路径名执行权限。
  4. 正态分布的前世今生(1)
  5. 基于meanshift的手势跟踪与电脑鼠标控制(手势交互系统)
  6. HDU 2577(DP)
  7. HALCON:图像采集之同步采集(synchronous)与异步采集(asynchronous)
  8. 如何使用内联onclick属性停止事件传播?
  9. RuntimeException
  10. 184.部门工资最高的员工
  11. java泛型要用t,Java泛型中T和問號(通配符)的區別
  12. 医疗行业软件开发流程-立项阶段
  13. 二级C语言试题结构,2008年4月计算机等级考试二级C语言试题结构分析
  14. 计算机excel怎么添加实线边框,excel加数据表格线-如何在excel中给数据加上实线外部及内部边框...
  15. 感性与容性负载的区别及无功功率补偿
  16. 程序员职业生涯系列:关于技术能力的思考与总结
  17. assert有什么作用
  18. 7个等级 容灾等级_详细分析容灾备份的区别以及容灾的级别分类
  19. 360 度反馈过程的目标
  20. 《Graph neural networks A review of methods and applications》翻译

热门文章

  1. 人寿保险的十大真相 保险不是什么时候都能买的
  2. win7升级win10失败开不了机
  3. 写代码遇到的灵异事件
  4. 分享一个性价比极高的代理IP
  5. Linux上 如何查找yum安装包所缺缺少的依赖包及报错处理
  6. 柴静十年成长的个人告白 - 读《看见》
  7. nvidia Compute Capability(GPU)
  8. 巅峰之战,一“码”当先!第三届“先导杯”强势来袭
  9. php返回token什么意思,token什么意思
  10. UE4母材质之法线贴图