Xiao C, Li B, Zhu J, et al. Generating Adversarial Examples with Adversarial Networks[J]. arXiv: Cryptography and Security, 2018.
@article{xiao2018generating,
title={Generating Adversarial Examples with Adversarial Networks},
author={Xiao, Chaowei and Li, Bo and Zhu, Junyan and He, Warren and Liu, Mingyan and Song, Dawn},
journal={arXiv: Cryptography and Security},
year={2018}}
概
本文利用GAN生成adversarial samples.
主要内容

其中G是生成器, D是用于判别真假的判别器, 二者都是需要训练的, 而f是已知的我们需要攻击的模型(在white-box下是不需要训练的).
训练判别器很普通的GAN是类似的, 即最大化下式:
LGAN=ExlogD(x)+Exlog(1−D(x+G(x))).(1)
训练生成器, 除了LGAN, 还需要
Ladvf=Exℓf(x+G(x),t),(2)
其中t是我们所需要的攻击目标(注意这里通过对ℓ的一些额外的选择, 是可以用到untargeted attack的).
Lhinge=Exmax(0,∥G(x)∥2−c),(3)
显然(3)是保证摄动不要太大.
所以训练生成器是最大化
L=Ladvf+αLGAN+βLhinge.(4)
black-box 拓展
该方法可以拓展到black-box上, 假设b(x)是目标网络, 其结构和训练数据都是未知的, 此时我们构建一个替代网络f(x)用于逼近b(x). 利用交替训练, 更新生成器G和f.
- 固定fi−1, 更新Gi: Gi初始化参数为Gi−1, 则
Gi,Di=argGminDmaxLadvf+αLGAN+βLhinge.
- 固定Gi, 更新fi: 初始化fi的参数为fi−1, 则
fi=argfminExH(f(x),b(x))+ExH(f(x+Gi(x)),b(x+Gi(x))).
其中H表示交叉熵损失.