摘要
像CLIP这样的大型预训练视觉语言模型已经显示出良好的泛化能力,但在专业领域(
例如
,卫星图像)或细粒度分类(
例如
,汽车型号)中可能会遇到困难,在这些领域中,视觉概念在预训练期间未被看到或代表不足。 提示学习提供了一个参数高效的微调框架,即使在标注数据有限的情况下,也可以将CLIP适应下游任务。 在本文中,我们通过提取自然语言提示(人工或LLM生成的)中的文本知识来改进提示学习,为那些代表不足的概念提供丰富的先验知识。 我们首先通过学习的提示聚合器获得与每个输入图像对齐的提示“摘要”。 然后,我们联合训练一个提示生成器,该生成器经过优化,可以产生一个提示嵌入,该嵌入同时保持接近聚合摘要并最小化任务损失。 我们将这种提示嵌入称为
A
ggregate-and-
A
dapted
P
rompt
E
mbedding (
AAPE
)。 AAPE已被证明能够泛化到不同的下游数据分布和任务,包括视觉语言理解任务(
例如
,少样本分类、VQA)和生成任务(图像字幕),其中AAPE取得了具有竞争力的性能。 我们还表明,AAPE对于处理非规范和OOD示例特别有用。 此外,AAPE学习消除了基线所需的基于LLM的推理成本,并且随着数据和LLM模型大小的增加而更好地扩展。
1
引言
大多数现有的视觉语言任务依赖于像CLIP
[40]
这样的大型预训练模型,这些模型通常使用少量标记数据(与网络规模的预训练数据相比)适应下游任务。 许多研究(
[67, 68]
)表明,这很可能在特殊领域(例如卫星图像和汽车型号或花卉种类的细粒度分类)中获得较差的泛化性能。 这种过拟合行为是预训练和下游任务中
尾部类别概念
数据有限的结果。 预训练和下游数据之间的领域差距进一步加剧了泛化问题。 例如,在预训练期间,CLIP可能无法看到足够的图像-文本对来识别不同的汽车型号。 这使得在细粒度汽车模型上的下游泛化变得困难,尤其是在低数据场景中。
在本文中,我们研究了如何使用
纯文本知识
来增强CLIP在不同数据分布和任务上的下游泛化能力,特别关注少样本和OOD任务。 请注意,最近的一些工作已经探索了类似的想法,这些工作利用大型语言模型 (LLM) 中的隐式文本知识来辅助视觉语言任务。 例如,在
[56, 48]
中,GPT-2/3
[5]
用于为视觉问答 (VQA) 和图像字幕任务生成图像描述。 而对于基于CLIP的图像分类,
[34, 55, 39]
使用GPT-3为每个类别生成自然语言属性或字幕,然后根据这些信息对图像进行分类。 尽管这些方法取得了成功,但由于在测试时使用了LLM,它们都存在推理成本大的问题。 更为关键的是,LLM生成的文本并不一定有益,因为它们可能存在噪声并且与所考虑的任务无关(参见图
1
(a)中的一个示例)。
为了解决这两个问题,我们提出了一种新的提示学习方法,该方法由与任务相关的语言先验知识增强,但在测试时不会产生任何LLM成本。 核心思想是通过蒸馏输入自适应文本知识来学习提示,这对于识别代表性不足的视觉概念特别有用。 具体来说,对于
以物体为中心的图像
的分类,我们遵循
[39]
,首先查询GPT-3以获得一组描述每个类别的自然语言提示。 而对于VQA等更复杂的任务,我们使用人工生成的图像字幕,这些字幕可以描述
多物体图像
中物体在杂乱背景下的交互。 更重要的是,在这两种情况下,我们都
学习
将收集到的参考提示聚合到单个提示嵌入中,该嵌入通过CLIP奖励进行优化,以与输入图像具有高相似度。 这使我们能够获得与图像对齐的简洁提示嵌入,从而排除了冗余和不相关的信息,
例如
,忽略了关于后视汽车图像中前照灯的提示元素。 最后,我们联合训练一个以输入图像为条件的提示生成器,以生成具有两个目标的提示嵌入:1) 保持接近聚合嵌入(
即
,来自简洁文本知识的蒸馏),2) 最小化任务损失(
即
,下游适应)。
图
1
说明了我们用于提示学习的“聚合和自适应”方法。 注意,提示聚合和蒸馏仅在学习阶段需要。 在测试阶段,我们将丢弃聚合器,并将学习到的提示生成器用作独立模块。 与先前的工作
[56, 48, 34, 55, 39]
相比,这提高了计算效率,因为我们完全消除了大语言模型 (LLM) 带来的推理成本。 我们生成的
A
ggregate-and-
A
dapted
P
rompt
E
mbedding(或
AAPE
) >)在各种下游视觉语言任务上证明非常有效。 我们展示了 AAPE 在 11 个数据集上,在不同的 OOD 泛化设置下,实现了少样本图像分类方面的新型最先进水平。 AAPE 还可以将零样本泛化到图像到文本检索、图像字幕和 VQA 等任务。 当在这些任务上微调时,AAPE 甚至实现了比最先进的视觉语言模型(
例如
,MAGMA
[11]
)更好的性能,而后者的整个图像和文本网络都需要以高昂的成本进行微调。
图 1:
聚合和自适应地利用自然语言提示中的文本知识,用于下游任务。
(a)
对于以物体为中心的图像分类,我们查询 GPT-3 以获取每个类别的提示列表,
例如
,“2012 款 Jeep Compass SUV”的汽车型号。 请注意参考提示是如何冗余的(
例如
,前两个),以及它们是如何与图像无关的(
例如
,最后一个提示)。 或者,对于 VQA 等复杂任务,我们使用人工生成的图像字幕来描述多物体图像。 对于所有任务,我们首先学习根据 CLIP 奖励将参考提示聚合到与图像对齐的“摘要”(提示嵌入)中。 然后,联合训练提示生成器以生成聚合和自适应提示嵌入 (AAPE),以便最小化 AAPE 与聚合摘要之间的距离,并为了适应目的而最小化任务损失。
(b)
在测试时,我们只保留提示生成器,而丢弃提示聚合器。 我们的 AAPE 适用于不同的视觉语言任务,并具有强大的泛化性能。
总之,我们的
主要贡献
包括:
•
一种新的提示学习方法,该方法能够提取来自人工或大语言模型 (LLM) 生成的自然语言提示中的文本知识,从而改进 CLIP 的下游泛化能力。
•
我们学习到的 AAPE 在各种下游视觉语言任务上取得了令人信服的性能,包括图像到文本检索、少样本分类、图像字幕和 VQA。
•
我们提供了一些有见地的发现,表明当少样本和非分布内 (OOD) 设置中存在代表性不足的概念,或非典型图像视图中存在模棱两可的视觉线索时,AAPE 特别有用。 AAPE 学习也具有数据效率,并且比基线方法能够更好地随着 LLM 模型大小的增加而扩展。
2
相关工作
视觉语言模型。
大规模视觉语言模型在各种下游任务上取得了显著的性能。 一种学习范式基于生成式编码器-解码器模型,这允许一种序列到序列的学习格式,可以将视觉数据与自由形式的语言提示连接起来
[2, 11, 8, 33]
。 最近的一些工作,例如 LiMBeR
[35]
,表明 LLM 也能够对视觉特征的简单线性映射进行操作。 另一种学习范式基于图像文本对的对比学习,这由 CLIP
[40]
及其众多后续工作
[18, 29, 59, 41, 46, 63, 66, 24]
推广。 然而,人们发现这两类视觉语言模型(
例如
,CLIP 和生成式 PaLI
[8]
)难以处理特殊的视觉概念或领域。 在本文中,我们关注 CLIP 并通过蒸馏语言先验知识来改进其下游泛化能力,尤其是在少样本和非分布内 (OOD) 设置下。 尽管如此,我们的方法可以应用于其他视觉语言模型,我们将这部分内容留作未来的工作。
提示学习
是一个参数高效且有效的框架,即使在低数据设置下也能微调 CLIP。 大多数提示学习方法学习文本提示向量
[67, 68]
来代替手工编写的句子提示。 其他方法展示了在图像空间
[19]
或图像和文本空间
[64, 20]
中学习提示的可能性。 为了减少提示学习过程中对已见类别的过拟合,最近的研究工作集中在新类特征合成
[52, 65]
、改进的优化
[45, 25]
和正则化
[21]
策略上。 与我们的方法更相关的是
[58, 7, 69]
,它们将学习到的提示与手工编写的提示对齐,目标是不遗忘来自人工输入的文本知识。 这些方法可以解释为仅从简短的提示模板中进行知识蒸馏的一种方式。 我们将展示,与使用大型语言模型 (LLM) 从自然语言提示中进行蒸馏相比,从这种提示模板中进行蒸馏是次优的。
在视觉任务中利用语言。
长期以来,大量工作致力于利用语言来辅助视觉或多模态任务。 一类方法依赖于外部自然语言数据集来检索图像类别的文本知识。 例如,
[6, 44]
展示了使用从WordNet
[36]
和ImageNet-Wiki
[6]
检索到的类别描述改进ImageNet分类的结果。 最近的工作使用大型语言模型 (LLM) 为下游任务生成文本。 GPT-3用于
[56, 48]
帮助完成视觉问答 (VQA) 和图像字幕任务。 GPT-3也用于
[34, 55, 39]
为基于CLIP的分类生成类别属性或字幕。 不幸的是,所有这些先前的工作都存在与任务无关的噪声文本问题。 在本文中,我们学习将大型语言模型 (LLM) 生成的文本适应目标任务,但不会产生任何由大型语言模型 (LLM) 引起的推理成本。
3
方法
我们用于提示学习的“聚合与适应”方法包含三个关键组成部分:1)针对每张图像或类别生成自然语言提示;2)学习与输入图像对齐的聚合提示嵌入;3)学习为下游任务生成聚合与适应提示嵌入 (AAPE)。 下面,我们将详细介绍每个组成部分。 请注意,我们的方法基于 CLIP
[40]
,但可以轻松应用于其他类似 CLIP 的视觉语言模型。
3.1
生成自然语言提示
提示工程。
对于基于 CLIP 的图像分类,标准方法需要一组手写的提示,
例如
,“视频游戏中一个
{
}
”和“一张
{
}
的黑暗照片”,这些提示用类别名称补充完整。 然而,这代价高昂,因为需要为每个数据集手工构建不同的提示模板(
例如
,
[40]
中 ImageNet 的 80 个),这需要对目标领域过多的预备知识。 此外,此类提示模板缺乏区分细粒度类别的描述性细节。
大语言模型 (LLM) 生成的提示。
对于图像分类,我们利用大语言模型中的丰富知识来为给定类别生成自然语言提示。 使用大语言模型的一个好处是能够生成任意数量的提示,而无需依赖任何领域知识。 特别地,我们遵循 CuPL 方法
[39]
并以可扩展的方式查询 GPT-3
[5]
以获得提示集。 具体来说,使用一些
大语言模型提示
查询 GPT-3,例如“描述一个
{
}
的样子”和“如何识别一个
{
}
?”。 然后,对于每个大语言模型提示,GPT-3 使用 0.99 的高温生成 10 个参考提示,以提高多样性。 图
1
(a) 显示了特定车型“2012 款 Jeep Compass SUV”的一些示例提示。 请注意,参考提示如何指定汽车在其时尚外观中的区分特征。 在我们研究中考虑的11个分类数据集上,我们遵循
[39]
中的完整生成设置:对于每个数据集,我们使用一组不同的LLM提示(2到9个之间),从而为每个类别生成20到90个参考提示。
图2:
用于ImageNet类别的LLM生成的图像提示,以及COCO和Flickr30k数据集上手工构建的图像标题。 注意,ImageNet主要包含
以物体为中心的图像
,背景相对干净,并且LLM生成的图像提示可以描述给定类别的独特特征。 而COCO和Flickr30k包含
多物体图像
,背景杂乱,手工构建的标题可以表示不同的物体关系。
人工生成的图像标题。
如图
2
所示,LLM生成的逐类提示主要适用于分类任务,其中通常包含背景干净的以物体为中心的图像。 对于更复杂的视觉语言任务(如VQA),需要更深入地理解具有不同物体交互和杂乱背景的多物体场景。 为了捕捉描述多物体图像的文本知识,我们使用来自图像文本数据集的图像标题作为自然语言提示的来源。 在这里,我们使用包含每张图像5个手工标注标题的COCO数据集
[31]
。 结果将表明,我们基于COCO学习到的提示嵌入足以推广到三个困难的视觉语言任务(图像到文本检索、图像字幕和VQA),这些任务具有不同的数据分布。
3.2
输入自适应提示聚合器
LLM生成的提示有一个显著的问题:它们不一定是输入图像的良好表示。 例如,在图
1
(a)中,将银色吉普SUV的输入图像描述为红色的在最后一个提示中是不准确的,而其他提示则更相关。 显然,直接使用噪声提示来监督后续学习阶段是有害的。 LLM和人工生成的提示的另一个问题是它们高度冗余,信息重复。 为了找到更好的监督信号,我们首先提出将参考提示聚合到一个与图像对齐的、精简的“摘要”中。 预期这样的提示摘要能够过滤噪声并减少冗余。
给定
n
生成的提示,我们首先使用CLIP的文本编码器来获取提示嵌入
𝑷
=
[
𝒑
1
,
𝒑
2
,
…
,
𝒑
n
]
。 然后,我们学习一个自适应提示聚合器将
𝑷
压缩成大小相同的
m
(
≪
n
)嵌入。 理想情况下,聚合应该对
𝑷
的排列保持不变,并按
𝒪
(
n
+
m
)
的规模进行缩放。 出于效率考虑,我们在此设置
m
=
1
。 聚合的结果,单个提示嵌入,表示为
𝒑
a
。 一个简单的聚合器,具有排列不变性和高效率的特性,是基于将
𝑷
平均成
𝒑
¯
。 简单平均在先前的工作中被广泛使用
[34, 39]
。 然而,平均值
𝒑
¯
仍然会受到
𝑷
中无关信息的损害。 在这里,我们引入了一个基于注意力的聚合器,它允许我们将聚合的
𝒑
a
与输入图像对齐。 同时,我们的提示聚合器保持高效且排列不变。
图3:
(a)
输入自适应提示聚合器,它基于CLIP奖励将参考提示
𝑷
的嵌入聚合到与图像对齐的、精简的提示嵌入
𝒑
a
中。
(b)
用于图像分类的提示学习方法的实例。 CLIP模型保持冻结状态。
图
3
(a) 展示了我们基于单个注意力层的输入自适应提示聚合器的架构。 注意力层以参考提示
𝑷
和一个可学习的提示嵌入(初始化为
𝒑
¯
)作为输入。 然后所有嵌入更新如下:
其中
𝒑
a
是所需的提示聚合。 注意力层由标准的多头交叉注意力和前馈网络以及LayerNorm
[3]
组成。
为使
𝒑
a
在语义上与输入图像(嵌入
𝒙
)相关,我们使用CLIP奖励
[17]
(形式为
CLIP-S
(
𝒙
,
𝒑
a
)
=
s
⋅
max
(
cos
(
𝒙
,
𝒑
a
)
,
0
)
)优化我们的提示聚合器。 CLIP奖励允许
𝒑
a
通过注意力机制选择性地混合与图像相关的提示。 附录
B.1
中的图
7
证实,冗余或不相关的参考提示往往具有较低的注意力分数,因此在提示聚合过程中会被抑制。
3.3
学习AAPE
基于图像的提示聚合
𝒑
a
提供了有用的文本知识来监督接下来的提示学习阶段。 在本节中,我们将详细阐述如何通过从
𝒑
a
中提取聚合的文本知识来改进提示学习。 注意,在提示学习过程中,CLIP保持冻结状态。
作为本文的关键创新,我们提出训练一个提示生成器
h
,该生成器直接生成以图像特征
𝒙
为条件的提示嵌入
h
(
𝒙
)
。 我们将
h
参数化为具有两个全连接层和ReLU非线性的轻量级网络。
h
使用蒸馏损失
ℒ
distill
(用于从
𝒑
a
进行知识蒸馏)以及用于下游适应的任务损失
ℒ
task
进行训练。 我们将这种学习到的
h
(
𝒙
)
称为聚合和自适应提示嵌入(AAPE)。 AAPE也可以被视为潜空间中的
图像字幕嵌入
,因为有用的文本知识在AAPE中被提取。 下面,我们将详细介绍两种训练损失。
蒸馏损失
简单地定义为
h
(
𝒙
)
和
𝒑
a
之间的欧几里德距离:
任务损失——图像分类。
除了从
𝒑
a
中提取文本知识外,
h
(
𝒙
)
也应该适应下游任务。 在这里,我们首先从将
h
(
𝒙
)
适应到最常研究的图像分类任务的实例化开始。
请注意,现有的用于分类的提示学习器(
例如
,
[67, 68]
)学习提示中的
单个词符
{
𝒗
l
}
l
=
1
L
,然后将学习到的词符与类别名称嵌入
𝒄
i
∈
[
1
,
…
,
C
]
组合以获得完整的提示。 相比之下,我们直接生成完整的提示嵌入
h
(
𝒙
)
,无需逐词符预测。 对于分类,我们只需将
h
(
𝒙
)
和提示模板“一张{
类别
}的照片”的嵌入组合起来,作为分类器权重(与图像特征
𝒙
匹配)。
图
3
(b) 显示了整体提示学习框架。 对于用第
i
个类别名称填充的提示模板,我们使用CLIP的文本编码器来获得模板嵌入
𝒘
i
∈
ℝ
d
。 接下来,我们将
𝒘
i
和我们的
h
(
𝒙
)
∈
ℝ
d
连接起来,然后进行投影
g
,得到
𝒘
i
(
𝒙
)
=
g
(
[
𝒘
i
⊤
,
h
(
𝒙
)
⊤
]
⊤
)
。 注意
𝒘
i
(
𝒙
)
不涉及任何提示工程工作。 我们依靠
𝒘
i
主要编码类别名称,而
h
(
𝒙
)
则在潜在空间中用输入自适应的类别描述来丰富它。
我们用一个具有ReLU非线性的全连接层来参数化
g
:
ℝ
2
d
→
ℝ
d
。 非线性非常重要,因为它确保
𝒘
i
(
𝒙
)
不与
𝒘
i
和
h
(
𝒙
)
的线性组合等效,如果我们将线性组合与
𝒙
匹配进行分类,则会忽略
h
(
𝒙
)
。 分类概率给出如下:
其中
C
是类的总数,
τ
和
cos
(
⋅
,
⋅
)
表示温度和余弦相似度。 附录
B.2
(表
5
)与仅使用
h
(
𝒙
)
的分类基线进行了比较,不结合
𝒘
i
或使用投影
g
。结果表明,我们的默认分类框架比仅使用
h
(
𝒙
)
的基线取得了显著的改进。
最后,我们得到用于训练提示生成器
h
以及用于图像分类的投影
g
的整体损失函数:
其中
λ
=
5
是一个加权参数。 附录
C
中的表
6
提供了
λ
的灵敏度分析,结果表明性能在较宽的范围内对
λ
值相当稳健。
请注意,在测试期间,我们只使用提示生成器
h
,不再查询LLM或使用提示聚合器。 这消除了
[56, 48, 34, 55, 39]
中所需的LLM引起的推理成本,并将此成本转移到我们的学习阶段。
任务损失——超越分类。
h
(
𝒙
)
或AAPE中的文本知识能否使其他视觉语言任务受益? 我们考虑了三个超越分类的任务:
图像到文本检索
、
图像字幕
和
VQA
。 请注意,这些任务涉及第
3.1
节中提到的多对象图像。 因此,我们使用包含对象关系文本描述的COCO图像字幕。 对于所有三个任务,我们都在每张图像的5个COCO字幕上训练提示聚合器和提示生成器
h
。 使用公式(
2
)中的相同
ℒ
distill
,而
ℒ
task
是CLIP损失。
对于图像文本检索,我们简单地使用 AAPE 作为查询,并在 Flickr30k 数据集
[60]
上评估其零样本文本检索性能。 当提示生成器
h
使用
ℒ
distill
和相应的检索损失
ℒ
task
进行微调时,我们还评估其在 Flickr30k 上的微调性能。
对于图像字幕和 VQA 任务,我们推测 AAPE 中编码的文本知识在视觉线索模糊或缺失时将特别有用。 为了验证这一假设,我们直接使用了在 COCO 上训练的 AAPE。 具体来说,我们遵循
[35]
中的 LiMBeR 基线,该基线将 CLIP 图像表示线性转换为大语言模型 (LLM) 可以处理的一系列提示嵌入。 然后将 AAPE 作为“前缀”附加到提示序列中,以提供丰富的语言先验知识。 我们同样评估了零样本或微调的提示生成器
h
在下游数据集上的性能。 对于微调,
h
使用
ℒ
distill
和相应的任务损失
ℒ
task
(字幕或 VQA)进行优化。
4
实验设置和数据集
4.1
少样本图像分类
数据集。
我们使用了 11 个数据集:ImageNet
[10]
、Caltech101
[12]
、OxfordPets
[38]
、StanfordCars
[23]
、Flowers102
[37]
、Food101
[4]
、FGVC-Aircraft
[32]
、SUN397
[54]
、UCF101
[47]
、DTD
[9]
和 EuroSAT
[14]
。 这些数据集涵盖了各种通用对象和场景、细粒度对象类别以及具有纹理和卫星图像的特殊领域。 这些数据集中不同的视觉概念非常适合测试大语言模型中的文本知识是否以及何时会有所帮助。 我们进一步评估了在 ImageNetV2
[42]
、ImageNet-Sketch
[51]
、ImageNet-A
[16]
和 ImageNet-R
[15]
上的领域泛化能力,这些数据集与 ImageNet 相比具有不同类型的领域偏移。
实现。
我们遵循
[67]
中的提示学习细节,包括CLIP视觉主干网络(ViT-B/16)、学习率调度和每个数据集的迭代次数。 附录
C
(表
7
)提供了在Nvidia V100 GPU上测量的计算成本的详细分析,其中所有提示学习器都进行了评估以进行公平的效率比较。
评估。
我们遵循
[40]
中的少样本评估协议,每个类别使用1、2、4、8和16个样本进行训练(默认16个),并使用完整的测试集进行评估。 考虑了两种如
[67]
中所示的OOD泛化设置。 1) 从一个数据集中的基础类别到新类别的泛化,
即
在基础类别分割上训练,但在基础类别和新类别分割上进行测试。 这有助于评估在类别增量域转移下的ID和OOD性能。 我们遵循
[53]
也测量基础类别和新类别的精度调和平均值,以量化ID和OOD性能的权衡。 2) 域泛化,其中在一个数据集上训练(使用16个样本),并在四个ImageNet变体上进行评估。 对于所有实验,我们报告的结果是三个随机种子上的平均值。
4.2
视觉-语言理解和生成任务
如第
3.3
节所述,我们在COCO数据集
[31]
上进行提示学习,然后在三个视觉语言任务上进行评估。 对于图像到文本检索任务,为了进行公平的比较,我们使用与
[40, 24]
中相同的CLIP视觉主干VIT-L/14。 我们展示了在Flickr30k
[60]
上的零样本和微调结果(Recall@K)。
对于字幕和VQA任务,我们遵循LiMBeR
[35]
使用相同的语言模型和CLIP视觉主干(RN50x16)。 我们在图像字幕数据集COCO和NoCaps
[1]
上进行评估。 零样本和微调结果根据CIDEr-D
[50]
、CLIPScore和Ref-CLIPScore
[17]
进行报告。 对于VQA,我们使用“[image] Q: [q] A:”的格式提示模型。 生成的文本长度被截断为最长真实答案的长度。 为了评估,我们使用VQA2数据集
[13]
,并遵循
[11]
中的少样本设置,报告每个K-shot的准确率指标。
附录
C
(表
7
)展示了将AAPE直接用于分类以外的任务的高效率。 与最先进的完全微调模型MAGMA
[11]
相比,AAPE在Nvidia A100 GPU上的训练/推理速度大约快2.8/1.2倍。
5
结果
5.1
图像到文本检索
我们使用此任务来验证AAPE能否充当有意义的图像字幕嵌入,该嵌入经过学习,可以从可用的图像字幕中提取与图像对齐的文本知识。 我们并不旨在追求检索任务的最先进性能。 表
1
显示我们确实可以在COCO和Flickr30k数据集上分别实现强大的训练和微调性能。 这表明我们的提示学习方法能够生成高质量的文本或字幕嵌入,可以成功完成手头的任务。 还值得注意的是,我们在COCO上学习的AAPE可以在Flickr30k上执行零样本检索,并获得与最先进的零样本模型(
例如
,CLIP和SigLIP)具有竞争力的结果。 这进一步证明了AAPE在不同数据分布上的良好泛化能力。
表1:
图像到文本检索:
Flickr30k数据集上零样本和微调结果(Recall@K)。 请注意,我们的AAAPE是在COCO数据集上学习的。
COCO
Flickr30k
R@1
R@5
R@10
R@1
R@5
R@10
训练或
微调
Unicoder-VL
[26]
62.3
87.1
92.8
86.2
96.3
99.0
Oscar
[28]
73.5
92.2
96.0
-
-
-
ERNIE-ViL
[61]
-
-
-
88.7
98.0
99.2
AAPE
76.7
±
0.1
94.5
±
0.1
97.4
±
0.1
94.2
±
0.2
99.3
±
0.1
99.7
±
0.1
Zero-shot
CLIP
[40]
58.4
81.5
88.1
88.0
98.7
99.4
SigLIP
[66]
65.4
85.1
91.1
91.5
98.1
99.4
Llip
[24]
68.1
87.6
92.5
93.2
99.0
99.4
BLIP-2
[27]
-
-
-
96.9
100.0
100.0
AAPE
-
-
-
90.8
±
0.2
98.6
±
0.1
99.4
±
0.1
5.2
少样本图像分类
从基础类别到新类别的泛化。
表格
2
将AAAPE与两类提示学习方法进行了比较:1) CoOp
[67]
,CoCoOp
[68]
,MaPLe
[20]
,CLIPood
[45]
,PromptSRC
[21]
和OGEN
[65]
。 这些方法学习提示向量时不使用任何基于文本的知识,而是严重依赖于高级优化和正则化策略来改进泛化能力。 另一方面,我们的AAAPE通过从大型语言模型中提取文本知识而超越了它们。 值得注意的是,平均而言(跨11个数据集),对于基础类别和新类别,AAAPE都实现了比之前的SOTA方法OGEN更好的分类精度,设定了一个新的SOTA平均精度80.97%(对比80.34%)。 2) ProGrad
[69]
,KgCoOp
[58]
和LASP-V
[7]
。 这些方法选择将学习到的提示与手工编写的提示对齐,例如“一张
{
class
}
的黑暗照片”,因此仅从基本、非描述性模板中提取知识。 这被证明不如我们从大型语言模型中获得的自然语言先验知识有效。
表格 2:
从基础类别到新类别的泛化设置中的少样本分类
。 OGEN 表示 OGEN+PromptSRC 变体。 我们的AAAPE遵循CuPL查询大型语言模型以获得自然语言提示,但进一步从这些提示中学习。 H:基类和新类准确率的调和平均数。
Prompt learning without language priors
Human-generated prompts
LLM-based
CoOp
CoCoOp
MaPLe
CLIPood
PromptSRC
OGEN
ProGrad
KgCoOp
LASP-V
CuPL
AAPE
Avg across
11 datasets
Base
82.69
80.47
82.28
83.90
84.26
84.17
82.48
80.73
83.18
74.31
84.72
±
0.18
New
63.22
71.69
75.14
74.50
76.10
76.86
70.75
73.60
76.11
75.25
77.54
±
0.29
H
71.66
75.83
78.55
78.90
79.97
80.34
76.16
77.00
79.48
74.78
80.97
±
0.19
ImageNet
Base
76.47
75.98
76.66
77.50
77.60
77.50
77.02
75.83
76.25
75.05
78.10
±
0.11
New
67.88
70.43
70.54
70.30
70.73
70.97
66.66
69.96
71.17
68.43
71.98
±
0.14
H
71.92
73.10
73.47
73.70
74.01
74.09
71.46
72.78
73.62
71.59
74.92
±
0.12
Caltech101
Base
98.00
97.96
97.74
98.70
98.10
98.32
98.02
97.72
98.17
98.24
98.34
±
0.07
New
89.81
93.81
94.36
94.60
94.03
94.76
93.89
94.39
94.33
94.34
94.79
±
0.09
H
93.73
95.84
96.02
96.60
96.02
96.50
95.91
96.03
96.21
96.25
96.53
±
0.07
OxfordPets
Base
93.67
95.20
95.43
95.70
95.33
95.96
95.07
94.65
95.73
95.30
96.89
±
0.12
New
95.29
97.69
97.76
96.40
97.30
97.48
97.63
97.76
97.87
97.74
98.02
±
0.16
H
94.47
96.43
96.58
96.00
96.30
96.71
96.33
96.18
96.79
96.50
97.45
±
0.13
Stanford
Cars
Base
78.12
70.49
72.94
78.60
78.27
77.59
77.68
71.76
75.23
68.88
77.51
±
0.39
New
60.40
73.59
74.00
73.50
74.97
75.17
68.63
75.04
71.77
75.09
77.37
±
0.56
H
68.13
72.01
73.47
75.90
76.58
76.38
72.88
73.36
73.46
71.85
77.44
±
0.42
Flowers102
Base
97.60
94.87
95.92
93.50
98.07
97.34
95.54
95.00
97.17
77.79
97.81
±
0.19
New
59.67
71.75
72.46
74.50
76.50
77.67
71.87
74.73
73.53
78.10
78.75
±
0.31
H
74.06
81.71
82.56
82.90
85.95
86.39
82.03
83.65
83.71
77.94
87.25
±
0.21
Food101
Base
88.33
90.70
90.71
90.70
90.67
90.69
90.37
90.50
91.20
90.56
91.82
±
0.08
New
82.26
91.29
92.05
91.70
91.53
91.68
89.59
91.70
91.90
91.86
92.66
±
0.11
H
85.19
90.99
91.38
91.20
91.10
91.19
89.98
91.09
91.54
91.21
92.24
±
0.09
FGVC
Aircraft
Base
40.44
33.41
37.44
43.30
42.73
41.26
40.54
36.21
38.05
33.29
41.46
±
0.12
New
22.30
23.71
35.61
37.20
37.87
40.26
27.57
33.55
33.20
37.60
40.37
±
0.28
H
28.75
27.74
36.50
40.00
40.15
40.75
32.82
34.83
35.46
35.31
40.91
±
0.14
SUN397
Base
80.60
79.74
80.82
81.00
82.67
82.57
81.26
80.29
80.70
73.39
82.93
±
0.14