1、介绍
Szegedy 等人于2014年发现当前的机器学习模型包括神经网络等模型容易受到对抗样本的攻击。对抗样本(adversarial examples)在正常的训练样本上增加一些轻微的扰动,且不影响人眼的识别的情况下,能够误导分类器的测试样本。
在本文之前有很多学者认为会出现这个现象的原因可能是:
也就是很多假设推测对抗样本的产生是因为深度神经网络的极度非线性,可能还结合了监督学习中正则化(即过拟合)和模型均化不足等原因。
本文作者认为这种非线性(Nonlinear)的推测解释没有必要,高维空间的线性(Linear Behavior)足够产生对抗样本。根据这个观点,作者设计了一种新的快速产生对抗样本的方法,并且使得对抗学习(Adversarial Training)更实用。这种对抗学习方法提供除了传统正则化方法(dropout, pre-training, model averaging等)外另外一种"正则化方法"。
相关工作
于这篇文章相关的工作主要是Szegedy et al. (2014b)在2014年发表的那篇文章(【Intriguing properties of neural networks】)。Szegedy 在文章中阐述了神经网络和其它模型的一些有趣的特性:
- 使用Box-constrained L-BFGS能够找到对抗样本
- 在ImageNet这样的数据集里,对抗样本和原始样本的差别非常小,人眼不可分别
- 同样的对抗样本,会同时被不同的分类器错误分类,哪怕他们使用了不同的训练集
- 浅层-的softmax回归模型对对抗样本也很脆弱
- 在对抗样本上训练能够正则化模型,但是代价高昂,因为训练集不容易获得。
Szegedy 在文章中阐述如何找到对抗样本(使用Box-constrained L-BFGS),但是没有分析为什么能找到。本文就是想探讨对抗样本出现成的本质。
3、对抗样本的线性解释
论文介绍了对抗样本存在的线性解释。
对于计算机中通常用 8bit 来保存图片的一个像素点,因此每个像素点的精度为
1
/
255
1/255
1/255。因此,分类器无法区分扰动
η
\eta
η 小于存储精度的情况。 假定训练样本为
x
x
x ,添加扰动后的样本为
x
^
=
x
+
η
\hat{x} = x + \eta
x^=x+η ,其中
∣
∣
η
∣
∣
∞
<
ϵ
||\eta||_{\infin} < \epsilon
∣∣η∣∣∞<ϵ (关于范数可以参考这篇博客)
ϵ
\epsilon
ϵ 是一个足够小以至于被舍弃掉的值,也就是传感器或存储器的精度误差。
那么扰动样本
x
^
\hat{x}
x^于权重向量的乘积为:
w
T
x
^
=
w
x
+
w
η
\bf{w}^T \hat{x} = \bf{w} x + w \eta
wTx^=wx+wη
这里我们让
w
x
^
\bf{w} \hat{x}
wx^ 与
w
x
\bf{w} x
wx 的差异最大化,也就是让
w
η
\bf{w} \eta
wη最大化,得到
η
=
s
i
g
n
(
w
)
\eta = sign(\bf{w})
η=sign(w)。假定
w
\bf{w}
w是一个
n
×
m
n \times m
n×m的一个矩阵,那么因扰动而增加的项为
ϵ
m
n
\epsilon m n
ϵmn。虽然
ϵ
\epsilon
ϵ 很小,但是随着输入样本维度的增加,这个改变量将会变得很大。
所以对抗样本的线性解释表明,对线性模型而言,如果其输入样本有足够大的维度,那么线性模型也容易受到对抗样本的攻击。