CVPR2025 | TAPT:用于视觉语言模型鲁棒推理的测试时对抗提示调整
TAPT: Test-Time Adversarial Prompt Tuning for Robust Inference in Vision-Language Models
- 摘要-Abstract
- 引言-Introduction
- 相关工作-Related Work
- 提出的方法-Proposed Method
- 预备知识-Preliminaries
- 测试时对抗提示调整-Test-Time Adversarial Prompt Tuning (TAPT)
- 实验-Experiments
- 实验设置-Experimental Setup
- 主要结果-Main Results
- 消融实验-Ablation Studies
- 局限性-Limitation
- 结论-Conclusion
论文链接
本文 “TAPT: Test-Time Adversarial Prompt Tuning for Robust Inference in Vision-Language Models” 提出一种测试时对抗提示调整(TAPT)方法,以增强视觉语言模型(VLMs)在推理时的鲁棒性。通过在 11 个基准数据集上的实验,证明 TAPT 能有效提升模型对抗攻击的能力,且保持在干净样本上的性能。
摘要-Abstract
Large pre-trained Vision-Language Models (VLMs) such as CLIP have demonstrated excellent zero-shot generalizability across various downstream tasks. However, recent studies have shown that the inference performance of CLIP can be greatly degraded by small adversarial perturbations, especially its visual modality, posing significant safety threats. To mitigate this vulnerability, in this paper, we propose a novel defense method called Test-Time Adversarial Prompt Tuning (TAPT) to enhance the inference robustness of CLIP against visual adversarial attacks. TAPT is a test-time defense method that learns defensive bimodal (textual and visual) prompts to robustify the inference process of CLIP. Specifically, it is an unsupervised method that optimizes the defensive prompts for each test sample by minimizing a multi-view entropy and aligning adversarial-clean distributions. We evaluate the effectiveness of TAPT on 11 benchmark datasets, including ImageNet and 10 other zero-shot datasets, demonstrating that it enhances the zero-shot adversarial robustness of the original CLIP by at least 48.9% against AutoAttack (AA), while largely maintaining performance on clean examples. Moreover, TAPT outperforms existing adversarial prompt tuning methods across various backbones, achieving an average robustness improvement of at least 36.6%.
像CLIP这样的大规模预训练视觉语言模型(VLMs)在各种下游任务中展现出了卓越的零样本泛化能力。然而,最近的研究表明,CLIP的推理性能会因微小的对抗扰动而大幅下降,尤其是在视觉模态方面,这构成了重大的安全威胁。为了缓解这一漏洞,在本文中,我们提出了一种名为测试时对抗提示调整(TAPT)的新型防御方法,以增强CLIP在面对视觉对抗攻击时的推理鲁棒性。TAPT是一种测试时防御方法,它学习防御性的双模态(文本和视觉)提示,以强化CLIP的推理过程。具体而言,这是一种无监督方法,通过最小化多视图熵并对齐对抗-干净分布,为每个测试样本优化防御性提示。我们在11个基准数据集上评估了TAPT的有效性,这些数据集包括ImageNet和其他10个零样本数据集。结果表明,TAPT在对抗AutoAttack(AA)时,将原始CLIP的零样本对抗鲁棒性提高了至少48.9%,同时在很大程度上保持了在干净样本上的性能。此外,TAPT在各种骨干网络上均优于现有的对抗提示调整方法,平均鲁棒性提升至少36.6%。
引言-Introduction
这部分内容主要介绍了视觉语言模型(VLMs)的应用、面临的对抗攻击问题,现有防御方法的局限性,引出了本文提出的测试时对抗提示调整(TAPT)方法,具体如下:
- 视觉语言模型的应用与挑战:大规模图像文本对数据集预训练的VLMs在计算机视觉、医疗图像分析和机器人等众多领域应用广泛。但研究发现,输入图像中微小的对抗扰动就能显著降低VLMs的推理性能,在下游应用中存在严重安全风险。
- 现有防御方法的局限:对抗训练通过添加对抗样本增强模型鲁棒性,但成本高昂,限制了其在大规模VLMs中的应用。近期的对抗提示调整(APT)方法,虽为对抗训练提供了更具成本效益的替代方案,但存在可学习提示依赖分布、需要任务特定注释数据、损害模型整体泛化性能等问题,难以实现零样本对抗鲁棒性。
- TAPT方法概述:为应对零样本对抗鲁棒性挑战,本文提出TAPT。该方法在推理阶段,基于测试样本动态调整鲁棒提示,通过最小化多视图熵和对抗-干净嵌入对齐这两个无监督损失来学习防御提示,且无需特定任务训练集或注释。
- 研究贡献:提出TAPT这一新型测试时防御方法,增强预训练VLMs的零样本推理鲁棒性;引入对抗-干净对齐损失,提升对抗鲁棒性的同时保持干净样本准确率;在11个数据集上进行实验,结果表明TAPT显著优于现有APT基线方法 。
图1. 使用不同提示的推理过程。顶部:使用手工制作的提示进行推理无法识别出“猫”这一类别;中间:使用由对抗提示调整(APT)方法调整的固定提示无法识别所有对抗图像;底部:使用针对每张图像优化的测试时提示能够产生准确的识别结果。
相关工作-Related Work
该部分主要回顾了与预训练视觉语言模型(VLMs)相关的对抗攻击和防御方法,以及测试时适应技术,具体内容如下:
- 预训练VLMs的对抗攻击:根据威胁模型,对预训练VLMs的对抗攻击可分为白盒攻击和黑盒攻击。白盒攻击中攻击者可访问模型参数来计算对抗梯度;黑盒攻击则限制攻击者只能查询模型输出。传统单模态攻击可直接用于攻击预训练VLMs的图像编码器,如PGD、DI和AutoAttack等。此外,还有针对VLMs图像和文本编码器漏洞的多模态攻击,像Co-Attack、SGA和VLATTACK等。
- 预训练VLMs的对抗防御:对抗训练/调整是常用的防御策略,主要分为对抗对比调整和对抗提示调整。对抗对比调整聚焦于增强骨干模型的对抗鲁棒性,如TeCoA、FARE、PMG-AFT和MMCoA等方法。对抗提示调整通过调整文本提示提升VLMs的对抗鲁棒性,如AdvPT、APT和FAP等。而本文提出的是一种在推理时动态优化提示且与任务无关的新型测试时防御方法。
- 测试时适应技术:测试时适应(TTA)方法旨在通过适应单个测试样本或批次,解决训练和测试数据分布不一致的问题,提高预训练模型的泛化性能,如早期基于更新批归一化统计的方法,以及后续的TENT、MEMO、CoTTA、EATA、TPT和PromptAlign等。与现有主要关注干净样本性能的TTA方法不同,本文的TAPT专注于增强零样本对抗鲁棒性。
提出的方法-Proposed Method
预备知识-Preliminaries
这部分内容主要介绍了研究中涉及的威胁模型、CLIP模型以及对抗提示调整(APT)的相关基础知识,为理解后续提出的TAPT方法做铺垫,具体内容如下:
- 威胁模型:假设处于白盒威胁模型下,敌手对目标模型的架构和参数有全面了解,能在推理前基于对抗梯度直接扰动测试图像。而模型所有者可采取防御策略保护模型,本研究聚焦于保障CLIP零样本推理的安全性,此时模型所有者无法获取下游应用的特定任务训练数据或注释。
- CLIP:CLIP包含图像编码器 I I I(参数为 θ I \theta_{I} θI)和文本编码器 T T T(参数为 θ T \theta_{T} θT) 。在 K K K 类分类问题中,图像 x x x 与 “a photo of a ” 格式的类标签相关联。对于干净样本 x x x,白盒对抗攻击旨在生成对抗样本 x ′ x' x′,通过在 ∥ x ′ − x ∥ ∞ ≤ ϵ \left\| x'-x\right\| _{\infty} \leq \epsilon ∥x′−x∥∞≤ϵ 的约束下最大化模型损失 L ( I ( x ′ ) , T ( y ) ) \mathcal{L}\left(\mathcal{I}\left(x'\right), \mathcal{T}(y)\right) L(I(x′),T(y)) 来实现,其中 ϵ \epsilon ϵ 为扰动预算。
- 对抗提示调整(APT):APT在提示调整过程中应用对抗训练以增强对抗鲁棒性,主要用于保护CLIP的视觉组件。它不再依赖手工制作的提示,而是从训练数据中学习鲁棒提示。APT有三种提示设计:仅视觉提示、视觉 - 语言联合提示、视觉 - 语言独立提示。在优化时,通过最小化在下游训练数据集上的最大损失,来对齐干净文本和对抗图像的嵌入,优化的提示 P = P v , P t ∈ R L × D P={P_{v}, P_{t}} \in \mathbb{R}^{L ×D} P=Pv,Pt∈RL×D,分别对应视觉和文本提示,在测试时,调整后的提示固定用于不同测试图像的推理。
图2. CLIP和不同对抗提示调整方案的示意图。(a) 原始的CLIP;(b)-(d) 具有三种不同提示设计的对抗提示调整:视觉提示(b)、视觉-语言联合提示(c)和视觉-语言独立提示(d)。
测试时对抗提示调整-Test-Time Adversarial Prompt Tuning (TAPT)
这部分详细介绍了测试时对抗提示调整(TAPT)方法,包括其框架概述、基于多视图熵的样本选择和对抗-干净嵌入对齐,具体内容如下:
图3. 我们提出的TAPT方法概述:给定一个对抗图像,TAPT会生成该图像的多个增强视图,并仅保留那些平均预测概率熵较低的视图。在推理过程中,TAPT通过最小化这些选定视图的多视图熵来优化提示,同时将它们的嵌入分布与从公共数据集(ImageNet)预计算的对抗-干净统计信息对齐。
-
框架概述:TAPT包含基于多视图熵的样本选择和对抗-干净嵌入对齐两个主要模块。对于给定的测试图像 x x x,先通过随机增强 A A A 生成 M M M 个增强视图,然后基于多视图熵的样本选择模块选择预测概率平均熵最低的前 K K K 个视图。在推理过程中,TAPT通过最小化多视图熵并执行对抗-干净对齐来优化提示 P P P,且在处理每个新测试样本或批次前将提示重置为初始状态,完整流程见算法1。
-
基于多视图熵的样本选择:参考先前研究,通过设置阈值 τ \tau τ 的选择滤波器,丢弃无效的增强视图,仅保留低熵(高置信度预测)的增强视图,记为 H τ ( x ) H_{\tau}(x) Hτ(x). TAPT通过最小化所选视图上平均预测概率的多视图熵来优化提示,公式为 L e n t r o p y = − ∑ i = 1 K p ‾ ( y i ∣ H τ ( x ) , P ) l o g p ‾ ( y i ∣ H τ ( x ) , P ) \mathcal{L}_{entropy }=-\sum_{i=1}^{K} \overline{p}\left(y_{i} | \mathcal{H}_{\tau}(x), P\right) log \overline{p}\left(y_{i} | \mathcal{H}_{\tau}(x), P\right) Lentropy=−∑i=1Kp(yi∣Hτ(x),P)logp(yi∣Hτ(x),P),该优化促使模型通过针对给定实例调整提示来实现一致的预测。
-
对抗-干净嵌入对齐:对抗测试图像会使图像编码器生成的嵌入与干净图像的嵌入产生偏差,误导模型。为解决此问题,TAPT将测试图像嵌入的均值和方差与公共数据集(如ImageNet)的预计算统计信息对齐。先计算当前嵌入的均值和方差,再分别与使用鲁棒提示 P a d v P_{a d v} Padv(通过APT在公共数据上获得)和干净提示 P c l e a n P_{clean } Pclean(通过标准提示调整在公共数据上获得)预计算的公共数据集嵌入的均值和方差对齐,对齐损失分别为 L a d v \mathcal{L}_{adv } Ladv 和 L c l e a n \mathcal{L}_{clean } Lclean。最终的TAPT损失函数为 L T A P T = L e n t r o p y + α L a d v + ( 1 − α ) L c l e a n \mathcal{L}_{TAPT }=\mathcal{L}_{entropy }+\alpha \mathcal{L}_{adv }+(1-\alpha) \mathcal{L}_{clean } LTAPT=Lentropy+αLadv+(1−α)Lclean,其中 α \alpha α 为超参数。通过这种方式,在增强对抗鲁棒性的同时保持干净样本的准确性,且为保证推理效率,TAPT每次推理仅进行一步提示调整。
实验-Experiments
实验设置-Experimental Setup
该部分详细介绍了实验设置,包括所使用的数据集、模型、攻击配置、防御配置以及具体的实现细节,为后续实验结果的可靠性和有效性提供了保障。
- 数据集和模型:实验选用11个基准数据集,涵盖ImageNet测试集以及Caltech101、DTD等10个零样本测试数据集。模型方面,聚焦于CLIP模型,具体采用ViT-B/16和ViT-B/32两种架构,并使用手工制作的提示作为文本输入,不同数据集对应不同的提示,相关信息在附录中给出。
- 攻击配置:为评估CLIP的零样本对抗鲁棒性,针对白盒和黑盒攻击展开测试。白盒攻击采用PGD - 100,黑盒攻击采用DI,同时使用更强力的AutoAttack。攻击的超参数依据TorchAttacks库进行配置,PGD - 100和DI攻击均设置了 ϵ = 1 / 255 、 2 / 255 \epsilon=1 / 255、2 / 255 ϵ=1/255、2/255 和 4 / 255 4/255 4/255 这三种扰动预算。
- 防御配置:对于现有的APT方法,采用其原始配置,并利用PGD - 2攻击(步长 α = 1 / 255 \alpha=1 / 255 α=1/255)生成对抗示例。在此基础上,开发了具有不同提示设计的更强大APT方法版本,即对抗视觉提示调整(APT - V)、对抗视觉 - 语言联合提示调整(APT - VLJ)和对抗视觉 - 语言独立提示调整(APT - VLI)。
- 实现细节:TAPT方法中,在ImageNet上使用APT初始化防御提示,训练100个epoch,批次大小为32,学习率为0.035。通过随机裁剪和水平翻转生成63个测试样本的变化,加上原始样本共64个,从中选取前10%最具置信度(熵最低)的预测结果计算平均熵。对于对抗 - 干净对齐,分别使用APT和标准PT从公共数据集(ImageNet)预计算嵌入统计信息。使用AdamW优化器,学习率为 5 × 1 0 − 4 5 ×10^{-4} 5×10−4,对抗 - 干净比例因子 α = 0.5 \alpha=0.5 α=0.5,在单个NVIDIA A100 GPU上对防御提示进行优化。
主要结果-Main Results
这部分主要呈现了TAPT方法的实验主要结果,通过对比不同防御方法,评估了TAPT在零样本对抗鲁棒性和零样本干净准确率方面的表现,具体内容如下:
- 零样本对抗鲁棒性:在三种提示设计(视觉仅提示、视觉 - 语言联合提示、视觉 - 语言独立提示)下,对比TAPT与现有APT方法。结果显示,在无防御时,白盒和黑盒攻击(如PGD - 100、DI、AutoAttack)使用微小噪声(
ϵ
=
1
/
255
\epsilon=1 / 255
ϵ=1/255)就能大幅降低准确率,其中AutoAttack攻击效果最强。TAPT在对抗AutoAttack攻击时表现最佳,在ViT - B/16和ViT - B/32架构下,针对不同提示设计,均显著提升了零样本对抗鲁棒性,例如在ViT - B/16下,视觉仅提示设计提升32.6%,视觉 - 语言联合提示设计提升25.9%,视觉 - 语言独立提示设计提升36.6%;在ViT - B/32下也有类似的显著提升。同时,TAPT在对抗PGD - 100和DI攻击时同样表现出色。此外,研究还发现:融入文本提示通常能提升不同数据集上的零样本对抗鲁棒性;视觉 - 语言联合提示在源域(ImageNet)上增强鲁棒性更有效;视觉 - 语言独立提示设计在增强零样本对抗鲁棒性方面比视觉 - 语言联合提示设计更有效。
表1. 在扰动预算 ϵ = 1 / 255 \epsilon = 1/255 ϵ=1/255 的情况下,从ImageNet到下游数据集的不同防御方法的零样本对抗鲁棒性(%),针对PGD、DI和自动攻击(AA)进行评估。基线APT方法(APT-V、APT-VLJ和APT-VLI)在ImageNet上以16样本设置进行调整,然后在其他10个数据集上进行评估。绿色向上箭头(↑)突出显示了我们的TAPT相对于基线方法的性能提升。 - 零样本干净准确率:在ViT - B/16架构下,对比TAPT与APT基线方法(APT - V、APT - VLJ和APT - VLI)的零样本干净准确率。APT基线方法在ImageNet上训练后在10个下游数据集测试,TAPT仅基于ImageNet计算鲁棒统计信息。结果表明,TAPT在所有11个数据集上均实现了更优的干净样本性能,具有更强的泛化能力。尽管TAPT的视觉 - 语言联合提示设计在部分数据集(如Pets、Aircraft和Flowers)上准确率略有下降,但仍具有竞争力。总体而言,TAPT在三种提示设计上均优于APT,平均准确率提升分别为9.6%、0.8%和10.4%,说明TAPT在提升对抗鲁棒性的同时,能较好地保持干净样本准确率。
表2. 从ImageNet到下游数据集的不同防御方法的零样本干净准确率(%),这些方法包括对抗提示调整(APT)的基线方法(APT-V、APT-VLJ和APT-VLI)以及我们的测试时对抗提示调整(TAPT)方法。骨干网络为ViT-B/16。最优结果以粗体显示。
消融实验-Ablation Studies
这部分主要对TAPT方法进行了消融研究,探究了测试时适应步骤数、不同扰动预算以及TAPT重置间隔对模型性能的影响,具体内容如下:
- TAPT步骤数:研究测试时适应步骤数对TAPT鲁棒准确率的影响,在PGD - 100攻击下,对比不同步骤数(0、1、2和4)的情况。结果显示,“step =0” 代表仅通过APT获得的对抗鲁棒性基线性能,多数数据集和提示设计下,鲁棒准确率随TAPT步骤数增加而提高,从0步到1步的提升尤为显著,不过不同数据集对步骤数的敏感度存在差异,如EuroSAT数据集性能很快稳定,而ImageNet和DTD等数据集随着步骤增加仍有性能提升。此外,TAPT在不同提示设计下均能带来性能提升,且增加的推理时间较少,如视觉仅提示、视觉 - 语言联合提示、视觉 - 语言独立提示下每张图像的额外推理时间分别为0.095s、0.166s和0.165s,表明TAPT在提升鲁棒准确率的同时保持较低时间成本。
图4. 我们的TAPT方法在不同测试时适应步骤(即 {0, 1, 2, 4})下的对抗鲁棒性(%)。结果是针对ViT-B/16和ViT-B/32架构在PGD-100攻击下报告的。 - 不同扰动预算:评估TAPT在不同攻击强度(由扰动预算
ϵ
\epsilon
ϵ 定义,分别为1/255、2/255和4/255)下的鲁棒性,TAPT步骤数设置为1、2和4。结果表明,随着
ϵ
\epsilon
ϵ 增大,攻击更强,鲁棒准确率下降,但TAPT在所有数据集和
ϵ
\epsilon
ϵ 值下都能提升鲁棒准确率。
图5. TAPT在不同扰动预算 ϵ ϵ ϵ(1/255、2/255和4/255)和TAPT步骤(1、2和4)下的零样本对抗鲁棒性(纵轴)。 - TAPT重置间隔:TAPT默认在处理每个测试样本前将提示重置为初始状态,也探索了不同重置间隔策略,包括间隔为1到32以及整个推理过程不重置(“reset=all”)的情况。实验发现,连续提示适应(不频繁重置)可进一步提高鲁棒准确率,但存在潜在中毒攻击风险。为确保测试时防御的可靠性,推荐采用每个样本重置策略(“reset=1”),优先保障对抗潜在攻击的鲁棒性,而非追求连续TAPT带来的微小收益。
表3. TAPT在ImageNet和其他10个零样本数据集上,不同重置间隔下的零样本对抗鲁棒性(%)。“reset = N”表示每处理 N 个测试样本后重置提示。
局限性-Limitation
这部分主要阐述了TAPT作为一种测试时防御方法存在的局限性,并指出了未来研究可以探索的方向,具体内容如下:
- 模态和技术局限:TAPT目前主要通过在公共数据集上,将对抗图像嵌入与预计算的公共数据统计信息对齐,来应对图像模态的攻击。在未来的工作中,有必要探索额外的模态对齐方式和加速技术,这将有助于推动TAPT在工业应用中的部署。因为仅关注图像模态的防御具有一定的局限性,多模态对齐可以更全面地提升模型在复杂环境下的防御能力,而加速技术则能提高TAPT的运行效率,使其更符合工业应用对实时性的要求。
- 任务局限:当前TAPT的应用主要集中在图像识别任务上。然而,在先进模型如GPT-4V和Gemini中,视觉推理和视觉问答等任务具有更广泛的应用前景。因此,将TAPT扩展到这些更广泛的任务领域,是未来研究一个很有潜力的方向。这不仅可以拓展TAPT的应用范围,还能为多模态交互领域的安全性和鲁棒性提供更多保障。
结论-Conclusion
这部分总结了TAPT方法的核心成果、优势,并对未来研究方向做出展望,具体如下:
- 研究成果:提出TAPT这一测试时防御方法,通过最小化多视图熵和对抗-干净对齐,为每个测试样本调整防御性双模态提示,有效保障CLIP零样本推理。在11个基准数据集的全面评估中,TAPT显著增强了CLIP对各类攻击的零样本对抗鲁棒性,同时保持了干净样本上的准确率。
- 方法优势:相比训练时对抗提示调整(APT)方法,TAPT具有多项优势。它属于无监督方法,不依赖特定任务的训练数据;能针对每个样本进行提示自适应调整;在零样本对抗鲁棒性和干净样本准确率上表现更优;与下游任务无关,适用场景广泛;并且方法轻量化,资源消耗少。
- 未来展望:未来研究可探索测试时防御在不同模态间的可扩展性。进一步拓展TAPT在多模态领域的应用,提升其在复杂多模态攻击场景下的防御能力,以适应不断发展的人工智能应用需求。