Generating Adversarial Examples with Adversarial Networks

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是类似的, 即最大化下式:

(1)LGAN=ExlogD(x)+Exlog(1D(x+G(x))).

训练生成器, 除了LGAN, 还需要

(2)Ladvf=Exf(x+G(x),t),

其中t是我们所需要的攻击目标(注意这里通过对的一些额外的选择, 是可以用到untargeted attack的).

(3)Lhinge=Exmax(0,G(x)2c),

显然(3)是保证摄动不要太大.

所以训练生成器是最小化

(4)L=Ladvf+αLGAN+βLhinge.

black-box 拓展

该方法可以拓展到black-box上, 假设b(x)是目标网络, 其结构和训练数据都是未知的, 此时我们构建一个替代网络f(x)用于逼近b(x). 利用交替训练, 更新生成器Gf.

  1. 固定fi1, 更新Gi: Gi初始化参数为Gi1, 则

Gi,Di=argminGmaxDLadvf+αLGAN+βLhinge.

  1. 固定Gi, 更新fi: 初始化fi的参数为fi1, 则

fi=argminfExH(f(x),b(x))+ExH(f(x+Gi(x)),b(x+Gi(x))).

其中H表示交叉熵损失.

posted @   馒头and花卷  阅读(323)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示