Goodfellow I, Shlens J, Szegedy C, et al. Explaining and Harnessing Adversarial Examples[J]. arXiv: Machine Learning, 2014.

@article{goodfellow2014explaining,

title={Explaining and Harnessing Adversarial Examples},

author={Goodfellow, Ian and Shlens, Jonathon and Szegedy, Christian},

journal={arXiv: Machine Learning},

year={2014}}

概

Adversarial examples 中FGSM(fast gradient sign method)方法的来源,

\[\tilde{x}=x+ \epsilon \: \mathrm{sign} (\nabla_x J(\theta, x, y)).
\]

主要内容

在图像中, 像素点的进度是1/255, 所以如果我们在图像上的摄动小于此精度, 那么图像实际上是不会产生任何变化的. 作者首先说明, 即便是线性模型, 在输入上的微小摄动也能够引起结果(当维数够大)的很大变化.

从线性谈起

\(\tilde{x} = x+\eta\), 线性摄动如下

\[w^T\tilde{x} = w^Tx+w^T\eta,
\]

此时结果的摄动为\(w^T\eta\), 假设\(w\)的平均值为\(m\). 注意到, 在\(\|\eta\|_{\infty}<\epsilon\)的条件下, \(\eta=\epsilon \: \mathrm{sign}(w)\)时摄动最大(这也是FGSM的启发点), 此时摄动为\(\epsilon mn\), 注意到, 假设\(\epsilon, m\)是固定的, 那么\(n\)足够大的时候摄动就会特别大.

非线性

由线性启发至非线性(因为很多deep networks 的表现是线性的), 便是

\[\tilde{x}=x+ \epsilon \: \mathrm{sign} (\nabla_x J(\theta, x, y)).
\]

实验证明, 即便是GoogLeNet这样的网络也会被生成的adversarial examples所欺骗.

其实看这篇文章的主要一个问题就是为什么\(\eta \not = \epsilon \: \nabla_x J(\theta, x, y)\), 逼近这个方向才是令损失函数增长最快的方向.

文中有这么一段话, 不是很明白:

Because the derivative of the sign function is zero or undefined everywhere, gradient descent on the adversarial objective function based on the fast gradient sign method does not allow the model to anticipate how the adversary will react to changes in the parameters. If we instead adversarial examples based on small rotations or addition of the scaled gradient, then the perturbation process isitselfdifferentiableandthelearningcantakethereactionoftheadversaryintoaccount. However, we did not find nearly as powerful of a regularizing result from this process, perhaps because these kinds of adversarial examples are not as difficult to solve.

顺便记一下论文的总结:

  • 正是因为deep networks表现过于线性, 才会导致advesarial examples.
  • 不同的网络的adversarial examples是相通的, 这可能是因为二者逼近的函数是近似的
  • 摄动的方向而非个别特定点起了更重要的作用
  • 对抗训练是一种正则化过程
  • 越容易优化的模型又容易被欺骗
  • 线性模型缺乏对抗欺骗的能力
  • 拟合输入数据分布的模型缺乏对抗欺骗的能力
  • Ensembles are not resistant to adversarial examples. (多个模型组合(取平均判断类别)依然缺乏对抗欺骗的能力).

EXPLAINING AND HARNESSING ADVERSARIAL EXAMPLES的更多相关文章

  1. 《Explaining and harnessing adversarial examples》 论文学习报告

    <Explaining and harnessing adversarial examples> 论文学习报告 组员:裴建新   赖妍菱    周子玉 2020-03-27 1 背景 Sz ...

  2. Adversarial Examples for Semantic Segmentation and Object Detection 阅读笔记

    Adversarial Examples for Semantic Segmentation and Object Detection (语义分割和目标检测中的对抗样本) 作者:Cihang Xie, ...

  3. 文本adversarial examples

    对文本对抗性样本的研究极少,近期论文归纳如下: 文本对抗三个难点: text data是离散数据,multimedia data是连续数据,样本空间不一样: 对text data的改动可能导致数据不合 ...

  4. 论文阅读 | Generating Fluent Adversarial Examples for Natural Languages

    Generating Fluent Adversarial Examples for Natural Languages   ACL 2019 为自然语言生成流畅的对抗样本 摘要 有效地构建自然语言处 ...

  5. Limitations of the Lipschitz constant as a defense against adversarial examples

    目录 概 主要内容 Huster T., Chiang C. J. and Chadha R. Limitations of the lipschitz constant as a defense a ...

  6. Uncovering the Limits of Adversarial Training against Norm-Bounded Adversarial Examples

    Uncovering the Limits of Adversarial Training against Norm-Bounded Adversarial Examples 目录 概 主要内容 实验 ...

  7. Certified Robustness to Adversarial Examples with Differential Privacy

    目录 概 主要内容 Differential Privacy insensitivity Lemma1 Proposition1 如何令网络为-DP in practice Lecuyer M, At ...

  8. Generating Adversarial Examples with Adversarial Networks

    目录 概 主要内容 black-box 拓展 Xiao C, Li B, Zhu J, et al. Generating Adversarial Examples with Adversarial ...

  9. Obfuscated Gradients Give a False Sense of Security: Circumventing Defenses to Adversarial Examples

    目录 概 主要内容 Obfuscated Gradients BPDA 特例 一般情形 EOT Reparameterization 具体的案例 Thermometer encoding Input ...

随机推荐

  1. day01 前端bootstrap框架

    day01 django框架之bootstrap框架 今日内容概要 前端框架之bootstrap 该框架支持cv编写前端页面 利用socket模块编写一个简易版本的web框架 利用wsgiref模块编 ...

  2. day20 系统优化

    day20 系统优化 yum源的优化 yum源的优化: 自建yum仓库 使用一个较为稳定的仓库 # 安装华为的Base源 或者使用清华的源也可以 wget -O /etc/yum.repos.d/Ce ...

  3. Spark(一)【spark-3.0安装和入门】

    目录 一.Windows安装 1.安装 2.使用 二.Linux安装 Local模式 1.安装 2.使用 yarn模式 1.安装 2.使用 3.spark的历史服务器集成yarn 一.Windows安 ...

  4. Hadoop的HA机制浅析

    Zookeeper在Hadoop的HA中的应用 非HA的弊端: HDFS集群的分布式存储是靠namenode节点(namenode负责响应客户端请求)来实现.在非HA集群中一旦namenode宕机,虽 ...

  5. Spark基础:(一)初识Spark

    1.Spark中的Python和Scala的Shell (1): Python的Spark Shell 也就是我们常说的PySpark Shell进入我们的Spark目录中然后输入 bin/pyspa ...

  6. Xcode中匹配的配置包的存放目录

    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

  7. hadoop基本命令(转)

    在这篇文章中,我们默认认为Hadoop环境已经由运维人员配置好直接可以使用. 假设Hadoop的安装目录HADOOP_HOME为/home/admin/hadoop. 启动与关闭 启动HADOOP 进 ...

  8. error信息

    /opt/hadoop/src/contrib/eclipse-plugin/build.xml:61: warning: 'includeantruntime' was not set, defau ...

  9. Vue.js 学习

    一,Vue.js 介绍 Vue 是一套用于构建用户界面的渐进式javascript框架,与其它大型框架不同的是:Vue被设计为可以自底向上逐层应用.Vue的核心库只关注视图层,不仅易于上手,还便于与第 ...

  10. 【Spring Framework】Spring入门教程(七)Spring 事件

    内置事件 Spring中的事件是一个ApplicationEvent类的子类,由实现ApplicationEventPublisherAware接口的类发送,实现ApplicationListener ...