论文阅读——Sparse-RS: a Versatile Framework for Query-Efficient Sparse Black-Box Adversarial Attacks

Sparse-RS: a Versatile Framework for Query-Efficient Sparse Black-Box Adversarial Attacks

作者:Francesco Croce,Maksym Andriushchenko等
代码:https://github.com/fra31/sparse-rs

攻击类别:patch、可见、稀疏可见、黑盒、目标攻击(targeted)+非目标攻击(untargeted)、网络结构、参数、梯度信息未知

  • 摘要
    黑盒设置下提出了一种基于得分的非目标和目标对抗攻击, Sparse-RS。该攻击方法并没有依赖替代模型就实现了最先进的攻击能力。
    Q1 没有依赖替代模型,基于得分确定patch,为啥会是黑盒的?
    A1 因为通用吗?

  • 相关性工作
    根据对输入图像添加的扰动的密集程度可分为:
    ①稠密对抗攻击:修改输入的所有元素
    ②稀疏对抗攻击:只干扰原始输入的一小部分,但可能有很大的修改没有改变语义内容或是很小的修改,但改变了语义内容。 稀疏攻击包括, L 0 {L_0} L0约束(不会关注查询效率或扩展到像ImageNet这种大规模数据集),对抗patch和帧(这两种攻击方法大多只对白盒攻击有效,迁移性不强)。

  • 方案
    过程描述:
    1、准备工作:
    (1)初始化扰动位置 M
    (2)初始化扰动值 Δ \Delta Δ
    (3)初始化损失
    2、开始执行:
    (1)初始化z为原始输入,并修改z中的个别元素为扰动
    (2)更新扰动位置
    (3)更新扰动
    (4)更新对抗图像z
    (5)如果对更新后的对抗图像更新后的损失小于初始化损失,则损失更新,同时更新扰动位置和扰动
    (6)迭代上述过程,直到超出查询预算或攻击成功。
    上述过程的伪代码定义如下:
    论文阅读——Sparse-RS: a Versatile Framework for Query-Efficient Sparse Black-Box Adversarial Attacks_第1张图片
    Q3 扰动的更新位置是如何确定的?
    A2①初始化:从所有的输入位置中均匀采样k个位置作为扰动的初始位置;②扰动位置更新:对于部分模型,扰动随机更新,扰动位置也是随机更新的;针对视频的帧攻击,扰动位置是固定的。对于个别模型,对抗扰动依赖特定模型。
    Q3 扰动服从什么分布?
    A3 没提
    Q4 上述过程中,损失函数定义为什么?
    A4 对于目标攻击,损失定义为交叉熵损失;对于非目标攻击,损失定义为边界损失。即,
    非目标攻击下损失的定义:
    L m arg ⁡ i n ( f ( ⋅ ) , y ) = f y ( ⋅ ) − max ⁡ r ≠ y f r ( ⋅ ) {L_{{\rm{m}}\arg {\rm{in}}}}(f( \cdot ),y) = {f_y}( \cdot ) - {\max _{r \ne y}}{f_r}( \cdot ) Lmargin(f(),y)=fy()maxr=yfr() (1)
    目标攻击下损失的定义:
    L C E ( f ( ⋅ ) , t ) = − f t ( ⋅ ) + log ⁡ ( ∑ r = 1 K e f r ( ⋅ ) ) {L_{CE}}(f( \cdot ),t) = - {f_t}( \cdot ) + \log (\sum\limits_{r = 1}^K {{e^{{f_r}( \cdot )}}} ) LCE(f(),t)=ft()+log(r=1Kefr()) (2)

  • 实验
    1、数据集: CIFAR-10、MNIST、ImageNet.
    2、指标 :攻击成功率+鲁棒性评估
    3、对比方法:VFGA、FMN、PDPGD、SAPF、EAD、SparseFool、PGD等
    4、验证策略:攻击能力分析+鲁棒性分析+消融研究+理论分析

你可能感兴趣的:(论文阅读)