【多模态对抗攻击】VLATTACK: Multimodal Adversarial Attacks on Vision-Language Tasks via Pre-trained Models

原文标题: VLATTACK: Multimodal Adversarial Attacks on Vision-Language Tasks via Pre-trained Models
原文代码: https://github.com/ericyinyzy/VLAttack
发布年度: 2023
发布期刊: NeurIPS


摘要

Vision-Language (VL) pre-trained models have shown their superiority on many multimodal tasks. However, the adversarial robustness of such models has not been fully explored. Existing approaches mainly focus on exploring the adversarial robustness under the white-box setting, which is unrealistic. In this paper, we aim to investigate a new yet practical task to craft image and text perturbations using pre-trained VL models to attack black-box fine-tuned models on different downstream tasks. Towards this end, we propose VLATTACK2 to generate adversarial samples by fusing perturbations of images and texts from both singlemodal and multimodal levels. At the single-modal level, we propose a new blockwise similarity attack (BSA) strategy to learn image perturbations for disrupting universal representations. Besides, we adopt an existing text attack strategy to generate text perturbations independent of the image-modal attack. At the multimodal level, we design a novel iterative cross-search attack (ICSA) method to update adversarial image-text pairs periodically, starting with the outputs from the single-modal level. We conduct extensive experiments to attack five widely-used VL pre-trained models for six tasks. Experimental results show that VLATTACK achieves the highest attack success rates on all tasks compared with state-of-the-art baselines, which reveals a blind spot in the deployment of pre-trained VL models.


背景

这些视觉语言(VL)预训练模型模型首先通过在大规模未标记图像文本数据集上进行预训练来学习多模态交互,然后在不同下游 VL 任务上使用标记对进行微调。尽管它们具有出色的性能,但这些 VL 模型的对抗鲁棒性仍然相对未被探索。

现有的在VL任务中进行对抗性攻击的工作主要是在白盒设置下,攻击者可以访问微调模型的梯度信息。然而,在更现实的场景中,恶意攻击者可能只能访问通过第三方发布的公共预训练模型。攻击者不会对在私有数据集上微调的下游 VL 模型学习的参数有任何先验知识。为了弥补这一显着的局限性,我们研究了一种新的但实用的攻击范式——在预训练的 VL 模型上生成对抗性扰动,以攻击在预训练模型上微调的各种黑盒下游任务。

然而,这样的攻击设置并不简单,面临以下挑战: (1)特定任务的挑战。预训练的VL模型通常用于微调不同的下游任务,这要求设计的攻击机制具有通用性并且能够攻击多个任务。 (2) 特定于模型的挑战。由于微调模型的参数未知,因此需要攻击方法自动学习不同模态的预训练模型和微调模型之间的对抗性可转移性。尽管跨图像模型的对抗性可转移性已经被广泛讨论,但在预训练模型中仍然很大程度上未被探索,特别是在不同模态上的扰动之间构建相互联系。

创新点

为了解决上述所有挑战,我们提出了一种新的通用视觉语言攻击策略(称为 VLATTACK),以探索预训练和微调的 VL 模型之间的对抗可迁移性。整个 VLATTACK 方案融合了扰动两个层次的图像和文本:

  • 单模态层面

VLATTACK 在单一模态上独立生成扰动,遵循“从图像到文本”的顺序,因为前者可以在连续空间上扰动。单模态攻击可以有效地检测图像或文本的对抗性漏洞,从而避免对其他模态的冗余扰动。具体来说,为了充分利用预训练模型中存储的图像文本交互,我们提出了一种新颖的逐块相似性攻击(BSA)策略来攻击图像模态,该策略添加扰动以逐块扩大网络预训练模型中原始特征和扰动特征之间的距离,破坏了下游预测的通用图像文本表示。如果BSA在查询微调的黑盒模型后未能改变预测,VLATTACK将通过采用词级扰动技术来攻击文本模态。我们采用 BERT-Attack来攻击文本模态,因为它的突出性能已在许多研究中得到广泛验证。最后,如果所有文本扰动 {T′ i} 失败,VLATTACK 将生成扰动样本 T 的列表,并将它们与扰动图像 I′ 一起馈送到多模态攻击。

  • 多模态层面

