
摘要
提示学习(Prompt Learning)是将强大的视觉-语言基础模型(如CLIP)适配至下游数据集的一种高效且热门的方法,其通过仅使用少量样本微调可学习的提示向量实现模型适应。然而,尽管提示学习在域内数据上表现优异,其在面对未见类别和未见领域时仍面临显著的泛化挑战。现有部分提示学习方法尝试通过为不同标记(tokens)或不同领域自适应生成差异化的提示来缓解该问题,但往往忽视了所学习提示在未见领域上的泛化能力。为此,本文提出一种新颖的提示学习范式——MetaPrompt,该方法直接生成具有域不变性(domain invariant)的提示,从而实现对未见领域的有效泛化。具体而言,我们设计了一种双模态提示调优网络,能够同时基于图像和文本模态输入生成提示。通过引入一种新颖的非对称对比损失(asymmetric contrastive loss),利用预训练视觉-语言模型原始输出的表示作为监督信号,有效增强所学习提示的泛化能力。更重要的是,我们提出一种基于元学习的提示调优算法,显式约束针对某一特定领域或类别的任务专属提示,同样能在其他领域或类别上取得良好性能。在11个基础到新类别(base-to-new)泛化任务数据集以及4个域泛化(domain generalization)数据集上的大量实验表明,所提方法在各项任务中均显著且一致地优于现有先进方法。
代码仓库
Vill-Lab/2024-TIP-MetaPrompt
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| prompt-engineering-on-caltech-101 | MetaPrompt | Harmonic mean: 96.32 |
| prompt-engineering-on-dtd | MetaPrompt | Harmonic mean: 68.35 |
| prompt-engineering-on-eurosat | MetaPrompt | Harmonic mean: 83.38 |
| prompt-engineering-on-fgvc-aircraft | MetaPrompt | Harmonic mean: 38.24 |
| prompt-engineering-on-food-101 | MetaPrompt | Harmonic mean: 91.29 |
| prompt-engineering-on-imagenet | MetaPrompt | Harmonic mean: 74.02 |
| prompt-engineering-on-oxford-102-flower | MetaPrompt | Harmonic mean: 84.52 |
| prompt-engineering-on-oxford-iiit-pet-dataset | MetaPrompt | Harmonic mean: 96.26 |
| prompt-engineering-on-stanford-cars-1 | MetaPrompt | Harmonic mean: 75.48 |
| prompt-engineering-on-sun397 | MetaPrompt | Harmonic mean: 80.62 |
| prompt-engineering-on-ucf101 | MetaPrompt | Harmonic mean: 81.35 |