Prompt Distribution Learning

Motivation

视觉语言模型如 CLIP 和 ALIGN,为显式地利用人类语言来有效地解决下游识别任务指明方向。通过对比学习来学习图像和文本的对齐嵌入,鼓励图像的表示及其语言描述相似。在下游任务中,提供与任务相关的内容,即类别描述,可以显著地有利于预训练的 VLM 进行识别,甚至可以在没有训练样本的情况下进行 Zero-Shot 识别。

使用手工制作的提示模板构建类别描述。默认提示符是 “一个{类}的照片”,适用于一般的对象识别 (例如 ImageNet 和 STL-10),但处理细粒度的目标识别是困难的。在花卉数据集 (Oxford Flowers 102) 上,更好的提示选择是 “一张{类}的照片,一种花。” 在这种情况下,提示词 “flower” 指示当前任务的上下文,从而提供更精确的描述。

从这个角度来看,提供的文本应该适应任务定义的上下文,即对目标任务的视觉表示的低偏差。然而,手动设计不可避免地会引入人为偏差,并且可能对目标任务不太理想。因此,为不同的识别任务定制合适的提示依赖于重复和耗时的尝试,并且还需要一个大的验证集来选择提示。

另一个挑战来自视觉内容的多样性。由于姿态、变形和光照条件等固有因素,同一类别内的不同样例之间存在显著差异。这种类内差异使提示符很难充分描述视觉差异,Prompt 应该是多样化和信息性的,允许处理视觉表示的变化。现有的工作集成了80个手工制作的提示来预测 ImageNet 上的类别,包括 a photo of a small {class}a photo of a big {class} 等。然而,它仍然有手工设计的限制,需要大量的工作来选择合适但可能不是最优的提示集合。

Soft prompts, also known as continuous prompts, represent the (word) embeddings of the raw (discrete) prompts.

Method

Learning the Prompt Distribution

在这里插入图片描述
为了处理不同的视觉变化,ProDA 旨在学习各种提示符的分布。直观地,应该学习一个最优提示分布 p ( p ) p(\mathbf{p}) p(p),使经验分类损失最小化。在这种情况下,分类器权重 w 1 : C ( P ) \mathbf{w}_{1:C}(\mathbf{P}) w1:C(P) 遵循由 p ( P ) p(\mathbf{P}) p(P) 和文本编码器 g ( ⋅ ) g(·) g() 确定的分布,导致预测概率 P ( y ∣ x ) P(y|\mathbf{x}) P(yx) 为边际似然 E P [ p ( y ∣ x , w 1 : C ( P ) ) ] \mathbb{E}_\mathbf{P}[p(y|\mathbf{x}, \mathbf{w}_{1:C}(\mathbf{P}))] EP[p(yx,w1:C(P))]。不幸的是,显式地计算这种边际似然是困难的,需要对 P \mathbf{P} P 进行积分。在 P \mathbf{P} P 是离散随机变量的特殊情况下,计算是可能的。然而,它限制了整体提示的学习。此外,学习提示的准确分布是困难的,需要一个复杂的序列生成模型。在这项工作中,提出了一种有效的方法,通过学习分类器权值的分布,即类别描述的输出嵌入,来间接学习提示分布。虽然提示符 P \mathbf{P} P 的原始分布是复杂的,但在一个类别内生成的权值 w c ( P ) \mathbf{w}_c(\mathbf{P}) wc(P) 是相邻的,可以用多元高斯分布来建模。

具体来说,假设 N ( μ 1 : C , Σ 1 : C ) \mathcal{N}(\mu_{1:C}, \mathbf{Σ}_{1:C}) N(μ1:C,Σ1:C) 是权重 w 1 : C \mathbf{w}_{1:C} w1:C 的 “真实” 分布。可学习的连续提示符集合 P K = Δ { P k } k = 1 K \mathcal{P}^K\stackrel{\Delta}{=}\{\mathbf{P}_k\}^K_{k=1} PK=Δ{Pk}k=1K。“真实” 权重分布的均值和协方差可以通过一系列分类器权重 { w 1 : C ( P k ) } k = 1 K \{\mathbf{w}_{1:C}(\mathbf{P}_k)\}^K_{k=1} {w1:C(Pk)}k=1K 来估计,这些权重是由 P K \mathcal{P}^K PK 的提示生成的。

即使采用高斯分布假设,在多类情况下,边际似然的精确计算仍然是棘手的。为解决这个问题,推出了一个有效优化的损失上界。

Improving Prompt Diversity

由于权重分布的参数是从提示信息收集中估计出来的,因此提示信息的质量会影响得到的权重分布。多样化的提示可以更充分地描述视觉内容,提高测试样本的泛化程度。研究表明,不同的分类器能够增强泛化。

Position Diversity

为了进一步提高提示的多样性,明确区分 P K \mathcal{P}^K PK。组合提示和类别名称的一种常用方法是将类别名称放在提示的末尾。然而,生成的文本描述是有偏差的。为了提高生成的文本描述的多样性,在不同提示符的前面、中间和结尾位置插入类别名称。实验中,这三种类型在 P K \mathcal{P}^K PK 上的比例分别为1/4、1/4和1/2。

Semantic Orthogonality

不同的提示应该表示不同的内容。一种自然的方法是鼓励它们具有不同的语义。输入提示 { P k } k = 1 K \{\mathbf{P}_k\}^K_{k=1} {Pk}k=1K,而不将类别名称合并到预训练的文本编码器中,以获得它们的语义嵌入 { g ( P k ) } k = 1 K \{g(\mathbf{P}_k)\}^K_{k=1} {g(Pk)}k=1K,语义正交性损失用来鼓励提示是不同的:
L s o ( P K ) = 1 K ( K − 1 ) ∑ i = 1 K ∑ j = i + 1 K ∣ < g ( P i ) , g ( P j ) > ∣ \mathcal{L}_{so}(\mathcal{P}^K)=\frac{1}{K(K-1)}\sum^K_{i=1}\sum^K_{j=i+1}|<g(\mathbf{P}_i), g(\mathbf{P}_j)>| Lso(PK)=K(K1)1i=1Kj=i+1K<g(Pi),g(Pj)>
其中 < ⋅ , ⋅ > <·, ·> <⋅,⋅> 表示余弦相似度。
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值