快捷搜索:  汽车  科技

漏洞攻击心得(对抗样本攻击Box-constrained)

漏洞攻击心得(对抗样本攻击Box-constrained)神经元随机组合最大激活值的样本另外作者也对同一层的所有神经元进行随机线性组合,并找出激活值最大的样本,对应的公式如下,其中 v 是一个随机的线性组合向量。数学符号对于某一层的单个神经元 i,要找到使该神经元得到最大激活值的样本,对应的公式如下,其中 I 是图片集,ei 是神经元 i 对应的 one-hot 向量,即向量第 i 位是 1,其余是 0。单个神经元最大激活值的样本

深度学习具有很强的特征学习能力,在计算机视觉、文本、语音等任务上取得良好的效果。但是近年来有不少研究发现,在样本中添加一些不易于察觉的扰动信息,可以让神经网络做出错误的预测。这也称为对抗样本攻击 (Adversarial Attacks),本文介绍对抗攻击的首篇论文《Intriguing properties of neural networks》。

1.前言

论文《Intriguing properties of neural networks》是 2014 年发表的,论文主要提到了神经网络的两个有趣的性质:

  • 性质一:神经网络高层神经元输出的空间包含了更大量的语义信息,而不是单一的神经元。
  • 性质二:在样本上面加上轻微的扰动信息,可以让神经网络产生错误的预测结果。
2.性质一

在之前的研究工作中,普遍认为神经网络的每一个神经元代表着某一个特征,对于每一个神经元,其得到最大激活值的样本通常包含某种共性,这样实际上是独立地看待每一个神经元。但是论文《Intriguing properties of neural networks》中发现了一个有趣的现象:把某一层的神经元激活值进行随机的线性组合,找出线性组合后激活值最大的样本,这些样本之间也会存在一些共性。因此作者认为神经网络中多个神经元形成的空间包含更多的语义信息。

作者用一个实验验证了这一性质,首先定义一些数学符号:

漏洞攻击心得(对抗样本攻击Box-constrained)(1)

数学符号

对于某一层的单个神经元 i,要找到使该神经元得到最大激活值的样本,对应的公式如下,其中 I 是图片集,ei 是神经元 i 对应的 one-hot 向量,即向量第 i 位是 1,其余是 0。

漏洞攻击心得(对抗样本攻击Box-constrained)(2)

单个神经元最大激活值的样本

另外作者也对同一层的所有神经元进行随机线性组合,并找出激活值最大的样本,对应的公式如下,其中 v 是一个随机的线性组合向量。

漏洞攻击心得(对抗样本攻击Box-constrained)(3)

神经元随机组合最大激活值的样本

在 CNN 网络和 MNIST 数据集上进行实验,对于单个神经元的结果如下:

漏洞攻击心得(对抗样本攻击Box-constrained)(4)

单个神经元最大激活值的样本

对于随机组合神经元的结果如下:

漏洞攻击心得(对抗样本攻击Box-constrained)(5)

随机组合神经元最大激活值的样本

可以看到,单个神经元和随机组合神经元都可以产生类似的效果,即某种组合里激活值最大的样本之间都有一些共性,例如第二幅图片的 (a) 对应的图片大部分是顶部有直线,而底部有曲线的。因此,可以说明神经元形成的空间包含更多的语义信息 (不同的组合包含不同语义信息)。

作者在 AlexNet 上也进行了实验,结果相似,下面是 AlexNet 上单个神经元得到最大激活值的图片:

漏洞攻击心得(对抗样本攻击Box-constrained)(6)

单个神经元最大激活值的样本

AlexNet 随机组合神经元的结果:

漏洞攻击心得(对抗样本攻击Box-constrained)(7)

随机组合神经元最大激活值的样本

3.性质二: 对抗攻击

作者也发现了可以通过对抗攻击使神经网络做出错误的预测,需要在图片上加入一些微小的扰动信息得到对抗样本,这些扰动信号要足够小不容易区分。

作者提出了一种生成对抗样本的方法,称为 Box-constrained L-BFGS,令 f 表示已训练好的神经网络,r 表示扰动信号,l 表示希望模型最终预测得到的类别,则需要优化的问题如下:

漏洞攻击心得(对抗样本攻击Box-constrained)(8)

需要优化的问题

可以得到对应的目标函数:

漏洞攻击心得(对抗样本攻击Box-constrained)(9)

优化的目标函数

上面的目标函数中分为两部分,第一部分是 c|r| 这一部分限制 r 不能太大;第二部分是分类的损失函数 loss,通过优化这个 loss 可以让神经网络把样本 x r 预测为 l 类别的概率更大。

下面是一部分实验结果,左边是原始图片,中间是扰动信号 (为了更好的展示,图中扰动信号放大了 10 倍),右边是增加了扰动信号后的图片。可以看到增加扰动信号后,图片肉眼看上去没什么区别,但是模型却预测错误了。

漏洞攻击心得(对抗样本攻击Box-constrained)(10)

对抗攻击实验结果

作者在实验中还发现了对抗攻击一些有趣的方面:

  • 对于大部分网络结构和大部分样本,都可以生成一些肉眼很难区分的对抗样本迷惑神经网络。
  • 对抗样本有跨模型泛化能力:对于两个超参数不同的模型 1 和模型 2 (例如层数不同,每层神经元个数不同,正则化不同等) ,用模型 1 生成的对抗样本,有大部分也可以让模型 2 预测错误。
  • 对抗样本有跨训练集泛化能力:将训练集划分为两个不同的子集,分别训练不同的模型 1 和模型 2,用模型 1 生成的对抗样本也可以提高模型 2 预测错误的概率。
4.参考文献

Intriguing properties of neural networks

Threat of Adversarial Attacks on Deep Learning in Computer Vision: A Survey

猜您喜欢: