
摘要
提示学习(Prompt Learning)已成为微调基础模型(如CLIP)以应对各类下游任务的一种高效替代方案。传统上,提示通过特定任务的目标函数(如交叉熵损失)进行训练,往往容易过度拟合下游数据分布,难以从冻结的CLIP模型中捕捉任务无关的通用特征,从而导致模型原始的泛化能力丧失。为解决这一问题,本文提出一种名为PromptSRC(Prompting with Self-regulating Constraints)的自正则化提示框架。PromptSRC通过三重机制引导提示同时优化任务特定与任务无关的通用表征:(a)通过与冻结模型之间的相互一致性最大化来约束提示的表征;(b)在训练轨迹上对提示进行自集成(self-ensemble),以编码其互补优势;(c)通过文本多样性约束,缓解视觉分支与样本多样性不平衡带来的影响。据我们所知,这是首个通过联合关注预训练模型特征、提示训练轨迹以及文本多样性来避免过拟合的提示学习正则化框架。PromptSRC明确引导提示学习一个在下游任务上表现优异且不损害CLIP原始泛化能力的表征空间。我们在4个基准数据集上进行了大量实验,结果表明,PromptSRC在整体性能上优于现有方法。相关代码与预训练模型已公开发布于:https://github.com/muzairkhattak/PromptSRC。
代码仓库
muzairkhattak/promptsrc
官方
pytorch
GitHub 中提及
asif-hanif/vafa
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| prompt-engineering-on-caltech-101 | PromptSRC | Harmonic mean: 96.02 |
| prompt-engineering-on-dtd | PromptSRC | Harmonic mean: 71.75 |
| prompt-engineering-on-eurosat | PromptSRC | Harmonic mean: 82.32 |
| prompt-engineering-on-fgvc-aircraft | PromptSRC | Harmonic mean: 40.15 |
| prompt-engineering-on-food-101 | PromptSRC | Harmonic mean: 91.10 |
| prompt-engineering-on-imagenet | PromptSRC | Harmonic mean: 74.01 |
| prompt-engineering-on-imagenet-a | PromptSRC | Top-1 accuracy %: 50.90 |
| prompt-engineering-on-imagenet-r | PromptSRC | Top-1 accuracy %: 77.80 |
| prompt-engineering-on-imagenet-s | PromptSRC | Top-1 accuracy %: 49.55 |
| prompt-engineering-on-imagenet-v2 | PromptSRC | Top-1 accuracy %: 64.35 |
| prompt-engineering-on-oxford-102-flower | PromptSRC | Harmonic mean: 85.95 |
| prompt-engineering-on-oxford-iiit-pet-dataset | PromptSRC | Harmonic mean: 96.30 |
| prompt-engineering-on-stanford-cars-1 | PromptSRC | Harmonic mean: 76.58 |
| prompt-engineering-on-sun397 | PromptSRC | Harmonic mean: 80.52 |
| prompt-engineering-on-ucf101 | PromptSRC | Harmonic mean: 82.74 |