对抗样本之黑箱对抗:Practical Black-Box Attacks Against Machine Learning

前言

  看到篇paper,提供了一个极其厉害的生成对抗样本的黑箱攻击方式,之前的对抗攻击必须要知道受攻击模型的详细信息(包括模型结构参数,训练样本集等),但是本文所要分享的方法,是完全不需要知道这些信息的,只需要可以接触到受攻击模型的判别label即可完成对抗攻击。多么神奇而牛气哄哄的方法,让我们一块膜拜下这篇文章,看看为什么会有效。

攻击的限制

面对的问题:
  在不知道受攻击模型的网络结构,参数设置,以及训练样本的情况下,如何能够生成对抗样本,来使得受攻击模型误判。
以往的方法:
  大多数都是针对模型,猜测探索模型的误判方向,找到更容易产生偏差的方向,在这些方向上做扰动,从而达到迷惑模型的目的。
现在的难点,是无法接触的关于模型的任何信息(除了知道它对接受到的输入打的标签),那么基于梯度的方法,也就没有用武之地了,因为没法针对性地探索模型特性。

基本思路

  牛人的思路从来都是开创性的,没有路子也可以硬生生地走出一条路子来。无法接触到受攻击模型,那么就自己造个替代模型;接触不到训练数据,那么就自己造一批训练数据。被攻击的简直也是会哭晕的,这啥都不给你也能给攻击,简直就是没有天理。

1) 替代模型

  没法接触到受攻击模型的信息是吧,那就生成个替代模型,来模拟近似受攻击模型的某些决策边界。注意,替代模型并不是用来学习判别最优的,而是学习能够模仿受攻击模型的决策边界的替代能力
  根据常识,选择替代模型的大体结构,比如图像识别通常使用CNN。

2) 合成样本

  光有替代模型还是不行的,还需要有数据啊,但是训练数据也拿不到。那还怎么搞呢?不是还可以接触到受攻击模型打标签这个动作么,是可以充分利用起来的。那就先造一批随机数据,然后让受攻击模型打上标签,然后再想个高效的办法,尽快能够探测评估出误导方向。这个时候就用到了雅克比矩阵了,在上批随机数据的基础上,构造一波新的探测数据,再去打标签。
  合成数据集的必要性,全部遍历真实输入是不可能的,query过多容易被封。
  Jacobian-Based Dataset Augmentation:
  雅克比矩阵 (F(x,θ))(x) ∂ ( F ( x , θ ) ) ∂ ( x ) 描述了输出 F F 对输入 x 的敏感程度,大值表示很小的输入会导致很大的输出值变化幅度,这些方向上,也更能描述模型的分类边界的样本情况。如下图所示,梯度与边界样本:

这里写图片描述

  因此在根据前面的一批合成样本,来生成后续的样本集时,想要更有效地合成数据集,就要强化这些方向上的数据的合成(基于雅克比的数据集合成方法)。
  新样本的合成如下:
   S:={ x+λsgn(JF[O(x)]):xS}S S := { x + λ s g n ( J F [ O ( x ) ] ) : x ∈ S } ∪ S
   O(x) O ( x ) x x 在受攻击模型下的label,
  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值