《Learning to Prompt for Vision-Language Models》CoOp论文中文校对版

系列论文研读目录


文章目录

  • 系列论文研读目录
  • 摘要
  • 1 简介
  • 2 相关工作
    • 2.1视觉语言模型
    • 2.2 NLP中的提示学习
  • 3 方法论
    • 3.1视觉语言预训练
    • 3.2上下文优化
    • 3.3讨论
  • 4 实验
    • 4.1Few-Shot学习
    • 4.2领域泛化
    • 4.3进一步分析
  • 5 结论、局限性和未来的工作


摘要

像CLIP这样的大型预训练视觉语言模型在学习表示方面表现出了巨大的潜力,这些表示可以在广泛的下游任务中转移。与传统的主要基于离散化标签的表示学习不同,视觉语言预训练将图像和文本在一个共同的特征空间中对齐,这允许通过提示将zero-shot转移到下游任务,即,从描述感兴趣的类别的自然语言合成分类权重。在这项工作中,我们表明,在实践中部署此类模型的一个主要挑战是提示工程,这需要领域专业知识,并且非常耗时-需要花费大量时间进行文字调整,因为措辞的轻微变化可能会对性能产生巨大影响。受自然语言处理(NLP)中提示学习研究的最新进展的启发,我们提出了上下文优化(CoOp),这是一种简单的方法,专门用于适应下游图像识别的CLIP类视觉语言模型。具体地说,CoOp用可学习的向量对提示语的上下文单词进行建模,而整个预训练参数保持固定。为了处理不同的图像识别任务,我们提供了两种CoOp实现:统一上下文和类特定上下文。通过对11个数据集的广泛实验,我们证明了CoOp只需要一个或两个镜头就能以可观的利润击败手工制作的提示,并且能够在更多镜头的提示工程上获得显着的改进,例如,16 shots的平均增益约为15%(最高可达45%以上)。尽管是一种基于学习的方法,但与使用手工提示的zero-shot模型相比,CoOp实现了出色的域泛化性能。

