文摘
深层神经网络方法取得了显著的进展在许多机器学习的任务。然而,最新的研究表明,他们很容易受到敌对的扰动。敌人很容易误导网络模型加上精心设计的扰动输入。敌对的例子的原因尚不清楚。因此,它是具有挑战性的构建防御机制。在本文中,我们提出一个image-to-image翻译模型以抵御敌对的例子。该模型是基于一个条件生成对抗的网络,由发电机和一个鉴别器。发电机用于消除敌对的扰动输入。鉴频器是用来区分生成的数据从原始清洁数据以改进培训流程。换句话说,我们的方法可以对抗的图像映射到干净的画面,然后美联储目标深度学习模型。 The defense mechanism is independent of the target model, and the structure of the framework is universal. A series of experiments conducted on MNIST and CIFAR10 show that the proposed method can defend against multiple types of attacks while maintaining good performance.
1。介绍
深度学习(1- - - - - -5)是一个分层的机器学习方法涉及多级非线性转换和善于挖掘文摘和分布式特性表示从原始数据。深度学习可以解决许多问题,在机器学习被认为是具有挑战性的。最近,由于大数据的出现和硬件加速,深度学习在许多机器学习领域都取得了重大进展,如计算机视觉、自然语言处理、边缘计算(6- - - - - -10),和服务计算(11- - - - - -13),和促进的大规模应用人工智能技术在现实世界中。虽然深度学习取得了巨大的成功,其性能和应用程序还质疑由于缺乏可解释性14),这意味着我们不能合理解释深度学习的决策模型。这让深上优于人工智能应用程序潜在的安全风险。
许多类型的研究表明,深度学习是由多个攻击的威胁,如会员推理攻击(15,16)和属性推理攻击(17]。深度学习的最严重的安全威胁是敌对的例子(182013年]Szegedy提出的。敌人可以增加较小的扰动输入,可以很容易地傻瓜well-performed深学习模型很少有扰动人类察觉不到的(19]。扰动输入被称为对抗的例子,他们使高信心报告目标模型不正确预测。此外,最近的研究表明,在现实世界中人工智能应用程序可以公开敌对的样品(20.),在人脸识别系统(例如,袭击21)和视觉系统在自动汽车22]。
深入研究对抗的例子,这一领域的发展主要呈现以下主要趋势。(1)越来越多的方法来构建提出了对抗的例子。根据对手的特异性,我们可以将这些攻击方法分为目标攻击和不属预定目标的攻击。有针对性的攻击,对手可以提交设计良好的目标模型,导致恶意的输入选择目标输出,如R+有限责任公司(23],JSMA [24o] [25),英国大东电报局(26]。不属预定目标的攻击,对手可以导致目标模型分类设计良好的输入类,不同于地面真理,如FGSM [27,荡妇20.],PGD [28],DeepFool [29日]。更糟糕的是,敌对的例子不断增加,鲁棒性和检测和防御是具有挑战性的。(2)构建敌对的例子是减少成本。由于可转移性(30.]的敌对的例子,对手可以成功地发动攻击,没有背景知识目标模型。(3)攻击的范围也在扩大。敌对的例子也可以成功地攻击不同的深度学习模型,如强化学习模型和递归神经网络模型。此外,攻击场景并不局限于计算机视觉。相同的安全风险存在于文本(31日和演讲32]。因此,构建一个有效的防御机制对敌对的例子在深入学习是至关重要的。
没有统一的结论在敌对的例子的原因;因此,建立一个防御机制是具有挑战性的。一般来说,有两类方法以抵御敌对的例子:(1)使深层神经网络更健壮的通过调整学习策略,如对抗训练(27,33和防守蒸馏34];(2)检测对抗的例子或消除敌对的噪音深层神经网络建立后,如盖子(35],Defense-GAN [36),磁铁(37],ComDefend [38]。在这些防御机制存在一些瓶颈。首先,一些防御机制只对特定的有效攻击。例如,防守蒸馏是基于有效的梯度的攻击,并打败了英国大东电报局的攻击。第二,一些方法需要大样本和高计算成本,限制这些防御机制的应用场景。第三,敌对的例子和清洁的例子之间的差异很小;因此,目前的检测方法很难区分它们高的信心。总之,我们希望找到一个防御机制和良好的性能在大多数攻击和低计算成本。
我们的工作已经取得了一些进展对建立一个更好的防御机制在计算机视觉与敌对的例子。敌对的例子的主要原因误导目标模型,添加噪声变化的特点,原始的输入;因此,一个直观的方法是将噪声从敌对的例子和生成的映射敌对的例子来清洁的例子。在计算机视觉中,这可以冒充“翻译”一个输入图像(对抗)到相应的输出图像(清洁)。在本文中,我们使用伊索拉提出的框架等。39作为一种防御机制。基于条件对抗网络(有条件的甘斯)40),框架由一个发电机网络翻译敌对的图像干净图像和鉴别器网络,以确保生成的图像是现实的。我们的方法可以有效地消除敌对的扰动和恢复原来的干净的图像的特点。概述的防御模型如图1。我们的方法的优点如下:(1)该方法是一种通用的防御框架。一方面,防御机制过程输入和模型独立,这意味着目标模型不需要再次培训。另一方面,网络结构的国防image-to-image框架是基于一个通用的解决方案,我们可以应用不同的场景只有几个调整的框架。(2)我们的方法是简单和容易使用,它对最常被认为是有效攻击策略,如FGSM DeepFool, JSMA和连续波。此外,这种防御机制显示特定的可转移性,这意味着防御机制建立的其他模型的具体目标模型仍然是有效的。
本文的其余部分如下。我们介绍一些相关的部分工作大约敌对的例子2。节3,我们审查必要的理论和概念和条件甘斯对抗的例子。我们给一个详细的技术开发框架的生成和国防的对抗性的例子4。部分5描述了实验结果,并部分6总结了纸。
2。相关的工作
在本节中,我们介绍的应用领域的甘斯对抗的例子:产生敌对的例子与甘斯和甘斯防守对抗的例子。
2.1。生成与甘斯对抗的例子
肖(41]提出AdvGAN产生敌对的例子。AdvGAN清廉形象作为输入的发电机和获得对抗的图像 。AdvGAN执行生成的对抗性的例子高攻击成功率半白箱和黑盒的攻击。歌等。42)设计了一个不受限制的方法产生敌对的例子和一个辅助分类器生成对抗网络(AC-GAN) [43]。不同于perturbation-based攻击,这种方法构造敌对的例子完全从头开始,而不是扰乱现有的数据点。此外,对手可以指定的风格产生敌对的例子和标签上更进一步的目标模型。赵et al。44)注意到敌对的扰动通常是不自然的,而不是语义上有意义。他提出了一个框架组成的WGAN [45)和一个逆变器。逆变器地图密度随机向量的清廉形象 。WGAN取得的发电机(微扰 )作为输入。发电机的目标是合成图像尽可能接近原始图像。该方法可以产生自然、清晰的敌对的例子躺在多方面的数据。胡和棕褐色46在传统安全场景中)集中在敌对的例子。他们提议MalGAN产生敌对的恶意软件的例子,它能够绕过基于黑盒机器学习检测模型。
2.2。国防与甘斯对抗的例子
李等人。47)引入了一个新颖的对抗训练框架命名生成敌对的教练(手枪)。该框架由发电机和一个分类器。发电机试图产生敌对的扰动,可以很容易地傻瓜分类器,分类器试图正确分类生成原始和敌对的图像。这种方法可以提高模型的鲁棒性,优于其他对抗训练方法使用一个快速梯度法。桑和Grnarova48)提出牛仔甘斯的方法来抵御对手的攻击。这项工作表明,敌对的样本之外的数据流形学习的氮化镓被训练在相同的数据集。他们使用了鉴频器(GAN)检测敌对的例子和发电机(GAN)消除敌对的扰动。Samangouei et al。36)提出了一种新的框架命名Defense-GAN,利用生成模型的表达能力(WGAN)抵御敌对的例子。Defense-GAN发现关闭输入敌对的例子和发送WGAN发生器的输入。然后,生成的图像是美联储目标模型。
3所示。背景
在本节中,我们介绍了四种方法产生对抗的例子。此外,氮化镓及其连接方法将讨论。
3.1。产生敌对的例子
产生敌对的样品的主要想法是添加适当的扰动输入样本的噪声样本尽可能类似于原始输入,但误导目标模型。我们可以简要描述这一过程:对于一个给定的输入图像 ,敌人需要找到一个最小的扰动和工艺的例子 。近年来,许多的方法产生敌对的例子。在这里,我们介绍一些最知名的攻击。
3.1.1。速度梯度信号方法(FGSM) (27]
Szegedy等人首次引入对抗的例子对深层神经网络和提出L-BFGS命名的方法(18]产生敌对的例子;然而,它是耗时的和不切实际的。2014年,格拉汉姆·古德费勒等人认为,神经网络的脆弱性的主要原因敌对的扰动是他们的线性性质。基于这个解释,他们提出了一个简单的和快速的方法来产生敌对的样本,名叫快速梯度方法(FGSM)标志。让目标模型的参数,模型的输入,相关的标签吗 ,和 是用于培训的成本函数模型。敌对的样本生成 在哪里是一个参数,确定扰动的大小。
3.1.2。DeepFool [29日]
FGSM是简单而有效的;然而,它会导致一个大的扰动程度输入。Moosavi-Dezfooli等人发现,添加噪声沿垂直方向最近的决策边界的输入可以确保添加扰动是最优的。他们使用一个迭代的方法近似考虑到的扰动是线性化在每一个迭代。计算最小扰动 在哪里是决定边界的距离。
3.1.3。Jacobian-Based显著地图攻击(JSMA) [24]
前两个攻击方法都不属预定目标的攻击。Papernot等人发现,不同的输入特性有不同程度的影响目标模型的输出。如果我们发现一些功能对应一个特定的输出目标模型,我们可以使目标模型产生一个指定类型的输出通过提高这些功能的输入。基于这个想法,他们提出了一个简单的迭代方法,有针对性的攻击命名为Jacobian-based显著地图攻击(JSMA)。首先,JSMA需要向前导数的计算,显示了每个输入特性对输出的影响。然后,它可以产生敌对的显著图和用对抗性的特点映射发现输入功能,产生最大的影响在特定的目标模型的输出。最后,一个小扰动添加到功能可以愚弄的神经网络。
3.1.4。Carlini和瓦格纳(英国大东电报局)[26]
Carlini等人提出的方法生成一个更健壮的敌对的例子,可以绕过许多先进的防御机制。这个方法将对抗的例子为一个变量,和两个条件需要满足攻击成功。首先,对抗的例子之间的差异和相应的清洁样品应尽可能小。第二,对抗的例子应该使模型分类错误率尽可能高。有三个攻击的 , ,和距离度量,我们提供一个简要的描述攻击:
的损失函数被定义为 在哪里表示将SoftMax函数,是一个常数用于控制的信心(增加,敌对的例子),变得更加强大错误分类的目标标签,常数可以选择与二进制搜索。
3.2。生成对抗的网络
生成对抗网络(甘斯)49)是一个成功的生成模型和框架被广泛使用在许多领域(50- - - - - -52]。GAN框架力量互相竞争的两个网络:一个发电机 ,它试图地图样本(噪声分布 数据分布( ),和歧视模型 ,估计来自于训练数据样本的概率而不是 。一台发电机的目标的概率最大化吗犯了一个错误。因此,这个框架通过以下玩双人游戏极大极小值函数 :
在竞争,发电机和鉴别器都将得到改善,直到鉴别器无法区分一个生成的样本数据样本。
殿下和Osindero40]介绍了条件的版本生成对抗网络(条件GAN),甘和条件可以表示为一个观察输入的映射和随机噪声来 。价值函数 在甘条件如下: 甘有条件,可以直接指定的数据生成过程和取得的结果。
4所示。该方法
在本节中,我们介绍了防御机制对敌对的详细例子。
4.1。动机
在计算机视觉中,我们可以考虑的攻击和防御敌对的例子作为image-to-image翻译过程。的对手,我们的目标是扰乱干净的图像产生敌对的图像。后卫,通常的想法是将输入图像和消除敌对的扰动恢复他们干净的图片。根据这个观点,我们可以应用一些图像转换方法来对抗领域的例子。2018年,伊索拉et al。39)提出了一个通用的方法命名pix2pix解决image-to-image翻译问题和基于条件着手。他们证明了pix2pix是有效地重建对象从边缘地图和着色图像,以及其他任务。在本文中,我们使用相同的网络框架pix2pix在敌对的例子来解决这个问题。我们使用该框架作为一种防御机制来生成一个敌对的图像映射到干净的图片。
4.2。框架
的框架pix2pix基于条件着手。这意味着这个框架的结构主要由两部分组成:一个发电机和鉴频器。如图2,我们从两个方面介绍我们的结构框架。
4.2.1。准备发电机
我们使用的结构U-Net [53作为一个发电机,增加了基于encoder-decoder跳过连接网络。虽然有一些细微的差别在表面之间的输入(敌对的图像)和输出(干净的图片),底层结构都是相同的。因此,在任务image-to-image(敌对的图像干净图像),他们两人应该共享相同的基本信息。传统的encoder-decoder发电机模型缺乏低层次的信息的传播,导致一些失真的输出。因此,我们跳过连接添加到共享基本信息的输入和输出之间基于encoder-decoder网络,可以保证转换后的图像的质量接近预期的结果。每个跳过连接简单地连接所有通道层与那些在层 ,在哪里总层数。
4.2.2。鉴频器
我们使用的结构PatchGAN [39作为一个鉴别器)。传统的氮化镓鉴别器法官输出作为一个整体,它限制了鉴频器高频结构模型。每个输入图像到PatchGAN地图 补丁通过卷积网络并试图确定是否每个 在一个图像是真实的还是假的。然后,它平均所有响应提供最终的鉴频器的输出。这样,地方特色生成的图像可以构造。
4.3。防守对抗的例子
图2说明了总体架构的防御机制对抗的例子。我们使用成对的数据 培训,每组数据包含一个清廉形象和它对抗的形象 。在这里,发电机需要对抗的例子作为输入,并生成图像 。然后, 和 发送到鉴别器吗 ,这是用来区分生成的原始数据和实例。敌对的损失可以写成:
的目标不仅是傻瓜鉴别器也被附近的地面真值输出。因此,我们添加的损失 ,这鼓励生成的实例吗接近清洁图像 :
当前的目标函数 在哪里控制的相对重要性 。
如数据所示3和4,我们的防御机制可以消除敌对的扰动的图像。然而,对于一些复杂的数据集(例如CIFAR10),虽然生成的图像是接近于原始干净的形象,他们的表现在目标模型不是令人满意的。为了解决这个问题,我们调整目标函数。我们的核心目标是消除敌对的扰动生成的图像,使预测结果接近的预测结果在目标模型。因此,我们将损失函数如下:
最终的目标函数 在哪里控制的相对重要性 。
一般来说,损失函数 和鼓励对抗的数据出现类似于干净的数据,而损失函数提高了预测精度目标模型上生成的图像。
5。实验
在本节中,我们评估防御机制对敌对的例子。所有的实验都是基于两个数据集:MNIST CIFAR10。
MNIST (MNIST用来支持这个研究的发现是公共的,和一个可以找到它http://yann.lecun.com/exdb/mnist/)是一个手写数字的数据集,由60000名训练例子和10000测试的例子。每个样本包含28×28像素,每个像素的灰度值。对于MNIST,我们两个分类器训练Anet和Bnet和使用这些分类器作为目标模型产生敌对的例子和测试我们的方法。网络结构如表所示1。预测的精度Anet和Bnet在测试集分别是98.96%和99.74%。
CIFAR10 (CIFAR10用来支持这个研究的发现是公共的,和一个可以找到它https://www.cs.toronto.edu/∼kriz / cifar.html)数据集包括60000 32×32彩色图像在10类,每个类有6000图片。10000年有50000个训练图像和测试图像。CIFAR10,我们训练两个分类器Resnet (Rnet)[54)和DenseNet (Dnet)[55),这些分类器作为目标模型产生敌对的示例和测试我们的方法。预测的准确性Rnet和Dnet在测试集上分别为93.63%和95.04%。
5.1。实现细节
我们使用了敌对的训练数据生成的例子和清洁图像的数据作为训练集训练框架。所有攻击(FGSM DeepFool JSMA, CW)中实现advbox(56),这是一个工具箱用于基准深度学习系统的漏洞来对抗的例子。我们使用提供的接口advbox生成对抗的例子。我们尝试了 MNIST, CIFAR10,对连续波的攻击。对于目标攻击JSMA和连续波,我们设定了一个随机目标为每个样品标签。我们的网络结构框架(包括发电机和鉴频器)是一样的pix2pix(39]。
5.2。防守对抗的例子
核实防御机制的有效性,我们测试了两个数据集MNIST和CIFAR10。对于每个数据集,我们训练的两个不同目标的防御框架模型。我们产生敌对的例子测试数据和选择了对抗的例子成功攻击目标模型作为测试集。因此,成员的目标模型在测试集上的预测精度为0%。在我们的防御机制,我们把敌对的发电机,以前训练的例子。然后,我们把目标模型生成的数据作为输入。数据5和6显示目标模型的预测精度在防御机制下的敌对的例子,在时代意味着训练的迭代的数量。结果表明,我们的防御框架可以很快收敛在训练。对于MNIST数据集,我们 作为最终结果,如表所示2。我们的防御机制是有效的对不同类型的攻击。它提高了目标模型的预测精度(Anet和Bnet)对抗样本从0到近98%。对于CIFAR10数据集,我们 作为最终结果,如表所示3。自从CIFAR10比MNIST数据集数据集要复杂得多,它能在去噪过程中造成一些损失。因此,防守表现CIFAR10减少MNIST相比。连续波攻击比其他更健壮的攻击,这意味着防御这些攻击是更具挑战性。我们的防御机制仍然达到良好的性能在连续波攻击。
(一)
(b)
(一)
(b)
此外,我们比较了敌对的扰动和国防损失MNIST数据集( )和CIFAR10数据集( )。一个敌对的摄动方法的平均水平规范损失之间的敌对的图像和干净的图片,和国防意味着平均损失规范损失之间生成的图像和干净的图像。因为我们的防御框架由U-Net PatchGAN,他们的结合使发电机恢复原来的干净数据的细节。如数据所示7和8,我们的防御机制可以控制防御损失在一定范围内。这样可以确保高质量生成的图像和干净的图像的相似性。
(一)
(b)
(一)
(b)
5.3。国防可转移性
在这个实验中,我们测试了我们的防御机制的可转让性。我们使用其他目标模型生成的对抗性的例子来测试框架为特定目标模型训练。数据9和10显示的可转让性的趋势预测精度在训练。类似于以前的结果,在这种情况下,我们的防御机制仍然达到一个高的收敛速度。
(一)
(b)
(一)
(b)
为MNIST数据集和CIFAR10数据集,我们分开了 和 作为最终结果,结果如表所示4和5(Anet/Bnet意味着我们使用敌对目标模型生成的例子Anet测试框架为目标模型训练Bnet)。我们防御机制的目的是恢复的原始特征对抗的例子,消除他们的敌对的扰动。因此,我们的防御框架侧重于敌对的例子,而不是目标模型。实验结果证明我们的方法是通用的。它可以转移的能力从特定的目标模型与其他模型。
5.4。比较与其他防御方法
在Defense-GAN(实验装置后36),我们比较了该方法与其他防御机制,如Defense-GAN磁铁(37),和敌对的培训27]。对抗训练使用敌对的例子作为训练集的一部分,建立一个更健壮的模型。磁铁由探测器和一个改革家。探测器是用来检测敌对的例子,改革者是用来对抗的例子转换成清洁的例子。因为Defense-GAN不是CIFAR10认为安全,我们只使用MNIST和实验 FGSM和对连续波攻击。有四个目标模型A, B, C和D,其结构是在Defense-GAN一样的设置。实验结果如表所示6。
该方法比磁铁和敌对的培训。虽然我们的方法略次于Defense-GAN在一些测试中,我们的方法也有一定的优势。(1)我们的方法比Defense-GAN简单。同时,Defense-GAN喂养的输入分类器之前需要两个步骤:最小化重建误差和生成。然而,我们的方法只需要生成。(2)我们的防御机制是一个通用的防御框架,这意味着我们可以适应不同的数据集或场景的防御机制的调整。
6。结论
在本文中,我们提出一个新颖的防御策略利用条件甘斯提高分类模型的鲁棒性与敌对的例子。我们的方法是一个普遍的防御框架。我们测试了在不同的数据集和目标模型,和实验结果证明了我们的方法有效对抗通常被认为是攻击策略。此外,最先进的防御方法相比,该方法也有许多优点。
值得一提的是,尽管我们的方法是可行的和简单的防御机制,仍存在一些实际困难在实施和部署这个方法。例如,我们的实验性能将减少复杂的数据集。在未来,我们将关注防御框架的调整网络结构提高性能复杂的场景。
数据可用性
MNIST数据集用来支持这个研究的发现是公共的和可用的http://yann.lecun.com/exdb/mnist/。CIFAR10数据集用来支持这个研究的发现是公共的和可用的https://www.cs.toronto.edu/∼kriz / cifar.html。
的利益冲突
作者宣称没有利益冲突。
确认
这项工作得到了国家自然科学基金(61572034)和安徽省科技重大项目(18030901025)。