如果上述攻击未能改变预测,我们将根据先前的输出在多模态级别交叉更新图像和文本扰动。所提出的迭代交叉搜索攻击(ICSA)策略通过考虑不同模态扰动之间的相互关系,以迭代方式更新图像文本扰动对(I′ i,T′ i)。 ICSA 使用从列表 T 中选择的文本扰动 T′ i 作为指导,通过采用逐块相似性攻击 (BSA) 迭代更新扰动图像 I′ i,直到新的对 (I′ i, T′ i) 使得下游任务变化的预测。此外,在多模态攻击层面,根据与良性扰动的语义相似度对文本扰动进行交叉搜索,逐渐加大方向修改的程度,以最大程度地保留原始语义。

模型

VL 预训练模型结构

从预训练开始进行微调已经成为最近 VL 模型设计中的统一范式。大多数预训练的VL模型可以分为仅编码器和编码器-解码器结构。图 3 显示了两个代表性的模型结构。给定图像文本对 (I, T),两个 VL 模型首先分别嵌入每种模态。将网格特征压平为序列后,通过由视觉变换器或Resnet组成的图像编码器获得图像标记。文本标记是通过由标记器和词向量投影组成的词编码器生成的。然后,仅编码器模型会处理两种模态的标记和一个可学习的特殊标记⟨cls⟩,并将它们输入 Transformer 编码器。最后,⟨cls⟩ token 的输出表示被输入到分类头中以进行最终预测 ⟨ans⟩。对于编码器-解码器结构,附加的图像和文本标记被输入 Transformer 网络 [46],以自回归方式生成序列预测 [⟨ans1⟩,⟨ans2⟩,···,⟨end⟩]。当结束标记⟨end⟩出现时,网络停止回归。在这项工作中,我们深入探讨了两种结构的对抗脆弱性。

威胁模型。令 F 表示公共预训练模型,S 表示下游任务模型,其中 S 与 F 共享大部分或相同的结构。如图3所示,两种公共VL预训练模型的网络结构不同。仅编码器模型允许根据下游任务的要求修改最后一个预测层,但保持其他层与 F 相同。然而,编码器-解码器模型统一了不同下游任务的输出,这导致 S 具有与 F 相同的结构。请注意,下游任务将使用自己的数据完全微调参数,因此 F 中的所有模型参数都会在微调阶段更新。因此,S 中的所有参数都不可访问。

给定图像文本对 (I, T),下游任务的目标是准确预测输入对的标签,即 S : (I, T) → Y,其中 Y = {y1, · · · ,yn}。对于仅编码器模型,地面实况标签是一个单热向量。对于编码器-解码器模型,基本事实是由多个有序单热向量组成的序列。让 y 表示地面实况向量。对抗性攻击的目标是使用 F 生成对抗性示例 (I′, T′),这可能会导致对 S 的错误预测。从数学上讲,我们的问题表述如下:

在这里插入图片描述

1.单模态攻击

  • 图像攻击

在这里插入图片描述

直观上,如果预训练模型 F 从干净输入 I 和扰动输入 I’ 学习到的特征表示显着不同,则这种扰动可能会转移到微调模型以改变下游任务的预测。如图 3 所示,图像特征可以从图像编码器和 Transformer 编码器获得,甚至可以从不同的层或块获得。为了充分利用预训练模型结构的具体特征,我们提出了分块相似性攻击(BSA)来破坏通用上下文表示。BSA 通过最大化预训练模型 F 的图像编码器 Fα 和 Transformer 编码器 Fβ 中的中间表示之间的块距离来扰乱图像。 BSA 的损失函数定义如下:
在这里插入图片描述

在图像攻击步骤中,我们通过 Ns 次迭代的项目梯度下降优化 [30] 生成对抗性图像候选,其中 Ns < N 且 N 是图像攻击的最大迭代次数。剩余的 N − Ns 攻击步骤预算将用于第 4.2 节中的多模式攻击。如果(I′,T)是BSA生成的对抗性样本,则VLATTACK将停止。否则,VLATTACK 就会攻击文本模态。

  • 文本攻击

在一些 VL 任务中,文本中的 token 数量非常少。例如,VQAv2 [48] 和 RefCOCO [49] 数据集中文本的平均长度分别为 6.21 和 3.575。而且,其中一些是无意义的词,这使得没有必要设计一种新的方法来攻击文本模态。此外,现有的文本攻击方法(例如 BERT-Attack [21])对于生成文本的对抗样本非常强大。因此,我们直接应用 BERT-Attack 来生成文本扰动。为了避免不必要的修改,我们使用干净图像 I 作为输入,而不是生成扰动图像 I’。