1 简介

  1. 用于构建现有技术的视觉识别系统的常见方法是训练视觉模型以使用离散标签来预测固定的对象类别集合(He等人,2016年; Dosovitskiy等人,2021年)的报告。从技术的观点来看,这是通过匹配图像特征来实现的,该图像特征是由像ResNet这样的视觉模型产生的(He等人,2016)或ViT(Dosovitskiy等人,2021)-这些权重被视为视觉概念并随机初始化。尽管训练类别通常有文本形式,如“gold fish”或“toilet paper”,但它们将被转换为离散的标签,只是为了简化交叉熵损失的计算,从而使封装在文本中的语义在很大程度上未被利用。这种学习范式将视觉识别系统局限于封闭的视觉概念,使其无法处理新的类别,因为学习新的分类器需要额外的数据。
  2. 最近,视觉语言预训练,例如CLIP(拉德福等人,2021)和ALIGN(Jia等人,2021)已经成为视觉表征学习的一种有前途的替代方法。其主要思想是使用两个独立的编码器来对齐图像和原始文本–每种模式一个。例如,CLIP和ALIGN都将学习目标表述为对比丢失,其将图像及其文本描述拉在一起,同时推开特征空间中的不匹配对。通过大规模的预训练,模型可以学习不同的视觉概念,并且可以通过提示容易地转移到任何下游任务(拉德福等人,2021年; Jia等人,2021年; Füurst等人,2021年; Li等人,2021年; Singh等人,2021年; Yuan等人,2021年)的报告。具体地,对于任何新的分类任务,可以首先通过将描述任务相关类别的句子给予文本编码器来合成分类权重,然后与由图像编码器产生的图像特征进行比较。
  3. 我们观察到,对于预先训练的视觉语言模型,文本输入,即提示,在下游数据集中起着关键作用。然而,确定正确的提示是一项重要的任务,它通常需要花费大量的时间来调整措辞-措辞上的细微变化可能会对性能产生巨大的影响。例如,对于Caltech 101(图1(a),第二个与第三个提示符),在类标记前添加“a”会使准确性提高5%以上。此外,即时工程还需要有关任务的先验知识,理想情况下还需要语言模型的底层机制。这在图1(b-d)中举例说明,其中添加任务相关的上下文可以导致显著的改进,即,对于Flowers 102为“花”,对于DTD为“纹理”,对于EuroSAT为“卫星”。调整句子结构可带来进一步的改进,在Flowers 102的类标记之后放置“一种花”,在DTD的上下文中仅保留“纹理”,并在EuroSAT的“卫星照片”之前添加“居中”。但是,即使进行了大量的调整,也不能保证得到的提示对于这些下游任务来说是最佳的。在这里插入图片描述
  4. 受最近自然语言处理(NLP)中的即时学习研究的启发(Shin等人,2020年; Jiang等人,2020年; Zhong等人,2021),我们提出了一种称为上下文优化(CoOp)1的简单方法来自动化提示工程,特别是针对预训练的视觉语言模型。具体地说,CoOp用可学习的向量对提示语的上下文单词进行建模,这些向量可以用随机值或预训练的单词嵌入进行初始化(参见图2)。提供了两种实现来处理不同性质的任务:一种是基于统一上下文的,它与所有类共享相同的上下文,并且在大多数类别上都能很好地工作;而另一种是基于特定于类的上下文,它为每个类学习一组特定的上下文令牌,并且被发现更适合于一些细粒度的类别。在训练过程中,我们简单地使用关于可学习上下文向量的交叉熵损失来最小化预测误差,同时保持整个预训练参数固定。梯度可以通过文本编码器一直反向传播,提取参数中编码的丰富知识,用于学习任务相关的上下文。
  5. 为了证明CoOp的有效性,我们对11个数据集进行了基准测试,这些数据集涵盖了一系列不同的视觉识别任务,包括对通用对象、场景、动作和细粒度类别的分类,以及识别纹理和卫星图像等专门任务。结果表明,CoOp能够有效地将预先训练好的视觉语言模型转化为数据高效的视觉学习器,只需one or two shots就能以相当大的优势击败手工制作的提示。通过使用更多的shot,在16次shot的情况下,超过手工制作的提示的利润率平均在15%左右,并且最高达到45%以上。CoOp也优于线性探针模型,其被称为强的few-shot学习基线(Tian等人,2020年)的报告。此外,尽管是一种基于学习的方法,但CoOp对域转换的鲁棒性比zero-shot模型(使用手动提示)强得多。
  6. 总的来说,我们做出了以下贡献:
    1.我们提出了一项关于在下游应用中调整最近提出的视觉语言模型的及时的研究,并确定了与部署效率相关的一个关键问题,比如,提示工程 2.为了实现针对预训练的视觉语言模型的提示工程的自动化,我们提出了一种基于连续提示学习的简单方法,并提供了两种可以处理不同识别任务的实现。3.我们首次证明了所提出的基于即时学习的方法在大型视觉语言模型的下游迁移学习性能和域转移下的鲁棒性方面优于手工制作的提示和线性探测模型。4.我们在https://github.com/KaiyangZhou/CoOp.开放了我们的项目的源代码。
  7. 我们希望这些发现和开源代码可以激发和促进未来对大型视觉语言模型的有效适应方法的研究-这是一个与基础模型大众化相关的新兴主题(Bommasani等人,2021)即,使它们更容易和更便宜地适应更广泛的社区。

2 相关工作

2.1视觉语言模型

视觉语言模型最近在学习一般视觉表示和允许通过提示zero-shot转移到各种下游分类任务方面显示了巨大的潜力(拉德福等人,2021年; Jia等人,2021; Zhang等人,2020年; Singh等人,2021年; Yuan等人,2021年)的报告。据我们所知,视觉语言学习的最新发展,特别是CLIP(拉德福等人,2021)和ALIGN(Jia等人,2021)在很大程度上是由以下三个领域中的进步所驱动的:i)利用Transformers的文本表示学习(Vaswani等人,2017),ii)大-小批量对比表征学习(Chen等人,2020年; He等人,2020年; H enaff等人,2020),以及iii)网络规模的训练数据集-CLIP从4亿个精心策划的图像-文本对中获益,而ALIGN利用了18亿个有噪声的图像-文本对。将图像和文本映射到公共嵌入空间上的思想在近十年前就已经被研究过了(Socher等人,2013年;弗罗姆等人,2013年; Elhoseiny等人,2013年),但采用了截然不同的技术。对于文本特征提取,早期的工作主要利用预先训练的词向量(Socher等人,2013年;弗罗姆等人,2013)或手工制作的TF-IDF特征(Elhoseiny等人,2013年; Lei Ba等人,2015年)的报告。匹配图像和文本特征已经被公式化为度量学习(弗罗姆等人,2013)、多标签分类(Joulin等人,2016年; Gomez等人,2017),n元语法语言学习(Li等人,2017),以及最近提出的字幕(德赛和约翰逊,2021)。我们的工作与视觉语言模型的最新研究是正交的,旨在促进这种模型在下游数据集中的适应和应用。

