CVPR2021:对抗变换提高对抗样本的可迁移性
Posted 鬼道2021
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CVPR2021:对抗变换提高对抗样本的可迁移性相关的知识,希望对你有一定的参考价值。
引言
该论文发表于CVPR2021,主要是关于黑盒攻击中对抗样本可迁移性的研究。论文的创新点很新颖,虽然论文代码没有开源,但是自己实现起来也相对简单。论文作者借助对抗训练的思想提出了一种新颖的对抗变换网络以此来生成高迁移性的对抗样本。我在本文画出了两张示意图为了能更通俗易懂地了解作者的核心思想,以及区别对抗变换网络和对抗训练框架之间的异同。
方法介绍
问题定义
令 x x x表示的是一个干净样本,其真实标签为 y y y。深度学习分类为 f ( x ) f(x) f(x),输出的是一个概率向量。生成对抗样本 x a d v x^{adv} xadv的优化公式如下所示: arg max f ( x a d v ) ≠ y s . t . ∥ x a d v − x ∥ p ≤ ϵ \\begin{aligned}&\\arg\\max f(x^{adv}) \\ne y\\\\ &\\mathrm{s.t.}\\quad \\|x^{adv}-x\\|_p \\le \\epsilon \\end{aligned} argmaxf(xadv)=ys.t.∥xadv−x∥p≤ϵ以上公式转化为损失函数 J ( f ( x ) , y ) J(f(x),y) J(f(x),y)的形式为则有 max x a d v J ( f ( x a d v ) , y ) s . t . ∥ x a d v − x ∥ ∞ ≤ ϵ \\begin{array}{rl}\\max\\limits_{x^{adv}} &J(f(x^{adv}),y)\\\\ \\mathrm{s.t.}&\\|x^{adv}-x\\|_{\\infty}\\le \\epsilon\\end{array} xadvmaxs.t.J(f(xadv),y)∥xadv−x∥∞≤ϵ
对抗变换网络
作者主要通过让对抗样本抵御防御中的各种数据变换从而增强对抗样本的可迁移性。当前的数据变换的方法可以减弱对抗扰动的攻击性,但是因为这些数据变换的方式都是固定的形式,例如翻转,缩放,颜色变换等,使得数据变换的样式比较固定和单一。在该论文中作者在模型分类器前加入一个
C
N
N
\\mathrm{CNN}
CNN,这个
C
N
N
\\mathrm{CNN}
CNN主要功能是抑制对抗样本的攻击,训练干净样本使得生成的对抗样本能够抵御防御中最强数据变换后,依然保留对抗样本的攻击性。
令
H
H
H是带有参数
θ
H
\\theta_H
θH图片变换函数。该论文的方法分为两步,第一步是通过训练
θ
H
\\theta_H
θH找到一个最强的数据变换方式
H
H
H,使得它能够最大程度的抑制对抗样本的攻击性;第二步是在得到最强数据变换函数
H
H
H后,训练生成对抗样本
x
a
d
v
x^{adv}
xadv。优化函数可以归结为如下的对抗损失
min
θ
H
max
x
a
d
v
J
(
f
(
H
(
x
a
d
v
)
)
,
y
)
s
.
t
.
∥
x
a
d
v
−
x
∥
∞
≤
ϵ
arg
max
f
(
H
(
x
)
)
=
y
\\begin{array}{rl} \\min\\limits_{\\theta_H}\\max\\limits_{x^{adv}}& J(f(H(x^{adv})),y)\\\\\\mathrm{s.t.}& \\|x^{adv}-x\\|_{\\infty}\\le \\epsilon\\\\ & \\arg\\max f(H(x))=y\\end{array}
θHminxadvmaxs.t.J(f(H(xadv)),y)∥xadv−x∥∞≤ϵargmaxf(H(x))=y当
H
(
x
)
H(x)
H(x)为一个卷积神经网络
T
(
x
;
θ
T
)
T(x;\\theta_T)
T(x;θT)的时候,则相应的优化形式如下所示:
min
θ
T
max
x
a
d
v
J
(
f
(
T
(
x
a
d
v
)
)
,
y
)
s
.
t
.
∥
x
a
d
v
−
x
∥
∞
≤
ϵ
arg
max
f
(
T
(
x
)
)
=
y
\\begin{array}{rl} \\min\\limits_{\\theta_T}\\max\\limits_{x^{adv}}& J(f(T(x^{adv})),y)\\\\\\mathrm{s.t.}& \\|x^{adv}-x\\|_{\\infty}\\le \\epsilon\\\\ & \\arg\\max f(T(x))=y\\end{array}
θTminxadvmaxs.t.J(f(T(xadv)),y)∥xadv−x∥∞≤ϵargmaxf(T(x))=y
为了能够更清楚的展示论文的中心思想,给论文补充上了方法原理的示意图,如下所示,红色蓝色区域部分是对抗变换网络的训练,黄色区域部分是对抗样本的生成过程。
φ
\\varphi
φ和
φ
^
\\hat{\\varphi}
φ^表示的是对抗变换网络的更新参数,
θ
\\theta
θ表示目标模型的固定参数。
训练对抗变换网络的损失函数函数如下所示
L
T
=
J
(
f
(
T
(
x
a
d
v
)
)
,
y
)
+
α
1
J
(
f
(
T
(
x
)
)
,
y
)
+
α
2
∥
x
a
d
v
−
T
(
x
a
d
v
)
∥
2
L_T = J(f(T(x^{adv})),y)+\\alpha_1 J(f(T(x)),y)+\\alpha_2 \\|x^{adv}-T(x^{adv})\\|^2
LT=J(f(T(xadv)),y)+α1J(f(T(x)),y)+α2∥xadv−T(xadv)∥2其中第一项表示的是对抗变换网络抑制对抗样本后的损失,第二项表示的是对抗变换网络对干净样本的损失,第三项是干净样本和对抗样本约束损失。紧接着在训练对抗变换网络过程中生成对抗样本,其损失函数如下所示
L
f
o
o
l
=
−
J
(
f
(
T
(
x
a
d
v
)
)
,
y
)
−
β
J
(
f
(
x
a
d
v
)
,
y
)
L_{fool}=-J(f(T(x^{adv})),y)-\\beta J(f(x^{adv}),y)
Lfool< 以上是关于CVPR2021:对抗变换提高对抗样本的可迁移性的主要内容,如果未能解决你的问题,请参考以下文章 繁凡的对抗攻击论文精读CVPR 2021 元学习训练模拟器进行超高效黑盒攻击(清华) 繁凡的对抗攻击论文精读CVPR 2021 元学习训练模拟器进行超高效黑盒攻击(清华)