概
利用Jacobian矩阵构造adversarial samples,计算量比较大.
主要内容
目标:
arg
min
δ
X
∥
δ
X
∥
,
s
.
t
.
F
(
X
+
δ
X
)
=
Y
∗
.
(1)
\tag{1} \mathop{\arg \min} \limits_{\delta_X} \|\delta_X\|, \mathbf{s.t.} \: F(X+\delta_X)=Y^*.
δXargmin∥δX∥,s.t.F(X+δX)=Y∗.(1)
简而言之, 在原图像
X
X
X上加一个扰动
δ
X
\delta_X
δX, 使得
F
F
F关于
X
+
δ
X
X+\delta_X
X+δX的预测为
Y
∗
Y^*
Y∗而非
Y
Y
Y.
若
Y
∈
R
M
Y \in \mathbb{R}^M
Y∈RM是一个
M
M
M维的向量, 类别由下式确定
l
a
b
e
l
(
X
)
=
arg
min
j
F
j
(
X
)
.
label(X)=\mathop{\arg \min} \limits_{j} F_j(X).
label(X)=jargminFj(X).
F
(
X
)
=
Y
F(X)=Y
F(X)=Y关于
X
X
X的Jacobian矩阵为
[
∂
F
j
(
X
)
∂
X
i
]
i
=
1
,
…
,
N
,
j
=
1
,
…
,
M
,
[\frac{\partial F_j(X)}{\partial X_i}]_{i=1,\ldots,N,j=1,\ldots,M},
[∂Xi∂Fj(X)]i=1,…,N,j=1,…,M,
注意, 这里作者把
X
X
X看成一个
N
N
N维向量(只是为了便于理解).
因为我们的目的是添加扰动
δ
X
\delta_X
δX, 使得
X
+
δ
X
X+\delta_X
X+δX的标签为我们指定的
t
t
t, 即我们希望
t
=
arg
min
j
F
j
(
X
+
δ
X
)
.
t=\mathop{\arg \min} \limits_{j} F_j(X+\delta_X).
t=jargminFj(X+δX).
作者希望改动部分元素, 即
∥
δ
X
∥
0
≤
Υ
\|\delta_X\|_0\le \Upsilon
∥δX∥0≤Υ, 作者是构造了一个saliency_map来选择合适的
i
i
i, 并在其上进行改动, 具体算法如下:
saliency_map的构造之一是:
S
(
X
,
t
)
[
i
]
=
{
0
,
i
f
∂
F
t
(
X
)
∂
X
i
<
0
o
r
∑
j
≠
t
∂
F
j
(
X
)
∂
X
i
>
0
,
∂
F
t
(
X
)
∂
X
i
∣
∑
j
≠
t
∂
F
j
(
X
)
∂
X
i
∣
,
o
t
h
e
r
w
i
s
e
.
S(X,t)[i] = \{ \begin{array}{ll} 0, & if \: \frac{\partial{F_t(X)}}{\partial X_i} <0 \:or \: \sum_{j \not= t} \frac{\partial F_j(X)}{\partial X_i} >0, \\ \frac{\partial{F_t(X)}}{\partial X_i} |\sum_{j \not= t} \frac{\partial F_j(X)}{\partial X_i}|, & otherwise. \end{array}
S(X,t)[i]={0,∂Xi∂Ft(X)∣∑j=t∂Xi∂Fj(X)∣,if∂Xi∂Ft(X)<0or∑j=t∂Xi∂Fj(X)>0,otherwise.
可以很直观的去理解, 改变标签, 自然希望
F
t
(
X
)
F_t(X)
Ft(X)增大, 其余部分减少, 故
∂
F
t
(
X
)
∂
X
i
<
0
o
r
∑
j
≠
t
∂
F
j
(
X
)
∂
X
i
>
0
\frac{\partial{F_t(X)}}{\partial X_i} <0 \:or \: \sum_{j \not= t} \frac{\partial F_j(X)}{\partial X_i} >0
∂Xi∂Ft(X)<0or∑j=t∂Xi∂Fj(X)>0所对应的
X
i
X_i
Xi自然是不重要的, 其余的是重要的, 其重要性用
∂
F
t
(
X
)
∂
X
i
∣
∑
j
≠
t
∂
F
j
(
X
)
∂
X
i
∣
\frac{\partial{F_t(X)}}{\partial X_i} |\sum_{j \not= t} \frac{\partial F_j(X)}{\partial X_i}|
∂Xi∂Ft(X)∣∑j=t∂Xi∂Fj(X)∣来表示.
alg2, alg3
作者顺便提出了一个更加具体的算法, 应用于Mnist, max_iter 中的
784
784
784即为图片的大小
28
×
28
28 \times 28
28×28,
Υ
=
50
\Upsilon=50
Υ=50, 相当于图片中
50
%
50\%
50%的像素发生了改变, 且这里采用了一种新的saliency_map, 其实质为寻找俩个指标
p
,
q
p,q
p,q使得:
其实际的操作流程根据算法3.
θ
\theta
θ是每次改变元素的量.
一些有趣的实验指标
Hardness measure
其中
ϵ
(
s
,
t
,
τ
)
\epsilon(s,t,\tau)
ϵ(s,t,τ)中,
s
s
s:图片标签,
t
t
t:目标标签,
τ
\tau
τ:成功率,
ϵ
\epsilon
ϵ为改变像素点的比例. (12)是(11)的一个梯形估计,
τ
k
\tau_k
τk由选取不同的
Υ
k
\Upsilon_k
Υk来确定,
H
(
s
,
t
)
H(s, t)
H(s,t)越大说明将类别s改变为t的难度越大.
Adversarial distance
A
(
X
,
t
)
A(X,t)
A(X,t)越大, 说明将图片
X
X
X的标签变换至
t
t
t的难度越大, 而一个模型的稳定性可以用下式衡量
R
(
F
)
=
min
X
,
t
A
(
X
,
t
)
.
(14)
\tag{14} R(F)=\min_{X,t} A(X,t).
R(F)=X,tminA(X,t).(14)