2.2 NLP中的提示学习

Petroni et al.(2019)正式将大型预训练语言模型的知识探测定义为"填空"完形填空测试,最近引发了人们对NLP中的快速学习研究的兴趣(Shin et al.,2020年; Jiang等人,2020年; Li和Liang,2021年; Zhong等人,2021年;莱斯特等人,2021; Gao等人,2020; Liu等人,2021年b月)。
知识探测的基本思想是诱导预先训练好的语言模型在给出完形填空式提示的情况下生成答案,这可以有益于许多下游任务,例如情感分析。Jiang et al.(2020)提出通过文本挖掘和释义生成候选提示,并确定最佳提示,以提供最高的训练准确性。Shin等人(2020年)介绍了一种基于梯度的方法,该方法搜索标签似然性中梯度变化最大的标记。
与我们的工作最相关的是持续的提示学习方法(Zhong等人,2021年; Li和Liang,2021年; Lester等人,2021),其优化了单词嵌入空间中的连续向量。与搜索离散记号相比,这种方法的缺点是缺乏清晰的方式来可视化对于向量学习了什么"单词"。我们建议读者参考Liu et al.(2021a)关于NLP中提示学习主题的全面调查。
值得注意的是,我们是第一个将提示学习应用于计算机视觉中的大视觉语言模型的适应性的人–我们将其视为使基础模型大众化的重要主题(Bommasani等人,2021)-并证明了快速学习不仅在迁移学习性能方面给计算机视觉任务带来了显著的改进,而且还产生了能够处理域转移的鲁棒模型。

3 方法论

3.1视觉语言预训练

我们简要介绍视觉语言预训练,特别关注CLIP(拉德福等人,2021年)的报告。我们的方法适用于更广泛的CLIP类视觉语言模型。
Models Clip由两个编码器组成,一个用于图像,另一个用于文本。图像编码器旨在将高维图像映射到低维嵌入空间。图像编码器的体系结构可以采取像ResNet-50(他等人,2016)或VIT(Dosovitski等人,2021)这样的CNN的形式。另一方面,文本编码器建立在Transformer(Vaswani等人,2017)之上,旨在从自然语言生成文本表示。
具体地说,给定诸如“狗的照片”之类的单词(标记)序列,CLIP首先将每个标记(包括标点符号)转换成小写字节对编码(BPE)表示(Sennrich等人,2016),本质上是一个唯一的数字ID。CLIP中的词汇量为49152。为了便于小批量处理,每个文本序列都包含在[SOS]和[EOS]令牌中,并且固定长度为77。之后,将ID映射到512-D单词嵌入向量,然后将其传递到Transformer。最后,[EOS]记号位置处的特征被层归一化,并由线性投影层进一步处理。
训练 CLIP被训练来对齐分别为图像和文本学习的两个嵌入空间。具体来说,学习目标被制定为对比损失。给定一批图像-文本对,CLIP最大化匹配对的余弦相似度,同时最小化所有其他不匹配对的余弦相似度。为了学习更容易转移到下游任务的各种视觉概念,CLIP的团队收集了一个由4亿个imagetext对组成的大型训练数据集。
zero-shot 推理由于CLIP是预先训练好的,可以预测图像是否与文本描述匹配,因此它自然适合zero-shot识别。这是通过将图像特征与文本编码器合成的分类权重进行比较来实现的,文本编码器将指定感兴趣类别的文本描述作为输入。形式上,设f是由图像编码器针对图像x提取的图像特征,并且{wi} i =1到K 是由文本编码器生成的权重向量的集合。K表示类的数量,每个wi都是从一个可能具有“a photo of a [CLASS]”形式的提示符中导出的。其中类标记被特定的类名(例如“cat”、“dog”或“car”)替换。预测概率计算如下:
在这里插入图片描述
其中τ是通过CLIP学习的温度参数,cos(·,·)表示余弦相似性。
与从随机向量中学习闭集视觉概念的传统分类器学习方法相比,视觉语言预训练允许通过高容量文本编码器探索开集视觉概念,从而获得更广泛的语义空间,从而使学习的表示更容易转移到下游任务。

3.2上下文优化

