文章目录
Simple Black-box Adversarial Attacks【简易的黑盒对抗攻击】
Chuan Guo, Jacob R. Gardner, Yurong You, Andrew Gordon Wilson, Kilian Q. Weinberger
GitHub:https://github.com/cg563/simple-blackbox-attack
一、相关概念
1.1 对抗攻击(Adversarial Attack)
基于深度学习的图像分类网络,大多是在精心制作的数据集下进行训练,并完成相应的部署,对于数据集之外的图像或稍加改造的图像,网络的识别能力往往会受到一定的影响。
在此现象之下,对抗攻击(Adversarial Attack)开始加入到网络模型鲁棒性的考查之中。
通过添加不同的噪声或对图像的某些区域进行一定的改造生成对抗样本,以此样本对网络模型进行攻击以达到混淆网络的目的,即对抗攻击。
添加的这些干扰信息,在人眼看来是没有任何区别的,但是对于网络模型而言,某些数值的变化便会引起“牵一发而动全身”的影响。这在实际应用中将是非常重大的判定失误,如果发生在安检、安防等领域,将会出现不可估量的问题。
1.2 对抗攻击方式
1.2.1 白盒攻击(White-box Attacks)
攻击者已知模型内部的所有信息和参数,基于给定模型的梯度生成对抗样本,对网络进行攻击。
1.2.2 黑盒攻击(Black-box Attacks)
当攻击者无法访问模型详细信息时,白盒攻击显然不适用,黑盒攻击即不了解模型的参数和结构信息,仅通过模型的输入和输出,生成对抗样本,再对网络进行攻击。
现实生活中相应系统的保密程度还是很可靠的,模型的信息完全泄露的情况也很少,因此白盒攻击的情况要远远少于黑盒攻击。但二者的思想均是一致的,通过梯度信息以生成对抗样本,从而达到欺骗网络模型的目的。
二、研究概述
2.1 研究背景
机器学习系统在恶意对手存在下的安全性是一个重要的研究领域。
机器学习模型输出的决策可以随输入的细微变化而任意改变。
白盒攻击要求敌方完全了解目标模型,而黑盒攻击只需要对目标模型进行查询,这些查询可能返回完整或部分信息。黑盒威胁模型更适用于许多场景,对模型的黑盒查询的数量是攻击算法效率的一个重要指标。
2.2 研究现状与问题
迄今为止,尽管最近在这方面做了大量工作,但最著名的黑盒攻击执行的平均查询数仍然很高。最有效和最复杂的攻击通常仍然需要数万或数十万个查询,一种有效的查询黑盒攻击方法一直是一个有待解决的问题。
2.3 研究内容
文献提出了一种简单而高效的黑盒攻击:在预先指定的一组正交搜索方向中反复选取一个随机方向,利用置信度来检查它是否指向或远离决策边界,并通过对图像进行加或减向量来扰动图像。每次更新都会使图像远离原始图像,并朝决策边界移动。
2.4 研究结论
- 评估了各种正交搜索子空间,发现将搜索限制在离散余弦变换(DCT)基的低频端尤其有效。
- 文献的方法获得了与最先进的黑盒攻击算法相似的成功率,但是黑盒查询的数量却空前的低。
- 简单性:可以在不超过20行代码的Pytorch中实现。
文献所提出方法是对抗性图像攻击的一个新的令人惊讶的强大基线,称之为简单黑盒攻击(SimBA)。
三、研究方法
相关参数:
参数 | 说明 |
---|---|
x | 图像数据 |
y | 分类结果 |
h(x) = y | 分类模型 |
P(y|x) | 分类为y类别的概率 |
δ | 最小波动 |
q | 方向 |
ε | 步长 |
Q | 正交搜索方向集 |
||δ|| |