论文阅读—Square Attack: a query-efficient black-box adversarial attack via random search
发表位置 ECCV 2020
摘要
作者提出了一种基于得分的黑盒Square attack,该模型不依赖于模型的局部梯度信息,因此可以绕过梯度隐藏防御攻击。Square Attack是一种随机搜索方法,它在随机位置选择局部的方形更新,使得每次迭代时扰动近似位于可行集的边界。
背景
当涉及到对安全至关重要的机器学习应用时,对抗性的例子尤其值得关注。许多针对对抗性例子的防御已被提出,但成功有限,因为新的更强大的攻击可以打破它们中的许多。特别是,梯度模糊或掩蔽常常是看似稳健的模型最终变得不稳健的原因。基于梯度的攻击最常受到这种现象的影响(白盒攻击以及基于有限差分近似的黑盒攻击)。因此,有基于不同原则的攻击是很重要的。黑盒攻击最近变得更加流行,因为它们的攻击策略与用于对抗训练的攻击策略非常不同,后者通常使用pgd型攻击。然而,目前这些黑盒攻击的一个很大的缺点是,在找到对抗性例子之前,需要过多地查询分类器,而且它们的成功率有时明显低于白盒攻击。
方案
1. 整体算法
y
y
y表示
x
x
x的原始标签,
w
w
w表示图像的长度,
h
h
h表示正方形的长度。
其中
扰动查找方法:
随机查找方法:在每次迭代时抽样一个随机更新扰动,如果该扰动更改进了目标函数,则将它添加到当前迭代中
算法1介绍:
选择要修改的正方形的边长,该边长随着先验固定的时间表递减(手工调整正方形的边长)
计算扰动,
L
∞
{L_\infty }
L∞扰动计算方法如算法2,
L
2
{L_2 }
L2 扰动计算方法如算法3。
将
(
x
^
+
δ
)
(\hat x + \delta )
(x^+δ) 映射到
{
z
∈
R
d
:
∣
∣
z
−
x
∣
∣
p
≤
ε
}
∩
[
0
,
1
]
d
\{ z \in {R^d}:||z - x|{|_p} \le \varepsilon \} \cap {[0,1]^d}
{z∈Rd:∣∣z−x∣∣p≤ε}∩[0,1]d
若扰动更改进了目标函数,则将它添加到当前迭代中,并更新目标函数
重复上述过程,直到
x
x
x具有对抗性和迭代最大次数
2.
L
∞
{L_\infty }
L∞范数攻击
其中,
ρ
\rho
ρ表示
x
x
x中元素的修改比例,
c
c
c表示图像的通道数,
ε
\varepsilon
ε表示约束条件。扰动为每次修改一小部分连续的像素。
3. L 2 {L_2} L2范数攻击
说实话这部分没整明白!!!
η
r
,
s
(
h
1
,
h
2
)
=
∑
k
=
0
M
(
r
,
s
)
1
(
n
+
1
−
k
)
2
,
n
=
⌊
h
1
2
⌋
\eta _{r,s}^{({h_1},{h_2})} = \sum\limits_{k = 0}^{M(r,s)} {\frac{1}{{{{(n + 1 - k)}^2}}}} ,n = \left\lfloor {\frac{{{h_1}}}{2}} \right\rfloor
ηr,s(h1,h2)=k=0∑M(r,s)(n+1−k)21,n=⌊2h1⌋
M ( r , s ) = n − max { ∣ r − ⌊ h 1 2 ⌋ − 1 ∣ , ∣ s − ⌊ h 2 2 ⌋ − 1 ∣ } M(r,s) = n - \max \{ |r - \left\lfloor {\frac{{{h_1}}}{2}} \right\rfloor - 1|,|s - \left\lfloor {\frac{{{h_2}}}{2}} \right\rfloor - 1|\} M(r,s)=n−max{∣r−⌊2h1⌋−1∣,∣s−⌊2h2⌋−1∣}
η = ( η ( h , k ) , − η ( h , h − k ) ) , k = ⌊ h / 2 ⌋ \eta = ({\eta ^{(h,k)}}, - {\eta ^{(h,h - k)}}),k = \left\lfloor {h/2} \right\rfloor η=(η(h,k),−η(h,h−k)),k=⌊h/2⌋
其中,
4. 实验
数据集:ImageNet MNIST
对比模型:Bandits [29], Parsimonious [44], DFOc/ DFOd [34], and SignHunter [2].
评价指标:成功率、查询效率、平均查询量和查询两中位数
目标模型:Inception v3, ResNet-50, VGG-16-BN
论文代码:https://github.com/max-andr/square-attack.