文章目录
- 1 概述
- 1.1 要点
- 1.2 代码
- 1.3 引用
- 2 背景
- 2.1 目标与非目标攻击
- 2.2 最小化损失
- 2.3 白盒威胁模型
- 2.4 黑盒威胁模型
- 3 简单黑盒攻击
- 3.1 算法
- 3.2 Cartesian基
- 3.3 离散余弦基
- 3.4 一般基
- 3.5 学习率 ϵ \epsilon ϵ
- 3.6 预算
1 概述
1.1 要点
题目:简单黑盒对抗攻击 (Simple black-box adversarial attacks)
策略:提出了一个在黑盒设置下构建对抗图像的简单方法:
- 从预定义的正交基中随机采样一个向量,并将其添加或减去到目标图像;
- 在多个现实任务下展示了算法的性能和效率;
- 算法非常快,且实现仅需不要20Pytorch代码;
1.2 代码
https://github.com/cg563/simple-blackbox-attack
1.3 引用
@inproceedings{Guo:2019:24842493,
author = {Guo, Chuan and Gardner, Jacob and You, Yurong and Wilson, Andrew Gordon and Weinberger, Kilian},
title = {Simple black-box adversarial attacks},
booktitle = {{ICML}},
pages = {2484--2493},
year = {2019},
url = {https://proceedings.mlr.press/v97/guo19a.html}
}
2 背景
对抗样本的研究关注于机器学习模型对细微改变的健壮性。图像分类的任务是成功预测人类所认知的图像。自然地,这样的微小改变不会影响人类的判断。基于此,可以将健壮性形式化表述为:给定一个模型 h h h和一些输入-标签对 ( x , y ) (x,y) (x,y),如果模型能正确分类 h ( x ) = y h(x)=y h(x)=y,则称 h h h是关于概率度量 d ( ⋅ , ⋅ ) d(\cdot,\cdot) d(⋅,⋅)为 ρ \rho ρ健壮的:
h ( x ′ ) = y ∀ x ′ ∈ { x ′ ∣ d ( x ′ , x ) ≤ ρ } . h(x')=y\ \forall x'\in\{ x' | d(x',x) \leq \rho \}. h(x′)=y ∀x′∈{x′∣d(x′,x)≤ρ}.度量 d d d通常被近似为 L 0 , L 2 , L ∞ L_0,L_2,L_\infty L0,L2,L∞,以度量输入 x x x和扰动 x ′ x' x′之间视觉不相似性的程度。除非特别说明,本文均采用 d ( x , x ′ ) = ∥ x − x ′ ∥ 2 d(x,x')=\| x-x' \|_2 d(x,x′)=∥x−x′∥2作为感知度量。在几何上,难以察觉的变化区域被定义为一个半径 ρ \rho ρ、以 x x x为中心的超球。对抗攻击的目标便是找到一个对抗方向 δ \delta δ,使得模型对 x ′ = x + δ x'=x+\delta x′=x+δ的决策发生改变。
2.1 目标与非目标攻击
最简单的成功攻击的条件是将原始预测改变为其它任意类别 h ( x ′ ) ≠ y h(x')\neq y h(x′)=y。这便是非目标攻击。与此相应地,目标攻击的目标是对于选择的目标类 y ′ y' y′,有 h ( x ′ ) = y ′ h(x')=y' h(x′)=y′。为了简便,余下的讨论均在目标攻击下进行。
2.2 最小化损失
由于模型输出离散决策,因此寻找对抗性扰动来改变模型首先是一个离散优化问题。然而,其经常定义一个代理损失 ℓ y ( ⋅ ) \ell_y(\cdot) ℓy(⋅)来度量模型 h h h将输入归类为 y y y的确信度。因此,对抗扰动问题可以被制定为最小化模型分类确信度的连续优化问题:
min δ ℓ y ( x + δ ) subject to ∥ δ ∥ 2 < ρ \min_\delta\ell_y(x+\delta) \text{ subject to }\| \delta \|_2<\rho δminℓy(x+δ) subject to ∥δ∥2<ρ当模型 h h h输出对应于每个类别的概率 p h ( ⋅ ∣ x ) p_h(\cdot|x) ph(⋅∣x)时,一个常用的对抗损失是类别 y y y的概率: ℓ y ( x ′ ) = p h ( y ∣ x ′ ) \ell_y(x')=p_h(y|x') ℓy(x′)=ph(y∣x′),其需要最小化正确分类的概率。对于目标攻击,一个选择是 ℓ y ′ ( x ′ ) = − p h ( y ′ ∣ x ′ ) \ell_{y'}(x')=-p_h(y'|x') ℓy′(x′)=−ph(y′∣x′),本质上是最大化误分类为 y ′ y' y′的概率。
2.3 白盒威胁模型
依赖于所在的应用领域,攻击者对于目标模型 h h h的知识有不同程度的了解。在白盒威胁模型下,分类器 h h h将提供给攻击者。在该设置下,一个有力的攻击策略是在对抗损失 ℓ y ( ⋅ ) \ell_y(\cdot) ℓy(⋅)下执行梯度下降或者近似理论。为了确保不易察觉的改变,一种方式是控制扰动的范数 ∥ δ ∥ 2 \|\delta\|_2 ∥δ∥2、早停,或者直接在损失优化过程中引入正则或者约束。
2.4 黑盒威胁模型
对于很多实际应用而言,白盒假设是不切实际的。例如,模型 h h h的展示形式是API,仅能够基于输入获取查询结果。对于攻击者而言,黑盒模型将更具有挑战性,这是因为梯度信息将不能引导对抗方向 δ \delta δ,且每次查询将消耗时间和金钱。因此,黑盒威胁设置下,附加了最小化查询次数 h h h的优化目标。修改后的优化目标为:
min δ ℓ y ( x + δ ) subject to: ∥ δ ∥ < ρ , queries ≤ B \min_\delta\ell_y(x+\delta)\text{ subject to: }\|\delta\|<\rho,\text{ queries}\leq B δminℓy(x+δ) subject to: ∥δ∥<ρ, queries≤B其中 B B B是固定代价。对于迭代优化算法而言,攻击算法需要快速收敛到可行解。
3 简单黑盒攻击
假设已有一张图像 x x x、黑盒神经网络 h h h,分类器 h ( x ) = y h(x)=y h(x)=y。我们的目标是找到一个小的扰动 δ \delta δ,其满足 h ( x + δ ) ≠ y h(x+\delta)\neq y h(x+δ)=y。尽管在黑盒设置下,梯度信息是缺失的,输出概率依然可以用于引导对抗图像的生成。
3.1 算法
算法1展示了本文输入的伪代码:对于任意方向 q \mathbf{q} q和步长大小 ϵ \epsilon ϵ, x + ϵ q x+\epsilon\mathbf{q} x+ϵq或者 x − ϵ q x-\epsilon\mathbf{q} x−ϵq可能会降低 p h ( y ∣ x ) p_h(y|x) ph(y∣x)。因此我们重复地随机选择方向 q \mathbf{q} q并添加或者减去它。为了最小化查询 h ( ⋅ ) h(\cdot) h(⋅)的次数,总是首先尝试添加 ϵ q \epsilon\mathbf{q} ϵq。如果概率 p h ( y ∣ x ) p_h(y|x) ph(y∣x)降低则采取该步骤,否则将减去 ϵ q \epsilon\mathbf{q} ϵq。
所提出的简单黑盒攻击 (SimBA
) ,使用目标图像标签对 ( x , y ) (x,y) (x,y)作为输入,以及正交候选向量 Q Q Q和步长 ϵ > 0 \epsilon>0 ϵ>0。为了简化,我们均匀随机采样 q ∈ Q \mathbf{q}\in Q q∈Q。为了保证最大的查询效率,确保了没有两个方向将会取消或者削减对方,或者不合适地放大或者增加 δ \delta δ的范数。在 T T T次更新后,扰动的范数为 ∥ δ ∥ 2 = T ϵ \|\delta\|_2=\sqrt{T}\epsilon ∥δ∥2=Tϵ。
3.2 Cartesian基
正交搜索方向 Q Q Q的一个很自然的选择是标准基 Q = I Q=I Q=I,其对应算法在像素空间的更新方向。本质上,算法在每次更新随机选择一个像素增加或者减少,这样的攻击被称为 L 0 L_0 L0攻击,其将尽可能少的改变像素。
3.3 离散余弦基
最近的工作发现低频空间中的随机噪声更有可能是对抗性的。对此,我们将探索离散余弦变换 (DCT)。DCT是一个正交变换,其用于将2D图像空间 R d × d \mathbb{R}^{d\times d} Rd×d中的信号映射到与余弦波函数的幅度相对于的频率系数。接下来,我们将DCT提取的正交频率集合称为 Q DCT Q_\text{DCT} QDCT。完整的 Q DCT Q_\text{DCT} QDCT包含 d × d d\times d d×d个频段,我们仅保留比例 r r r的低频段,以在低频空间中生成对抗扰动。
3.4 一般基
理论上,在基向量可以被高效采集的前提下,任意的正交基都能用于本文方法。这对于高分辨率数据集,例如ImageNet来说无疑是一个大的挑战,因为每一个正交基的维度是 d × d d\times d d×d。迭代采样方法,例如Gram-Schmidt不能使用,因为内存代价随采样向量的数量线性增长。因此,本文仅选用标准基向量和DCT基向量。
3.5 学习率 ϵ \epsilon ϵ
给定任意的搜索方向 Q Q Q,一些方法能够更多的降低 p h ( y ∣ x ) p_h(y|x) ph(y∣x)。此外,输出概率 p h ( y ∣ x + ϵ q ) p_h(y|x+\epsilon\mathbf{q}) ph(y∣x+ϵq)可能是非单调的。图1展示了在像素空间和DCT空间随机采样搜索方向时,输出概率随 ϵ \epsilon ϵ变化的相对情况 (ReaNet-50预测ImageNet验证集)。结果表明,概率 p h ( y ∣ x + ϵ q ) p_h(y|x+\epsilon\mathbf{q}) ph(y∣x+ϵq)的下降与 ϵ \epsilon ϵ的增长相匹配。尽管一些方向增加了正确类别的概率,该概率的预期变化为负且斜率相对较陡。这说明算法对 ϵ \epsilon ϵ的选择不敏感,其将快速降低正类别的概率。
3.6 预算
通过探索 Q Q Q的正交性,我们能够约束 δ \delta δ的范数。在每次迭代过程中,基向量将被用于加或者减,当无法改变输出概率时,则抛弃。令 α i ∈ { − ϵ , 0 , ϵ } \alpha_i\in\{-\epsilon,0,\epsilon\} αi∈{−ϵ,0,ϵ}表示在第 t t t步时的搜索方向,因此:
δ t + 1 = δ t + α t q t \delta_{t+1}=\delta_t+\alpha_t\mathbf{q}_t δt+1=δt+αtqt最终的扰动可以记作:
δ T = ∑ t = 1 T α t q t \delta_T=\sum_{t=1}^T\alpha_t\mathbf{q}_t δT=t=1∑Tαtqt因为方向 q t \mathbf{q}_t qt是正交的,对于任意的 t ≠ t ′ t\neq t' t=t′, q t ⊤ q t ′ = 0 \mathbf{q}_t^\top\mathbf{q}_{t'}=0 qt⊤qt′=0。因此,对抗扰动的 L 2 L_2 L2范数计算为:
∥ δ T ∥ 2 2 = ∥ ∑ t = 1 T α t q t ∥ 2 2 = ∑ t = 1 T ∥ α t q t ∥ 2 2 = ∑ t = 1 T α t 2 ∥ q t ∥ 2 2 ≤ T ϵ 2 \left\| \delta_T \right\|_2^2 = \left\| \sum_{t=1}^T\alpha_t\mathbf{q}_t \right\|_2^2 = \sum_{t=1}^T\left\| \alpha_t\mathbf{q}_t \right\|_2^2 = \sum_{t=1}^T\alpha_t^2\left\| \mathbf{q}_t \right\|_2^2\leq T\epsilon^2 ∥δT∥22= t=1∑Tαtqt 22=t=1∑T∥αtqt∥22=t=1∑Tαt2∥qt∥22≤Tϵ2因此,在 T T T轮迭代之后,对抗扰动的最大 L 2 L_2 L2范数为 T ϵ \sqrt{T}\epsilon Tϵ,这对于任意正交基均成立。