我们提出了上下文优化(CoOp),它通过使用从数据中端到端学习的连续向量对上下文词进行建模,同时冻结大量预训练参数,从而避免手动提示调整。概述如图2所示。下面我们提供几种不同的实现。
统一上下文 我们首先介绍统一上下文版本,它与所有类共享相同的上下文。
在这里插入图片描述

具体地,给文本编码器g(·)的提示被设计为具有以下形式,
在这里插入图片描述
其中每个[V]m(m ∈ {1,…,M})是具有与词嵌入相同维度的向量(即,512),并且M是指定上下文令牌的数量的超参数。
通过将提示t转发到文本编码器g(·),我们可以获得表示视觉概念的分类权重向量(仍然来自[EOS]标记位置)。预测概率计算如下:
在这里插入图片描述
其中每个提示ti内的类标记被第i个类名的相应单词嵌入向量替换。
除了将类标记放置在序列的末尾(如等式(2)所示),我们还可以将其放置在中间,如
在这里插入图片描述
这增加了学习的灵活性-允许提示或者用补充描述填充后面的单元,或者通过使用诸如句号的终止信号来切断前面的句子。
在这里插入图片描述
另一种选择是设计类特定上下文(CSC),其中上下文向量独立于每个类,即,[V]i 1[V]i 2 …[V]i M = [V]j 1[V]j 2。…[V]j M,其中i ∈ {1,…,K}。作为统一上下文的替代,我们发现CSC对于一些细粒度分类任务特别有用。
该算法利用交叉熵进行训练,以最小化标准分类损失,并利用编码在参数中的丰富知识,通过文本编码器g(·)对梯度进行反向传播,以优化上下文。连续表征的设计还允许在词嵌入空间中进行充分探索,这有助于学习与任务相关的上下文。

3.3讨论

我们的方法特别解决了最近提出的大型视觉语言模型(如CLIP)的适应性问题(拉德福等人,2021年)的报告。我们的方法与NLP中为语言模型开发的即时学习方法有一些区别(例如,GPT-3(Brown等,2020年))。首先,CLIP类模型和语言模型的主干体系结构明显不同-前者将视觉和文本数据都作为输入,并生成用于图像识别的对齐分数,而后者仅用于处理文本数据。第二,预训练的目标不同:对比学习与自回归学习。这将导致不同的模型行为,因此需要不同的模块设计。

4 实验

4.1Few-Shot学习