具体来说,首先将 BERT-Attack 产生的对抗候选 T’ i 与良性文本 T 一起输入到通用句子编码器 Us 中,以测试语义相似度。如果 T′ i 与 T 之间的余弦相似度 γi 小于阈值 σs,即 γi = Cos(Us(T′ i), Us(T)) < σs,则 T′ i 被删除。否则,我们将 T′ i 和良性图像 I 放入微调模型 S 中,以检测新对 (I, T′ i) 是否扰乱原始预测 y。在文本攻击期间,我们创建一个列表 T 来存储所有扰动样本 {T′ i} 和相应的余弦相似度值 {γi}。如果T中的任何样本成功改变下游任务的预测,则VLATTACK将停止。否则,VLATTACK将把来自图像攻击的扰动图像I’和来自文本攻击的扰动文本候选列表T携带到多模态攻击级别。请注意,BERT-Attack 基于同义词替换。即使对于很短的文本,对抗性示例的数量仍然可能很大。换句话说,T的长度可以很大。整个单模态攻击过程如算法 1(第 1-15 行)所示。

2.多模态攻击

在许多情况下,仅扰动图像或文本很难成功,因为单模态扰动不足以打破图像文本相关性。为了解决这个问题,我们提出了一种新的攻击策略,根据不同模态的扰动来破坏动态相互连接。

  • 攻击步骤

由于图像攻击步骤的最大数量 N 是预先定义的,如果 T 的长度(即 |T | ) 非常大。因此,我们需要将扰动文本样本{T′ i}根据其对应的余弦相似度值{γi}降序排列,以使对抗样本与原始文本T保持较高的语义相似度。令K表示数量多模式攻击中的攻击步骤:
在这里插入图片描述

  • 迭代交叉搜索攻击

进行多模态攻击的一种简单方法是通过查询黑盒微调模型 S 来测试每个扰动的图像文本对 (I′, ˆ T′ k) (k = 1, · · · , K),其中^ T′ i 是排序列表 T 中的第 i 个文本扰动。

然而,这种简单的方法忽略了学习受扰动的文本和图像之间的相互联系。为了解决这个问题,我们提出了一种新的迭代交叉搜索攻击(ICSA)策略。在ICSA中,VLATTACK会在文本扰动的指导下动态更新图像扰动。

具体来说,在每个多模态攻击步骤中,ICSA 首先确定图像攻击步骤的数量。由于有 K 个对抗性文本候选将在 ICSA 中同等使用,因此分配给每个文本样本的图像攻击的迭代次数为 Nk = ⌊ N−Ns K ⌋。 ICSA 将第 k 对 (I′ k, ˆ T′ k) 作为输入,通过优化式(1)中的逐块攻击损失来生成新的图像扰动 I′ k+1。 (2),其中I′1是单模态级别图像攻击的输出,即I′。重复这样的过程,直到找到对抗性样本(I′j,^T′j),或者访问所有K个扰动文本。当 T = ∅ 时,VLATTACK 将退化为逐块相似性攻击(BSA),并迭代更新 I′ N − Ns 个步骤。最后,VLATTACK 基于单模态或跨模态攻击生成对抗性样本。 VLATTACK的总体方案如算法1所示。
在这里插入图片描述

