1 引言
在深度学习中,黑盒攻击是对抗攻击中最难的一种攻击方式,它不像白盒攻击可以获取到足够的模型和数据集的知识,它只能依靠简单的输入和输出映射信息来对未知模型进行攻击,所以,这就导致了黑盒攻击攻击成功率较低和查询次数较高的问题。在该论文中,作者提出了一种混合的攻击方式,将元对抗扰动作为初始化并利用模拟梯度进行黑盒攻击。元对抗扰动的一个优势在于有较好的迁移性和泛化性,作者利用元对抗扰动对去促进黑盒攻击方法的攻击效率。实验结果表明,论文中的方法在不仅可以提高攻击成功率,也可以有效地降低查询次数。
论文链接:https://arxiv.org/abs/2203.14607
2 相关工作
黑盒攻击目前存在三种攻击方式,分别是基于迁移的方式,基于查询的方式和混合的方式。
- 基于迁移的方式:如果一个对抗样本可以攻击当前的深度模型(该对抗样本可能是在白盒设置下产生的),那么它也有一定的概率可以成功攻击其它模型,但这种攻击方式的缺点在于攻击成功率较低。
- 基于查询的攻击:这种攻击方式主要是通过查询结果的差异进而去估计模型的梯度。该攻击方式的一个主要的缺点在于如果想要达到一个较高的准确率则需要较高的查询次数。
- 基于混合的方式:该攻击是将迁移攻击和查询攻击整合到一起,这样既可以考虑到到迁移的先验知识又能够利用到针对特定模型的模拟的梯度信息,该方法弥补了迁移攻击低准确率和查询攻击高访问代价的不足。
3 论文方法
该论文的方法是属于混合攻击的方式, 但又与其它混合攻击将代理模型的梯度作为先验知识不同,该论文的方法目的是根据对抗样本的可迁移性和自适应性训练出一个更普适的对抗扰动作为扰动的初始状态值。在黑盒条件下,通过元学习的方式生成元对抗扰动,该扰动可以针对不同的图片进行更高效的对抗攻击。
3.1 元对抗扰动训练
考虑一个黑盒模型
f
θ
f_\theta
fθ和已知结构和参数的代理模型
f
i
,
(
i
=
1
,
2
,
⋯
,
n
)
f_i,(i=1,2,\cdots,n)
fi,(i=1,2,⋯,n)。一个随机初始化的元对抗扰动被记作
v
v
v,
L
L
L表示损失函数。
D
\mathbb{D}
D表示用于生成元对抗扰动的训练集。当给定一批新的数据点
B
=
{
x
i
,
y
i
}
∼
D
\mathbb{B}=\{x^i,y^i\}\sim\mathbb{D}
B={xi,yi}∼D时,元对抗扰动
v
v
v会被更新为
v
′
v^{\prime}
v′。作者的目的是找到一个通用的元对抗扰动
v
v
v,对任何新的数据点它都是一个好的初始化对抗扰动值。对于有目标攻击中,一个扰动
v
v
v满足如下公式
f
(
x
+
v
)
=
t
,
f
o
r
m
o
s
t
x
∼
μ
f(x+v)=t, \quad \mathrm{for \text{ } most\text{ }}x \sim \mu
f(x+v)=t,for most x∼μ其中
t
t
t是目标标签,
μ
\mu
μ是数据分布。元对抗扰动屏蔽样本特性,可以普适性攻击的特点对于黑盒攻击来说,既可以大大减少查询访问黑盒模型的次数,又能提高对抗攻击的效率。
元对抗扰动主要通过使用梯度迭代法进行训练。因为黑盒攻击很难直接获取到目标模型的梯度,所以论文作者利用元学习在代理模型中进行训练,然后利用对抗样本的可迁移性对目标黑盒模型进行攻击。论文中采用多步迭代法在新数据点上更新元对抗扰动,具体的公式如下所示
v
′
←
v
−
α
⋅
1
n
∑
i
=
1
n
∇
v
L
(
f
i
,
B
+
v
,
t
)
v^{\prime}\leftarrow v - \alpha \cdot \frac{1}{n}\sum\limits_{i=1}^n\nabla_v L(f_i,\mathbb{B}+v,t)
v′←v−α⋅n1i=1∑n∇vL(fi,B+v,t)其中
α
\alpha
α是超参数,通常会被设置的很小。
v
′
v^{\prime}
v′是更新后的对抗扰动。对应的优化目标如下所示:
min
v
∑
B
′
∼
D
L
(
f
θ
,
B
′
+
v
′
,
t
)
\min\limits_{v}\sum\limits_{\mathbb{B}^{\prime}\sim\mathbb{D}}L(f_\theta,\mathbb{B}^{\prime}+v^{\prime},t)
vminB′∼D∑L(fθ,B′+v′,t)对于以上优化目标,作者主要目的是在数据
B
\mathbb{B}
B中找到一个更好的适应扰动
v
′
v^{\prime}
v′,然后在新的数据点迭代优化元对抗扰动
v
′
v^{\prime}
v′,进而可以获得一个最大有效的对抗干扰
v
v
v,它可以以较高的成功率执行攻击,并获得更好的适应性。随机梯度下降法主要用于更新元对抗扰动
v
v
v,具体的公式如下所示
v
←
v
−
β
⋅
1
n
∑
i
=
1
n
∇
v
′
L
(
f
i
,
B
′
+
v
′
,
t
)
v \leftarrow v - \beta\cdot \frac{1}{n}\sum\limits_{i=1}^n\nabla_{v^{\prime}}L(f_i,\mathbb{B}^{\prime}+v^{\prime},t)
v←v−β⋅n1i=1∑n∇v′L(fi,B′+v′,t)其中
β
\beta
β表示的是学习率。元对抗扰动的算法流程图如下所示
3.2 基于查询攻击
利用该论文的方法,一些图像在添加元对抗扰动后可以成功地直接攻击黑盒模型,而无需其他操作,但如果攻击没有成功,则需要使用零阶优化算法持续执行攻击,以估计黑盒模型的梯度。这里使用RGF方法估计模型的梯度,具体的公式如下所示:
g
^
=
1
q
∑
k
=
1
q
f
(
x
+
δ
u
k
,
y
)
−
f
(
x
,
y
)
δ
⋅
u
k
\hat{g}=\frac{1}{q}\sum\limits_{k=1}^q\frac{f(x+\delta u_k,y)-f(x,y)}{\delta}\cdot u_k
g^=q1k=1∑qδf(x+δuk,y)−f(x,y)⋅uk图像
x
x
x通过使用在
L
∞
L_{\infty}
L∞范数下的模拟梯度
g
^
\hat{g}
g^进行迭代更新。为了提高攻击的效率,在迭代过程中加入了动量项,即图像的两个相邻迭代之间的差值。更新后的图片表示为
x
i
+
1
=
x
i
−
γ
⋅
s
i
g
n
(
g
^
)
+
η
⋅
(
x
i
−
x
i
−
1
)
x_{i+1}=x_i-\gamma \cdot \mathrm{sign}(\hat{g})+\eta\cdot(x_i-x_{i-1})
xi+1=xi−γ⋅sign(g^)+η⋅(xi−xi−1)其中
γ
\gamma
γ表示的是步长,
η
\eta
η是动量系数,
s
i
g
n
(
⋅
)
\mathrm{sign}(\cdot)
sign(⋅)是符号函数。在每一个步迭代后,都需要进行投影操作,具体公式如下所示:
x
=
Π
ε
(
x
)
x = \Pi_{\varepsilon}(x)
x=Πε(x)其中
Π
ε
(
x
)
\Pi_{\varepsilon}(x)
Πε(x)将向量
x
x
x投影到范数球
∥
x
∥
2
≤
ε
\|x\|_2\le \varepsilon
∥x∥2≤ε。如下图所示,为黑盒元对抗攻击的算法流程图
4 实验结果
下表显示了黑盒攻击的成功率、生成对抗样本所需的平均查询数以及所有对抗样本的平均失真。可以看出,与其他方法相比,论文的方法通常会有更高的成功率、更少的查询次数和相对较小的失真。当查询数量有限时,论文的方法在某些模型中的成功率比其他方法提高了约10%,而且该方法通常使用较少的查询来获得相同的成功率。实验结果还表明,该方法生成的对抗扰动对新的数据点具有很好的可迁移性和适应性,可以很好地处理被攻击的数据集,并能很好地执行黑盒攻击。
下图显示出了论文方法对抗样本可视化定性结果。左栏显示了要攻击的原始图像,中栏显示了论文方法生成的对抗干扰,右栏显示了与目标类对应的对抗样本。可以看出,论文的方法造成的图像扭曲几乎是看不见的。
如下表所示,可以发现在不知道被攻击类的特征的情况下,论文的方法比其他方法获得了更高的成功率。在所有模型中,论文的方法实现了最高的攻击成功率,在某些模型中,成功率甚至提高了10%以上。但是由于缺乏先验特征知识,论文的方法在某些模型中会造成较大的失真情况。然而在整体性能方面仍然优于其他方法,同时也证明了该方法生成的对抗扰动具有良好的自适应性和通用性。