数据集我们选择了CLIP:ImageNet中使用的11个公开可用的图像分类数据集(Deng et al.,2009年),Caltech 101(Fei-Fei等人,2004),牛津宠物(Parkhi等人,2012年),斯坦福汽车公司(Krause等人,2013)、Flowers 102(Nilsback和Zisserman,2008)、Food 101(Bossard等人,2014年)、FGVCAircraft(Maji等人,2013年)、SUN 397(肖等人,2010)、DTD(Cimpoi等人,2014)、欧洲卫星组织(Helber等人,2019年)和UCF 101(Soomro等人,2012年)(见附录A的统计数据)。这些数据集构成了一个全面的基准,涵盖了一系列不同的视觉任务,包括对通用对象、场景、动作和细粒度类别的分类,以及识别纹理和卫星图像等专门任务。我们遵循CLIP中采用的少量评估方案(拉德福等人,2021),分别使用1、2、4、8和16个镜头进行训练,并在完整的测试集中部署模型。报告三次运行的平均结果以供比较。
训练细节 CoOp有四个版本:将类令牌定位在末尾或中间;统一上下文vs CSC。除非另有说明,ResNet-50(He等人,2016)被用作图像编码器的主干,并且上下文令牌的数量M被设置为16。第4.3节讨论了其他设计选择的调查。所有模型都建立在CLIP的开源代码之上。2 CoOp的上下文向量通过从标准差等于0.02的零均值高斯分布中抽取随机初始化。训练是用SGD和0.002的初始学习率完成的,它是由余弦退火规则衰减的。对于16/8次拍摄,最大历元设置为200;对于4/2次拍摄,最大历元设置为100;对于1次拍摄,最大历元设置为50(ImageNet除外,其最大历元固定为50)。为了减轻在早期训练迭代中观察到的爆炸性梯度,我们使用了热身技巧,将学习速率固定为1 e −5,只在第一个时期。
基线方法我们将CoOp与两种基线方法进行了比较。第一种是基于手工制作的提示符的零拍CLIP。我们遵循拉德福et al.(2021)介绍的快速工程指南。对于一般对象和场景,“[CLASS]的照片”。被采用。对于细粒度的类别,添加与任务相关的上下文,如OxfordPets的“一种宠物”和Food101的“一种食物”。当涉及到特殊任务(如识别DTD中的纹理)时,提示被自定义为“[CLASS] texture”。其中类名是“bubbly”和“dotted”之类的形容词。详见附录A。第二个基线是线性探头型号。正如拉德福等人(2021)和最近一项关于少击学习的研究(Tian等人,2020),在高质量的预训练模型的特征(如CLIP)之上训练线性分类器可以容易地实现与最先进的少发射学习方法(其通常复杂得多)的性能相当的性能。我们遵循拉德福等人(2021)使用的相同训练方法来训练线性探头模型。
与手工制作的提示比较图3总结了结果。我们的默认模型是CLIP+CoOp,类标记位于最后。定位类标记的两种不同方式实现了类似的性能,因为它们的曲线高度重叠。从左上角显示的平均性能,我们观察到CLIP+CoOp是一个强大的少镜头学习器,平均只需要两个shot就可以获得比zero-shot CLIP更好的边缘。假设16次shot用于训练,CoOp带来的平均差距可以进一步增加到15%左右。
在这里插入图片描述
图4列出了CoOp在16次shot时获得的绝对改进,而不是手工制作的提示。在EuroSAT和DTD等专门任务上观察到了巨大的改进,其性能分别提高了45%和20%以上。在包括Flowers 102、StanfordCars和FGVCAircraft在内的大多数细粒度数据集上,以及在场景和动作识别数据集上(即,SUN 397和UCF 101)。由于ImageNet是一个包含1,000个类的具有挑战性的数据集,因此4.77%的改进也值得注意。相比之下,OxfordPets和Food 101这两个细粒度数据集上的增长就不那么吸引人了。3通过深入研究图3中这两个数据集上的CLIP+CoOp曲线,我们发现即使使用了更多的镜头,性能改进的动力也会损失,这似乎是一个过拟合问题。一个潜在的解决方案是施加更高的正则化,比如增加权重衰减。尽管如此,总体结果足以证明CoOp以数据有效的方式学习任务相关提示的能力。
在这里插入图片描述
与线性探头CLIP的比较在整体性能方面(图3,左上),CLIP+CoOp表现出明显优于线性探针模型的优势。后者平均需要超过4次射击才能与零射击的性能相匹配,而CoOp在4次射击时的平均增益已经令人印象深刻。同样清楚的是,在极低数据的情况下,如一次或两次射击,差距要大得多,这表明CoOp比从头开始学习线性分类器更有效。我们还观察到,线性探测模型在两个专门任务(DTD和EuroSAT)以及几个细粒度数据集(Flowers 102和FGVCAircraft)上与CLIP+CoOp相当-这并不令人惊讶,因为预训练的CLIP空间已被证明是强大的,使线性探测模型成为强大的竞争对手。尽管如此,CoOp的CSC版本可以在上述数据集上击败线性探头CLIP,而且,当更多的镜头可用时,显示出更好的潜力。我们后来表明,CoOp获得更强的性能比线性探针模型在域推广。
统一上下文与特定于类的上下文平均而言,使用统一上下文会带来更好的性能。关于何时应用CSC以及何时不应用CSC,我们有以下建议。对于通用对象(ImageNet和Caltech 101)、场景(SUN397)和动作(UCF 101),使用统一上下文显然更好。统一上下文在包括OxfordPets和Food101在内的一些细粒度数据集上也能更好地工作,但在StanfordCars,Flowers102和FGVCAircraft等其他数据集上,CSC版本是首选。CSC在两个专门任务DTD和EuroSAT上也有更好的性能,特别是在16次射击时。然而,CSC在具有挑战性的低数据场景(少于8个镜头)中表现不佳,这是有道理的,因为CSC比统一上下文有更多的参数,需要更多的数据进行训练。

4.2领域泛化

