当前位置:   article > 正文

对抗样本生成的PGD和C&W方法_pgd对抗样本

pgd对抗样本

参考

Projected. Gradient Algorithm

预备

先记录几个常见的单词

Convex set凸集
convergence rate收敛速率
convex凸函数
interpretation理解

L0范数是指向量中非0的元素的个数。(L0范数很难优化求解)

L1范数是指向量中各个元素绝对值之和

L2范数是指向量各元素的平方和然后求平方根

v2-b1fc63fb060cb7ccf6d040bc7e675a95_hd

PGD求解带限制的问题

就是求f(x)的最小值,但是x的取值范围有限制。

如果x没有取值的限制,那么直接用梯度下降法(GD)即可。

有了限制,就需要用到投影了,就是投影梯度下降法(PGD)

就是在求出一个x后,如果x不在取值范围内,就找P(x),就是距离x最近的区域中的点。

PGD定理

经过k次迭代后,收敛速率是和(1/k)同阶。

(证明还不太理解)

C&W算法

参考

知乎专栏

我的理解

该算法的损失函数设计,要求 x x x x ′ x' x之间的距离较小,同时 f ( ) f() f函数,保证了 x ′ x' x向t类靠近。

算法流程

迭代攻击

C&W算法与IFGSD同属于一种迭代攻击算法,它使用一个变量 w n w_n wn 辅助寻找最小扰动 r n r_n rn:

img

tanh是双曲正切函数。

定义域:R,值域:(-1,1)。y=tanh x是一个奇函数,其函数图像为过原点并且穿越Ⅰ、Ⅲ象限的严格单调递增曲线,其图像被限制在两水平渐近线y=1和y=-1之间。

基于 w n w_n wn可以写出C&W优化过程的损失函数:

img

​ 其中 f ( ) f() f() 被定义为:

img

我的理解

上面公式的 Z ( x ′ ) i Z(x')_i Z(x)i 是类别 i i i的对应概率输出,当 m a x ( Z ( x ′ ) i : i ≠ t ) max(Z(x')_i:i \neq t) max(Z(x)i:i=t) 大于 Z ( x ′ ) t Z(x')_t Z(x)t时函数得到正值,损失函数变大,不是优化的方向。当 m a x ( Z ( x ′ ) i : i ≠ t ) max(Z(x')_i:i \neq t) max(Z(x)i:i=t) 小于 Z ( x ′ ) t Z(x')_t Z(x)t时,函数得到负值时,这意味着 x ′ x' x在原神经网络系统中被认定为t类,那就是梯度下降前进的方向。

按理来说,这个 x ′ x' x会是在边界的地方,属于i类(这个次大值很有可能是原来认定的label)和t类的可能性都比较大,设置 κ \kappa κ ,如果 κ \kappa κ越大,说明越允许这个 x ′ x' x导致的i类向t类的转变。

img

​ 图四 C&W算法进行有目标攻击示意图

​ 图四展示了C&W算法按照不同的攻击目标生成的不同的对抗样本,例如第八行第四列,表示C&W算法向原本应该识别为数字8的图片添加扰动,所生成的对抗样本,被分类器判定为数字4,但是这样的扰动并没有对人眼的识别造成误导,我们还是很容易看出该图片中的数字为8。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/508485
推荐阅读
相关标签
  

闽ICP备14008679号