Intriguing properties of neural networks——L-BFGS attack

2014的文章Intriguing properties of neural networks引发了关于对抗样本研究的热潮。其实对抗样本的研究很早就有了,只是当时没有得到足够的重视,最早的文章应该是下面这篇,研究的是垃圾邮件过滤问题:

N. Dalvi, P. Domingos, Mausam, S. Sanghai, D. Verma, Adversarial classification, in: Int’l Conf. Knowl. Disc. and Data Mining, 2004, pp. 99–108

但是,无论如何,本文要讲的文章为近年来的研究提供了很好的参考,因此想要了解对抗样本、对抗攻击的同学可以了解一下,最开始的对抗攻击模型是怎么建立的。废话不多说,直接上模型:
m i n   ∣ ∣ x − x ∗ ∣ ∣ 2 2 s . t .   C ( x ∗ ) = l x ∗ ∈ [ 0 , 1 ] n (1) min \ ||x-x^{*}||_2^2 \\ \tag{1} s.t. \ C(x^{*})=l \\ \qquad x^{*} \in [0, 1]^n min xx22s.t. C(x)=lx[0,1]n(1)
其中, x x x表示未经修改的一个 n n n维样本, x ∗ x^{*} x表示修改后的样本, C C C表示要攻击的分类器, l l l表示攻击者想要得分类结果。以 ∣ ∣ x − x ∗ ∣ ∣ 2 2 ||x-x^{*}||_2^2 xx22为目标函数是为了修改后的样本与原始的样本差别很小,约束条件 x ∗ ∈ [ 0 , 1 ] n x^{*} \in [0, 1]^n x[0,1]n则是为了保证修改后的样本不超出样本空间,否则就样本就没有意义了。

该优化问题中的 C ( x ∗ ) = l C(x^{*})=l C(x)=l使得该问题不太好求解,因此退而求其次,求解下面的问题:
m i n   c ⋅ ∣ ∣ x − x ∗ ∣ ∣ 2 2 + L o s s F ( x ∗ , l ) s . t .   x ∗ ∈ [ 0 , 1 ] n (2) min \ c \cdot ||x-x^{*}||_2^2 + Loss_{F}(x^{*},l) \\ \tag{2} s.t. \ x^{*} \in [0, 1]^n min cxx22+LossF(x,l)s.t. x[0,1]n(2)
其中 L o s s F Loss_{F} LossF表示被攻击分类器的损失函数,当 L o s s F Loss_{F} LossF为凸函数时,优化问题(1)和(2)等价(当然,这个情况对于神经网络而言基本上不存在)。一般我们常用的是交叉熵损失函数, L o s s F ( x ∗ , l ) = − l o g ( p l ) Loss_{F}(x^{*},l)=-log(p_l) LossF(x,l)=log(pl) p l p_l pl是分类器认为样本 x ∗ x^{*} x属于类别 l l l的概率。

惩罚系数 c c c能够控制 ∣ ∣ x − x ∗ ∣ ∣ 2 2 ||x-x^{*}||_2^2 xx22的大小,我们为 c c c设定不同的值,然后使用优化方法L-BFGS 求解优化问题(2),最终要保证 C ( x ∗ ) = l C(x^{*})=l C(x)=l的同时,使 ∣ ∣ x − x ∗ ∣ ∣ 2 2 ||x-x^{*}||_2^2 xx22尽可能小。

你可能感兴趣的:(对抗样本,深度学习,机器学习,对抗样本,对抗攻击)