由于CoOp需要对特定的数据分布进行训练,因此它有学习虚假相关性的风险,这些相关性不利于在不可见分布(域)中的泛化,如最近的研究所建议的(Taori等人,2020; Zhou等人,2021年)的报告。相反,零激发CLIP不依赖于特定的数据分布,并且对分布偏移表现出很强的鲁棒性(拉德福等人,2021年)的报告。在本节中,我们旨在通过与零触发CLIP和线性探针模型的比较,揭示CoOp对分布偏移的稳健性。
数据集源数据集为ImageNet。目标数据集为ImageNetV 2(Recht等人,2019年)、ImageNet-Sketch(王等人,2019年)、ImageNet-A(亨德里克斯等人,2021 b)和ImageNetR(Hendrycks等,2021 a),所有这些都具有与ImageNet兼容的类名,允许无缝传输CoOp学习的提示。ImageNet V2是一个使用不同来源的复制测试集,同时遵循ImageNet的数据收集过程。ImageNet-Sketch包含属于相同的1,000个ImageNet类的草图图像。ImageNet-A和-R都包含200个类,这些类是从ImageNet的1,000个类的子集中派生出来的。前者由现实世界中的逆向过滤图像组成,这导致当前的ImageNet分类器产生较低的结果,而后者的特点是以不同的图像风格(如绘画、卡通和雕塑)呈现ImageNet类。
结果表1总结了结果(具有各种视觉骨干)。令人惊讶的是,CoOp增强了CLIP对分布变化的鲁棒性,尽管暴露于源数据集。这表明习得的提示也是可推广的。此外,有趣的是,使用更少的上下文标记可以带来更好的鲁棒性。相比之下,线性探针模型在这些目标数据集上获得的结果要差得多,暴露了其在领域泛化方面的弱点。在附录B中,我们提供了DOSCO-2k上的域泛化结果(Zhou et al.,2022 b),最近提出的基准重点上下文域转移。
在这里插入图片描述

4.3进一步分析

上下文长度应该使用多少个上下文标记?拥有更多的上下文标记是否更好?4.2节中的结果表明,较短的上下文长度有利于域泛化(可能是由于学习的参数较少,过度拟合较少)。在此,我们针对源数据集研究了该超参数。具体地说,我们通过将上下文长度从4改变到8到16来在11个数据集上重复实验。平均结果如图5(a)所示,它表明拥有更多的上下文标记会带来更好的性能,而将类标记放在中间会随着上下文长度的增加而获得更多的动力。总而言之,由于需要在性能和对分布偏移的鲁棒性之间进行平衡,因此不存在用于选择完美上下文长度的黄金规则。
Vision主干图5(B)总结了11个数据集的结果,这些数据集使用了涵盖CNN和ViT的各种Vision主干。预期结果是:骨干网越高级,性能越高.在所有架构中,CoOp和手工提示之间的差距都很大。
与提示组合的比较 CLIP的作者(拉德福等人,2021)已经提出,通过将使用不同的手工制作的提示(例如,“大[CLASS]的照片")生成的多个零触发分类器集合起来,可以获得额外的改进,“一张不好的照片。”和“折纸[类]",其分别反映了图像不同比例、视图和抽象。我们很想知道,与提示组装相比,合作学习的提示是否仍能保持优势。为了公平比较,我们使用拉德福等人(2021)的选择提示,这些提示已经在ImageNet上进行了广泛的调整,以构建集成分类器。表2显示了比较结果,并证明了CoOp的优效性。考虑到快速组装的潜力,未来的工作可以从组装的角度研究如何改进CoOp。
与其他微调方法的比较我们进一步将CoOp与其他微调方法进行比较:i)微调CLIP的图像编码器; ii)优化添加到文本编码器输出的转换层; iii)优化添加到文本编码器输出的偏置项。结果示于表5中。显然,微调图像编码器并不能很好地工作。添加一个转换层稍微改进了零发射模型。添加偏置项显示出有希望的结果,但仍然在很大程度上低于CoOp,这表明通过文本编码器的梯度提供了更多有用的信息。
初始化我们比较了随机初始化和手动初始化。后者使用“a photo of a”的嵌入来初始化11个数据集的上下文向量。为了公平比较,我们还在使用随机初始化时将上下文长度设置为4。表3表明,一个“好的”初始化并没有太大的区别。虽然进一步调整初始化字可能会有所帮助,但在实践中,我们建议使用简单的随机初始化方法。
解读学习的提示是困难的,因为上下文向量是在连续空间中优化的。我们采取间接的方式,根据欧几里得距离在词汇表中搜索最接近学习向量的单词。注意CLIP(拉德福等人,2021)使用BPE表示(Sennrich等人,2016)用于标记化,因此词汇表包括经常出现在文本中的子词,例如“hu”(包含在许多单词中,如“hug”和“human”)。表4显示了一些数据集的检索结果。我们观察到有几个词与任务有些相关,例如Food 101中的“enjoy”,OxfordPets中的“fluffy”和“paw”,以及DTD中的“pretty”。但是当把所有最近的单词连接在一起时,提示就没有多大意义了。我们还观察到,当使用手动初始化(如“a photo of a”)时,收敛向量的最近单词大多是用于初始化的单词。我们推测,学习向量可能编码超出现有词汇的含义。总的来说,我们无法根据观察得出任何确切的结论,因为使用最近的单词来解释学习的提示可能是不准确的-向量的语义不一定与最近的单词相关。

