原文标题: MC-Net: Realistic Sample Generation for Black-Box Attacks
原文代码: https://github.com/jiaokailun/A-fast
发布年度: 2024
发布期刊: TIFS
目录
- 摘要
- 背景
- 创新点
- 模型
- 实验
- 结论
摘要
One area of current research on adversarial attacks is how to generate plausible adversarial examples when only a small number of datasets are available. Current adversarial attack algorithms used to attack these black-box systems face a number of challenges, such as difficulty in training convergence, ambiguous sample images, substitute models collapse, unsatisfactory attack success rates, high query cost, and low defense capability improvement of target models. As a result, constructing plausible adversarial situations in a few known real-world sample circumstances remains difficult. As a solution to the aforementioned issues, this study introduces MC-Net, a novel multi-stage and multi-class balanced generating method based on a limited number of samples to generate realistic adversarial examples. Firstly, a multi-task learning approach is used to train the GAN by fully utilizing the small samples, ensuring that the size of the generated dataset for each category is balanced. In addition, we design a weight-balancing strategy to ensure faster convergence of each sub-network. Then, in the second stage, the generated samples of different categories are used to train a substitute model, and the distillation method is adopted to learn the output distribution of the target model. Finally, adversarial examples are constructed on the generated samples to complete the attack on the target models. Extensive experiments have proven that MC-Net has the following advantages: 1) The substitute model converges quickly using limited samples and queries; 2) High attack success rates can be obtained with a few queries; and 3) The constructed adversarial examples significantly improve the target model’s defense. Furthermore, we only utilize a few queries for the Microsoft Azure online model to obtain a satisfactory result.
这篇文章着重强调是构建一个更真实的攻击场景,从而生成更有效的攻击。
背景
构建的攻击场景越接近现实,生成的对抗样本就越有效。毕竟,现实世界的系统是黑匣子系统,具有相应的防御机制。在不被发现的情况下绕过当前防御系统并发起后续攻击的最有效方法是制作与真实样本非常相似的真实对抗示例。这样做的目的是混淆防御系统,从而针对模型进行攻击。然而,目前的攻击仍有重大的挑战,因为输入样本数量有限和黑盒攻击成功率不理想。
最近的几项研究侧重于在没有训练样本的情况下生成真实的对抗性示例。这些方法涉及使用生成器合成输入样本,利用合成的样本代替模型获取目标模型的梯度信息,然后在测试阶段使用真实样本构造对抗样本。在训练过程中,生成器的初始输入是随机化的,合成的样本被输入到替代模型和目标模型中,并通过优化来提高它们的匹配率。
虽然上述方法已被证明在许多情况下是有效的,但它们仍然面临一些挑战。首先,生成器和替代模型在使用随机输入时难以收敛,导致模型频繁收敛问题,并且在实践中难以达到纳什均衡点。其次,由于生成器生成的图像样本分布不均匀以及类别单一的可能性,模型可能会崩溃,从而阻碍替代模型完全实现目标模型梯度的能力。第三,实现替代模型的收敛涉及较高的查询成本,这在实践中难以维持,对目标模型的数万次查询成为成本障碍,并增加了攻击者被检测到的风险。第四,生成器生成的图像可能由于缺乏语义信息而含糊不清,导致它们在生成对抗性示例时无效。最后,替代模型很难获得黑盒模型的梯度,导致生成的对抗样本在提高目标模型的防御方面表现不佳。因此,在已知样本较少的情况下,如何通过有限的查询获得满意的攻击成功率的问题尚未完全解决。
我们之前提出的 MsGM在不访问任何样本的情况下对黑盒模型进行对抗性攻击。 MsGM 是一个端到端的过程,其中噪声向量作为生成器的输入,生成相应的输出。同时,该输出用于查询目标模型和输入替代模型以获得它们各自的输出。蒸馏学习确保替代模型的输出尽可能接近目标模型的输出。最后,蒸馏损失用于训练替代模型和生成器。我们知道,同时训练两个模型通常会使确保两个模型同时收敛变得具有挑战性。在实施无样本攻击时,MsGM 的收敛速度较慢,生成的样本与真实样本存在较大偏差。另一方面,由于需要不断查询目标模型来检查生成的样本是否符合相应条件,导致查询成本较高,收敛速度较慢。即使 MsGM 生成与黑盒模型查询确认的所需类别相匹配的样本,这些样本也不会显得真实。
创新点
与之前的 MsGM 不同,本文对有限的真实样本和有限数量的查询进行黑盒对抗攻击,称为 MC-Net。尽管数据有限,这种多类生成算法仍能以极高的效率生成对抗性示例。为了确保生成器生成真实的样本,并且替代模型在有限的数据集和查询的情况下充分学习目标模型的输出分布,整体设计了两个阶段来分别训练两个模型。在第一阶段,采用标准的 GAN 学习过程,其中生成器输入噪声矩阵,判别器输入生成的样本和有限数量的真实样本。通过对抗性学习,生成器变得善于生成真实的样本。在第二阶段,给定噪声矩阵,生成器生成相应的样本,然后用于训练替代模型。同时,生成器的参数保持不变。 MC-Net采用多任务生成方法,只需少量查询即可快速收敛并生成真实样本。此外,替代模型利用合成样本来学习目标模型的输出分布,以便用对抗性示例对其进行攻击。最后,用对抗性例子微调目标模型可以提高其防御能力。
本文的贡献总结如下:
•本文提出的方法 MC-Net 是一种用于黑盒对抗攻击的现实样本生成方法。与当前大多数对抗性攻击算法不同,本文的方法具有以下区别:1)它不仅解决了生成器和替代模型之间的收敛挑战,而且还可以在有限的数据集上有效地训练令人满意的生成器和替代模型。 2)在测试阶段,无数据攻击算法和其他攻击算法都是基于真实数据构建对抗样本来攻击目标模型,而MC-Net则是利用生成的不同类别样本来构建对抗样本来攻击目标模型。当然,在构建对抗样本之前,必须确保生成的样本成功通过测试阶段。
• 本文设计了一个多阶段学习过程,以确保多类生成器和替代模型更快地收敛。具体来说,在第一阶段,训练生成器,然后在第二阶段训练替代模型。
• 与MsGM不同,为了平衡不同子网络对多任务学习模型整体性能的影响(例如不同子网络的发散收敛、它们对共享层的影响等),本文设计了截断式SLAW权重平衡策略来解决上述问题。该方法有效提高了模型的学习效率。
模型
MC-Net 的完整示意图。 MC-Net 包括两个阶段。在初始阶段,需要更新生成器和判别器的参数,并且仅利用真实样本来训练判别器。在第二阶段,生成的样本用于训练替代模型。此阶段采用蒸馏学习来训练替代模型。需要强调的是,判别器和替代模型具有相似的结构和共享参数,仅修改了输出函数,这有利于模型更快的收敛。
- Generator Training
通过输入随机噪声Z,生成器G旨在生成真实图像来欺骗鉴别器D,而鉴别器则从真实样本中学习以区分输入是否真实。
在判别器D中,输入由真实样本X和合成样本N组成。本文的目标是最大化log D(X)和log(1-D(G(Z)))以增强判别器D的判别能力。
如引言中所述,由于合成样本的模糊性,以前的方法在实现 S 收敛方面面临挑战。为了解决这个问题,将真实样本X和合成样本分别输入到目标模型中来优化G,以最小化损失函数:
于是,关于生成器的损失函数为:
以往的无数据黑盒攻击方法由于收敛困难和模型崩溃而导致性能不理想,这主要是由于样本类别生成不完整以及不同类别之间的样本数量不平衡造成的。与 MsGM 方法相反,这里不采用反卷积方法,而是利用卷积编码方法来设计多类别生成方法。对于每个类别,确保生成器模型生成相同数量的样本,以严格保证合成样本分布的平衡性和多样性。
为了均衡每个类别生成的子任务,采用截断式SLAW方法来平衡训练过程中各个任务的影响。通过调整每个任务的权重,保证每个任务的梯度范数相等,从而提高模型的泛化能力。 SLAW的公式表示如下:gi = ▽ℓi (θ ),其中ℓi衡量了第i个子网络的输出结果与真实标签之间的差异。
每个子任务的等权梯度范数的定义可以表示为:
wi 表示未知变量,∥gi ∥ 表示 n 个任务中每个任务的已知变量.于是会出现无限个等式。
为了将其与全局学习率解耦,将权重系数的总和限制为固定值。
因此,可以得到每个加权系数 wi 的权重计算公式:
上式每次都需要计算附加梯度gi,为了避免这种计算成本,使用 si近似 gi 。 si 的具体计算公式如下:
这里 ai是损失ℓi 的一个移动平均值,bi是损失平方 ℓi^2 的一个移动平均值。si表示基于评估Li的标准差。
最终权重wi为:
在n个类别的情况下,判别器损失函数和生成器损失函数为:
2. Substitute Model Distillation
当获得合成图像N时,利用它们获得代理模型S和目标模型T之间的蒸馏损失lS,如下:
在label-only的场景下,d表示为交叉熵损失;在probability-only的场景下使用的是KL散度。
伪代码:
实验
- ASR:
首先,我们在有限样本场景下评估 MC-Net 和所有对比算法的对抗性能。此时,有限的训练样本如下:MNIST和FMNIST均为200个,CIFAR10为1000个,ImageNet和CIFAR100为10000个。另外,每个算法生成的对抗样本的数量等于训练样本的数量,“S”和“T”分别是VGG11和Net-1。
表 I 在有限数量的查询下,MC-Net 在 ASR 方面优于所有比较方法。其他方法由于早期合成样本不明确以及S和G之间博弈的随机性过多,导致收敛不稳定,需要大量查询预算才能收敛。如表 II 所示,本文的方法的优点是仅需要 50K 的查询预算即可实现 100% ASR,而其他黑盒攻击方法需要 10M 的查询预算。
2. 实际样本量对整体性能的影响
-
从表3可以看出,随着实际样本数量的增加,ASR有所上升,但上升幅度存在一定差距。例如,当真实样本数量从初始值开始增加时,ASR 增长最快。主要原因是,有了更多的真实样本,MC-Net可以更充分地学习原始数据集的分布特征,从而能够训练出更好的替代模型。
-
此外,由于 MNIST、FMNIST 和 CIFAR10 数据集的类别较少,当真实样本数量进一步增加时,攻击成功率的最终提升变得不那么显着。这主要是因为MC-Net已经在有限的样本上训练了有效的替代模型。
-
由于ImageNet数据集中的类别数量较多,初始样本的增加会导致MC-Net的ASR相对较大的增加。然而,由于我们只生成了 1000 个对抗性示例,随着我们继续增加样本,ARS 的增加速度变得更加平缓。这再次证明了MC-Net在有限样本下的可行性。
3. 生成样品的性能分析
从表4可以得出以下结论: 1) 这表明训练样本越丰富,攻击算法就越有效地学习原始样本的分布,从而生成更真实的生成样本。 2)当攻击算法(DaST、DFME、EDFA和MsGM)不需要训练集时,它们的性能随着查询数量的增加而逐渐提高。这是因为这些算法不从原始数据集中学习,并且生成的样本的适用性只能通过查询目标模型来确定。此外,查询越多,构建的样本就越真实。 3)在所有对比算法中,MC-Net表现最好。首先,与所有无数据攻击算法相比,MC-Net虽然需要有限的训练集,但它需要的查询次数比这些算法少得多,并且生成的样本更加真实。这种场景在现实中更实用,因为在没有原始样本的情况下,攻击算法将不断查询被攻击模型以确定生成样本的质量。这不仅使得攻击者的行为更容易暴露,而且会带来更大的查询成本。其次,与需要训练集的攻击算法相比,MC-Net的整体性能并没有随着训练样本的减少而下降,而是几乎保持不变,而其他算法的性能则不断下降。这表明MC-Net只需要学习几类平衡的原始样本就可以高效地生成更好的样本。
4. 基于真实或合成样本生成对抗样本的性能
从表V中可以发现,生成样本形成的对抗样本的ASR与真实样本形成的对抗样本的ASR十分接近。这表明只要合成样本满足要求,就可以有效构建对抗性样本。
5. 对抗性训练
1)对抗训练后真实样本的分类性能:
利用对抗样本进行对抗性训练后,对对抗样本和真实样本的准确率。对对抗样本的样本的准确率明显提高,而且真实样本的准确率在对抗性训练后基本保持不变。
2)对抗训练后不同替代模型的防御性能:
从表7可以看出,当黑盒模型没有经过对抗训练时,原始500个对抗样本的攻击成功率相对较高。然而,经过对抗性训练后,这些样本的整体攻击效率明显下降。这有力地证明了我们的模型在经过对抗性训练后,在防御性能方面表现出了良好的泛化能力。此外,可以有效地识别由相同替代模型生成的对抗性示例以及由其他类似模型生成的对抗性示例。
3)对抗训练后对不同攻击方法的防御性能:
表8可以看出本文的方法在构建对抗样本方面的有效性。当使用对抗样本训练MC-Net时,FGSM的攻击性能急剧下降,这进一步表明我们生成的对抗样本显着增强了模型的防御能力。
4)对抗训练后不同目标模型的防御性能:
无论如何,我们的MC-Net具有最好的ASR和目标模型防御能力的提高。这主要是因为,在有限的真实样本和有限的查询次数的情况下,我们的方法可以有效地学习真实样本的特征分布,从而生成和构造更有效的对抗样本。
5)对抗样本的迁移性
根据表X,可以得出以下结论: 1)与其他方法相比,MC-Net 生成的对抗样本在目标模型和其他目标模型上都表现出了最佳的攻击性能。原因是,在查询次数有限、真实样本有限的场景下,我们的方法可以有效地学习每一类样本的分布特征,从而生成足够数量的真实样本来训练替代模型。 2)所有算法生成的对抗性示例在原始黑盒模型上表现最佳,但在具有类似结构的其他模型上表现出显着下降。本文的算法下降最少。
6. 模型收敛速度
从图4中可以得出以下观察结果:随着查询数量的逐渐增加,所有算法的分类和攻击性能首先增加,然后稳定。然而,我们的MC-Net是最快达到最佳性能的。从图中我们可以看到,当查询数为1000时,MC-Net的攻击性能已经达到了92%,而EDFA和MsGM的攻击性能分别为51.2%和50.4%。
7. 损失函数
不同损失的贡献现在我们想了解多任务权重系数w和新设计的黑盒查询损失lc对MC-Net性能的影响。具体来说,我们想要研究在有和没有这两种损失的情况下,所有生成器生成的样本在查询目标模型时的表现如何。此外,黑盒模型和替代模型分别是VGG11和VGG19,而MC-Net的所有其他设置和表I中的实验设置保持一致。从表十二中我们可以观察到:当没有lc时,MC-Net生成的样本不满足要求,导致目标模型上的分类结果最差。尽管鉴别器可以学习真实样本的分布并区分真实样本和生成样本,但在真实样本有限的情况下,其性能仍然不如目标模型。当没有w时,分类结果也不尽如人意,但明显优于没有lc损失的性能。 w主要平衡各个子网络对整体性能的影响,加快生成器的收敛速度。如果没有 w,模型收敛速度会较慢,并且需要对黑盒模型进行大量查询。因此,当查询数量有限时,生成器很难获得最佳的训练性能,导致生成样本的性能下降。因此,充分利用lc和w可以加快收敛速度,增强MC-Net的生成性能,这是MC-Net性能优越的主要原因之一。