目录
-
- 1.攻击背景知识
- 2.白盒攻击技术
-
- 2.1 基于直接优化的攻击方法
-
- 2.1.1 基于 Box-constrained L-BFGS 的攻击
- 2.1.2 C&W 攻击
- 2.2 基于梯度优化的攻击方法
-
- 2.2.1 FGSM 攻击(基于梯度计算的对抗样本生成算法)
- 2.2.2 I-FGSM 攻击(迭代)FGSM算法)
- 2.2.3 PGD攻击(迭代) FGSM 算法,与 I-FGSM 攻击类似)
- 2.2.4 MI-FGSM 攻击(基于动量迭代生成对抗样本 MI-FGSM 算法)
- 2.3 基于决策边界分析的攻击方法
-
- 2.3.1 DeepFool 攻击(对单个输入图像产生对抗扰动 DeepFool 攻击算法)
- 2.3.2 UAPs 攻击(针对目标模型和整个数据集成对抗干扰 UAPs攻击算法)
- 2.4 基于生成神经网络的攻击方法
-
- 2.4.1 ATN 攻击(使用生成神经网络生成对抗样本的攻击)
- 2.4.2 UAN 攻击(基于神经网络生成通用对抗扰动的攻击)
- 2.4.3 AdvGAN 攻击
- 2.5 其它攻击方法
-
- 2.5.1 JSMA 攻击
- 2.5.2 单像素攻击
- 2.5.3 stAdv 攻击
- 2.5.4 BPDA 攻击
- 对抗攻击算法总结
1.攻击背景知识
在图像分类任务中,给出深度学习模型 y = f ( x ) y=f(x) y=f(x), x ∈ R m x \in \mathbf{R}^{\mathrm{m}} x∈Rm 输入模型, y ∈ Y y \in \ Y y∈Y针对当前输入 x x x的模型输 出。模型 f ( . ) f (.) f(.) 一般还包含一组训练好的权重参数 θ \theta θ ,为方便说明,对模型描述时省略该参数。描述为在针对目标模型 f ( . ) f (.) f(.) 的输入 x x x上寻找一个小的噪声数据 r r r ,当 r r r叠加在 x x x上输入目标模型后,使得 f ( x + r ) ≠ f ( x ) f(x+r) \neq f(x) f(x+r)=f(x);在目标攻击中,使得 f ( x + r ) = y t f(x+r)=y^t f(x+r)=yt, y t y^t yt为需要让模型输出的目标类目。
为了用 l 2 l_2 l2 范数来约束扰动大小时,在目标攻击中,对抗样本的生成问题描述为如下的优化形式: Minimize ∥ r ∥ 2 s.t. 1. f ( x + r ) = y t 2. x + r ∈ R m \text { Minimize }\|r\|_{2} \\ \text { s.t. 1. } f(x+r)=y^{\mathrm{t}} \\ \text { 2. } x+r \in \mathbf{R}^{\mathrm{m}} Minimize ∥r∥2 s.t. 1. f(x+r)=yt 2. x+r∈Rm y t y^t yt是要攻击的目标类别, x x x是原始输入样本, r r r表示扰动噪声, x + r x+r x+r表示得到的对抗样本,后文也用 x A x^A xA表示.
2.白盒攻击技术
2.1 基于直接优化得攻击方法
这类攻击方法通过算法对目标函数直接优化生成的对抗扰动相对较小,但存在优化时间长, 算法需花费大量时间寻找合适超参数的问题。
2.1.1 基于 Box-constrained L-BFGS 的攻击
利用拉格朗日松弛法将其中的 f ( x + r ) = y t f(x+r)=y^{\mathrm{t}} f(x+r)=yt限制条件简化为 loss f ( x + r , y t ) \operatorname{loss}_{f}\left(x+r, y^{\mathrm{t}}\right) lossf(x+r,yt)进行优化, loss f \operatorname{loss}_{f} lossf表示交叉熵损失函数。最终得到的优化目标如下: M i n i m i z e c ∥ r ∥ 2 + loss f ( x + r , y t ) s.t. x + r ∈ [ 0 , 1 ] m Minimize c\|r\|_{2}+\operatorname{loss}_{f}\left(x+r, y^{\mathrm{t}}\right)\\ \text { s.t. } x+r \in[0,1]^{\mathrm{m}} Minimizec∥r∥2+lossf(x+r,yt) s.t. x+r∈[0,1]m 其中,输入图像被归一化在[0,1] 之间,以满足凸优化方法中的箱型约束条件,使得上述目标可以利用 L-BFGS 算法进行求解。
该算法为目标攻击算法,使用该算法求 解的思路是先固定超参数 c 来优化当前参数值下的最优解, 再通过对 c 进行线性搜索即可找到满足 f ( x + r ) = y t f(x+r)=y^{\mathrm{t}} f(x+r)=yt 条件的 最优对抗扰动 r r r ,最终得到的对抗样本为 x + r x+r x+r。
是最早被设计的对抗攻击算法,该算法首次将生成对抗样本的过程抽象为一个凸优化的问题处理,是重要的基于优化方法的对抗攻击算法。
2.1.2 C&W 攻击
该攻击算法可以使 用 l 0 l_0 l0, l 2 l_2 l2, l ∞ l_\infty l∞范数分别对扰动进行限制生成对抗样本,是目前较为强大的目标攻击算法之一。属于直接优化的攻击算法,是基于基于 Box-constrained L-BFGS 算法的改进版。
-
C&W 攻击算法考虑了攻击目标类和其他类别之间的关系,选择了更好的损失函数: loss f , t ( x A ) = max ( max { Z ( x A ) i : i ≠ t } − Z ( x A ) t , − k ) \operatorname{loss}_{f, t}\left(x^{\mathrm{A}}\right)= \max \left(\max \left\{Z\left(x^{\mathrm{A}}\right)_{i}: i \neq t\right\}-Z\left(x^{\mathrm{A}}\right)_{t},-k\right) lossf,t(xA)=max(max{ Z(xA)i:i=t}−Z(xA)t,−k) 其中, Z ( x A ) = Logits ( x A ) Z\left(x^{\mathrm{A}}\right)=\operatorname{Logits}\left(x^{\mathrm{A}}\right) Z(xA)=Logits(xA)表示目标网络 Softmax 前一 层的输出,i 表示标签类别,t 表示目标攻击的标签类,k 表示对抗样本的攻击成功率, k 越大,生成的对抗样本的攻击成功率越高。
-
去除了上式中的 Box-constrained 限定条件,使该优化问题转化为无约束的凸优化问题,方便利用梯度下降法,动量梯度下降法和 Adam等算法求解。为实现该目的,提供两种有效的方法:
-
采用投影梯度下降法的思路将每次迭代过程中得到的 x + r x+r x+r裁剪在 [ 0 , 1 ] m [0,1]^{\mathrm{m}} [0,1]m范围内,以去除 x + r x+r x+r的区间约束条件。
-
优点:生成的对抗样本攻击能力较强
-
缺点:引入变量进行优化的方法生成的对抗扰动较小,对x+r行裁剪时会带来梯度信息的损失
-
-
引入新的变量 ω \omega ω ,令 ω ∈ [ − ∞ , + ∞ ] \omega \in[-\infty,+\infty] ω∈[−∞,+∞] 区间,构造一个映射函数将 ω \omega ω 从 [ − ∞ , + ∞ ] [-\infty,+\infty] [−∞,+∞]区间映射到 [0,1] 区 间 , 通过优化 ω \omega ω 去 掉 方 法 ① 中 由 x + r ∈ [ 0 , 1 ] m x+r \in[0,1]^{\mathrm{m}} x+r∈[0,1]m 条件引起的优化误差。
-
-
在优化算法的选择上,梯度下降,动量梯度下降和 Adam 等优化方法都可以生成相同质量的对抗样本,但 Adam 算法的收敛速度要比其他两种快。
能够生成对蒸馏防御网络具有较好攻击能力的对抗样本。C&W 攻击算法生成的对抗样本针对蒸馏防御的模型攻击能力很好,是目前较为强大的白盒攻击算法,也是用于评估模型鲁棒性的主要测试算法之一。
2.2 基于梯度优化的攻击方法
在模型损失函数变化的方向上对输入样本进行扰动,来使模型误分类输入样本或使模型分类输样本到指定的不正确目标类别上。
这类攻击方法的优点是方法实现简单,且白盒对抗攻击成功率较高。是目前一种主要的对抗攻击技术。
2.2.1 FGSM 攻击(基于一步梯度计算的对抗样本生成算法)
使对抗扰动的变化量与模型损失梯度变化的方向保持一致。具体来说,在无目标攻击中,使模型损失函数关于输入 x 的梯度在上升的方向上变化扰动达到让模型误分类的效果。
FGSM 算法描述为: x A = x + α sign ( ∇ x J ( θ , x , y ) ) x^{\mathrm{A}}=x+\alpha \operatorname{sign}\left(\nabla_{x} J(\theta, x, y)\right) xA=x+αsign(∇xJ(θ,x,y)) 其中为 α \alpha α超参数,表示为一步梯度的步长, sign(.) 为符 号函数,故该方法生成的扰动为在 l ∞ l_{\infty} l∞范数约束下的对抗扰动。
生成的对抗样本具有较好的迁移攻击能力,且这项工作意义深远,后来出现的基于梯度优化的大部分攻击算法是FGSM 算法的变种。
由于只计算一次梯度,其攻击能力有限,并且该方法成功应用的前提条件是损失函数的梯度变化方向在局部区间内是线性的。在非线性的优化区间内,沿着梯度变化方向进行大步长优化生成的对抗样本并不能保证攻击成功。
2.2.2 I-FGSM 攻击(迭代的FGSM算法)
提出迭代的FGSM算法,通过把优化区间变小来使线性假设近似成立。
I-FGSM 算法的无目标攻击描述为: x 0 A = x , x i + 1 A = Clip ( x i A + α sign ( ∇ x J ( θ , x i A , y ) ) ) x_{0}^{\mathrm{A}}=x, x_{i+1}^{\mathrm{A}}=\operatorname{Clip}\left(x_{i}^{\mathrm{A}}+\alpha \operatorname{sign}\left(\nabla_{x} J\left(\theta, x_{i}^{\mathrm{A}}, y\right)\right)\right) x0A=x,xi+1A=Clip(xiA+αsign