5 结论、局限性和未来的工作

  1. 大型预训练视觉语言模型在各种下游应用中显示出惊人的强大能力。然而,这些模型,也被称为视觉基础模型,因为它们具有“关键中心但不完整”的性质(Bommasani等人,2021),需要使用自动化技术进行调整,以获得更好的下游性能和效率。
  2. 我们的研究为CLIPlike模型如何通过使用提示学习转变为数据高效的学习器提供了及时的见解,并揭示了尽管是一种基于学习的方法,但CoOp在领域泛化方面的表现要比手动提示好得多。这些结果有力地证明了快速学习在大型视觉模型中具有潜力。值得注意的是,我们的论文提出了第一个全面的研究适应大视觉模型与即时学习。
  3. 虽然CoOp的性能很好,但是其结果相对难以解释,就像NLP中的其他连续即时学习方法一样。实验还表明,CoOp对噪声标签敏感,因为其在Food101上的性能较弱。
  4. 尽管如此,CoOp的简单性使得将来的工作易于扩展,并且仍有许多有趣的问题需要探索,例如跨数据集转移(Zhou等人,2022a)和测试时间适应(Wang等人,2020年)的报告。研究用于超大尺寸视觉模型的更通用的适配方法也将是令人感兴趣的(Jia等人,2022年;Bahng等人,2022;Gao等人,2021年)的报告。综上所述,本文的实证研究结果和启示可以为未来新兴基础模型的有效适应方法的研究铺平道路,这仍然是一个新兴的研究课题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/879566.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于SpringBoot+Vue的篮球馆会员信息管理系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于JavaSpringBootVueMySQL的…

36.贪心算法3