实验

  • 多模态结果
    所提出的 VLATTACK 明显优于所有基线。与每个数据集上的最佳基线相比,VLATTACK 在 ViLT 上平均增益为 29.61%,在 BLIP 上平均增益为 24.20%,在 Unitab 上平均增益为 16.48%,在 OFA 上平均增益为 30.84%。当仅添加图像扰动时,我们提出的 BSA 在 ViLT 和 BLIP 上平均优于最佳基线 15.94%。 BSA 相对于 Unitab 和 OFA 的平均涨幅也分别为 12.12% 和 14.13%。如前所述,多模态任务中的文本数据由短语或仅几个单词组成。因此,文本攻击在大多数多模式数据集上表现不佳。
  • 单模态结果
    BSA 在这两项任务上的所有指标都取得了最佳性能。
  • 众包系统验证
    我们还进行了人类评估研究,以全面验证我们提出的方法的合理性。该实验是使用 Amazon Mechanical Turk (MTurk) 根据 ViLT 模型在 VQAv2 数据集上输出的结果进行开发的。我们选择的基线是 SSP,因为它在我们的实验中优于其他基线,如表 1 所示。具体来说,我们随机采样了 650 个示例,并在攻击后存储了生成的答案。为了验证这两种方法的性能,我们将原始图像-问题对和相应生成的答案发送到 MTurk 系统。我们为工人提供三种选择,包括“肯定正确”、“不确定”和“肯定错误”。成功的攻击意味着工作人员将为两人贴上“绝对错误”的标签。为了使注释更加准确和可靠,每对由三名工作人员进行注释,我们将多数选择报告为最终的人类评估结果。人类评估结果的统计数据如表4所示。我们可以观察到,所提出的VLAtack仍然明显优于最强的基线SSP,从而从人类感知的角度证明了其鲁棒性和有效性。
  • 消融研究
  • 在我们的模型设计中,我们提出了一种新的用于攻击图像模态的分块相似性攻击(BSA)和一种用于一起攻击图像文本模态的交互式交叉搜索攻击(ICSA)。我们使用以下方法来评估每个组件的有效性。结果如图5所示。“IE”/“TE”表示我们在计算式(1)中的损失时仅使用图像/Transformer编码器。 (2)。 “BSA”使用两种编码器。为了公平比较,我们设置迭代 Ns = 40。接下来,“BSA+BA”意味着在使用 BSA 攻击图像后,我们使用 BERT-Attack 攻击文本(算法 1 第 1-15 行)。 “BSA+BA+Q”表示通过用每对(I′,T′i)查询黑盒任务,用简单的查询策略替换ICSA,其中T′i来自扰动的文本候选列表T。我们可以观察到,对于图像攻击,IE 和 TE 在不同的任务中发挥着重要作用,但总的来说,BSA(= IE + TE)优于它们。添加文本攻击,BSA+BA 的性能优于 BSA。这一比较结果表明这两种方式都很脆弱。 BSA+BA+Q 的性能比 BSA+BA 好,但比 VLATTACK 差,这证实了进行交互式交叉搜索攻击的必要性和合理性。其他数据集的更多结果显示在附录 C 中。
  • 参数敏感性分析我们讨论了VLATTACK中N和Ns不同迭代次数的影响。所有实验均在 VQAv2 数据集和 ViLT 模型上进行。总迭代次数N设置为10至80,Ns设置为N 2 。如图 6(a) 所示,通过将 N 从 10 步增加到 20 步,ASR 性能得到显着提高,然后在 N = 40 时达到最佳结果。接下来我们研究不同初始迭代次数 Ns 的影响。我们测试Ns从5到40,但总迭代次数N固定为40。如图6(b)所示,当Ns为5时,ASR分数达到顶峰,并且通过不断增大Ns平滑下降。考虑到较小的初始迭代次数 Ns 会增加文本扰动的比率,我们将 Ns 设置为 20,以便在实验中获得攻击性能和生成的对抗样本的自然度之间的最佳权衡。
  • 逐块相似性攻击。我们通过 ViLT 模型在 VQAv2 数据集上微调下游模型 S 中的注意力图,进一步可视化我们提出的 BSA 的效果。如图7所示,注意力区域从“夹克”转移到背景,这表明用于回答问题的表示从不相关的图像区域中提取信息。我们还将BSA与各种优化方法相结合来验证其泛化能力。实验结果见附录 D。
  • case study
    *我们使用可视化进行案例研究,以显示 VLATTACK 对于多模态和单模态任务的有效性,如图 8 所示。对于图 8(a) 中的多模态任务,当通过以下方式攻击单一模态时,所有显示样本的预测保持不变BSA。然而,使用 VLATTACK 扰动这两种模式成功地修改了预测。在 REC 任务中可以观察到一个有趣的发现,其中微调模型 S 通过拉伸和变形原始边界框预测来输出错误的预测。所提出的 VLATTACK 还在图 8(b) 中显示了其在单模态任务上的强大功能。例如,在图像字幕任务中,微调模型在收到“马”的对抗图像后生成“人”的描述,这是完全不相关的。更多案例研究见附录 E

结论

  • 15
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值