1.坏了的计算器(medium) . - 力扣(LeetCode) 题目解析 算法原理 代码 class Solution {public int brokenCalc(int startValue, int target) {// 正难则反 贪⼼int ret 0;while (target > startValue) {if (target % 2 0…

深入理解中比较两个字符串差异的方法”或“高效比对字符串:diff-match-patch:c++实战指南

diff-match-patch 是一个强大的开源 JavaScript 库,由 Google 开发并维护,用于计算两个字符串之间的差异,并进行高效的匹配和补丁应用。这个库广泛应用于版本控制系统、协同编辑系统以及任何需要处理文本变化的场景。 GitHub地址:…

继承1 2024_9_18

1.继承的基本用法 当需要继承的时候,我们就在派生类的后面加上一个权限父类,这个权限可以是公有,保护和私有,后面就是继承的父类.此时,下面的stu这个派生类,也就可以使用Person里面的方法了. 2.继承基类成员访问方式的变化 当父类被继承到派生类的时候,此时会根据继承方式的不…

k8s的NodeIP、PodIP、ClusterIP、ExternalIP

1.NodeIP K8s集群由Master Node与Worker Node组成。 Node:组成k8s集群的机器,可以是物理机或虚拟机。 Master Node :管理节点也叫控制平面主要负责管理控制方面。 Worker Node::工作节点用于部署处理业务的工作负载或p…

spring springboot 日志框架

一、常见的日志框架 JUL、JCL、Jboss-logging、logback、log4j、log4j2、slf4j.... 注意:SLF4j 类似于接口 Log4j ,Logback 都是出自同一作者之手 JUL 为apache 公司产品 Spring(commons-logging)、Hibernate(jboss…

万兆时代 TCP/IP如何赋能以太网飞跃

科技飞速发展,数据传输的需求日益增长,尤其是在物理、科研等领域,对数据传输的速度、稳定性和效率提出了更高的要求。在这样的背景下,万兆以太网(10Gbit Ethernet)以其高带宽、低延迟和强大的传输能力成为众…

视频监控摄像头国标GB28181配置参数逐条解析

转载:视频监控摄像头国标GB28181配置参数逐条解析 现在的很多信息化项目,都会涉及到国标GB28181的视频监控产品,当我们配置这些国标平台,录像机,摄像头时,如果对相关参数的定义不清楚的话,会给我…

Vulnhub:BlueSky

靶机下载地址 信息收集 主机发现 nmap扫描攻击机同网段存活主机。 nmap 192.168.31.0/24 -Pn -T4 靶机ip:192.168.31.171。 端口扫描 nmap 192.168.31.171 -A -p- -T4 开放端口22,8080。 目录扫描 访问8080端口,如图,是tomcat管理页面…

硬件工程师笔试面试——变压器

目录 9、变压器 9.1 基础 变压器原理图 变压器实物图 9.1.1 概念 9.1.2 变压器组成结构 9.1.3 变压器原理 9.1.4 变压器的类型 9.1.5 应用领域 9.2 相关问题 9.2.1 变压器的工作原理是什么? 9.2.2 如何选择合适的变压器类型? 9.2.3 变压器在实际应用中,如何进行…

安卓BLE蓝牙通讯

蓝牙测试demo 简介   Android手机间通过蓝牙方式进行通信,有两种常见的方式,一种是socket方式(传统蓝牙),另一种是通过GATT(BLE蓝牙)。与传统蓝牙相比,BLE 旨在大幅降低功耗。这样…

iKuai使用及设置流程

iKuai使用及设置流程 iKuai安装步骤 一、配置主机 1.电脑连接ETH0网口 2.ETH1网口连接猫上面的千兆口 3.手动配置pc的IP地址和192.168.1.1./24在同一网段 3.浏览器输入192.168.1.1 admin admin 二、外网设置 1.直接联通电信网络设置 2.点击 网络设置-内外网设置-点击接…

Python “字符串操作” ——Python面试100道实战题目练习,巩固知识、检查技术、成功就业

本文主要是作为Python中列表的一些题目,方便学习完Python的元组之后进行一些知识检验,感兴趣的小伙伴可以试一试,含选择题、判断题、实战题、填空题,答案在第五章。 在做题之前可以先学习或者温习一下Python的列表,推荐…

食品检测与分类系统源码分享

食品检测与分类检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer V…

推荐10款最佳的电脑监控软件,知名电脑监控软件推荐

随着互联网和科技的飞速发展,电脑监控软件成为企业和个人用户管理和保护信息安全的必备工具。这些软件可以帮助你实时了解电脑的使用情况、保护隐私、优化工作效率,甚至防止潜在的安全威胁。在这篇文章中,我们将为你推荐10款最佳的电脑监控软…

iPhone 16系列:摄影艺术的全新演绎,探索影像新境界

在科技的浪潮中,智能手机摄影功能的进化从未停歇。 苹果公司即将推出的iPhone 16系列,以其卓越的相机升级和创新特性,再次站在了手机摄影的前沿。 从硬件到软件,从拍照体验到图像处理,iPhone 16系列都展现了其在移动…

1×4矩阵键盘详解(STM32)

目录 一、介绍 二、传感器原理 工作原理介绍 三、程序设计 main.c文件 1x4key.h文件 1x4key.c文件 四、实验效果 五、资料获取 项目分享 一、介绍 矩阵键盘是单片机外部设备中所使用排布类似于矩阵键盘组,矩阵式结构的键盘会比独立键盘复杂一点&#xff…

国内外ChatGPT网站集合,无限制使用【2024-09最新】~

经过我一年多以来,使用各种AI工具的体验,我收集了一批AI工具和站点 这些工具都是使用的最强最主流的模型,也都在各个领域里都独领风骚的产品。 而且,这些工具你都可以无限制地使用。 无论你是打工人、科研工作者、学生、文案写…

Python 数学建模——傅里叶变换时间序列分析

文章目录 前言原理Python 库函数实现单周期函数多周期函数真实数据挑战 前言 在数学建模过程中,得到一个序列 x 1 , ⋯ , x n x_1,\cdots,x_n x1​,⋯,xn​,我们首先要进行数据分析,其中就包括分析数据的周期性。这里的周期性不是数学上严格…

逆向学习系列(三)adb的使用

由于是记录学习,我就用结合自己的理解,用最通俗的语言进行讲解。 adb是android debug bridge的简写,其作用就是将电脑和手机相连接,用电脑控制手机。 一、adb哪里来 我使用的adb一般都是安装模拟器的时候,模拟器自带…