前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >哈工大提出 CoCoLe: 从视觉概念到语言提示,VLMs 微调技术在少样本设置中的突破 !

哈工大提出 CoCoLe: 从视觉概念到语言提示,VLMs 微调技术在少样本设置中的突破 !

作者头像
AIGC 先锋科技
发布2024-07-20 10:20:58
470
发布2024-07-20 10:20:58
举报
文章被收录于专栏:AIGC 先锋科技

在本文中,作者提出了概念性代码本学习(CoCoLe),这是一种新颖的视觉-语言模型(VLMs)微调方法,旨在解决在少样本设置下对下游任务进行微调时提高VLMs泛化能力的问题。 作者认识到,诸如纹理、形状和颜色等视觉概念在域之间是自然可迁移的,并且在泛化任务中起着关键作用。 受到这一有趣发现的启发,作者学习了一个由视觉概念作为键、概念提示作为值的的概念性代码本,它作为图像编码器输出和文本编码器输入之间的桥梁。 具体来说,对于给定的图像,作者利用代码本来识别与类嵌入最相关的概念提示以执行分类。 此外,作者还引入了一个手工制作的概念缓存作为正则化手段,以减轻低样本情况下的过拟合问题。作者观察到,这种概念性代码本学习方法能够增强视觉和语言模态之间的对齐。 广泛的实验结果证明,作者的CoCoLe方法在包括基础到新的泛化、跨数据集评估和域泛化任务在内的各种评估设置中显著优于现有最先进的方法。 详细的消融研究进一步证实了CoCoLe中每个组件的有效性。

1 Introduction

预训练的视觉-语言模型(VLMs),例如CLIP [26]和ALIGN [15],在各种下游任务中已经取得了卓越的零样本性能。这些模型在大规模图像-文本数据集上通过对比优化目标进行训练,有效地将不同模态对齐并嵌入到一个共享的向量空间中。尽管它们的性能令人印象深刻,但由于其庞大的体积,将这些模型适应到多样化的下游任务仍然具有挑战性。因此,近期的研究集中在了通过在保持基础模型不变的同时调整附加参数来改进预训练VLMs的下游任务适应能力。例如,提示调优方法,如CoOp [42]和ProGrad [43],用可学习的提示替代手动提示以获得特定任务的知识,而基于 Adapter 的方法直接在VLMs顶部利用额外的模块,如Clip-adapter [9]和Tip-adapter [38]。这些方法在有限标注数据下取得了显著进展。

然而,作者观察到,目前针对CLIP的微调方法,如CoOp [42]和CPL [40],在细粒度数据集上的表现相对较低,例如FGVCArircraft [21](飞机分类)和UCF101 [31](动作分类)。为了在少样本设置中提高VLMs的泛化能力,本文提出了一种新颖的微调方法,称为概念性码书学习(CoCoLe)。作者的想法源于观察到的视觉概念在领域之间自然可迁移。如图1所示,在单一图像内存在多个关注不同区域的独特视觉概念。例如,选定的提示突出了考拉的手爪、耳朵以及考拉站立树枝。此外,不同类别的图像中存在相似的概念;例如,“消防车”、“赛车”和“自行车”类别共同拥有“轮子”的复合概念。

图1:(a)同一图像中选定提示的可视化。(b)不同图像上相同提示的可视化。使用Grad-CAM [30]进行可视化。

受到这一有趣发现的启发,作者 Proposal 学习一个概念性码书,包含视觉概念作为键,概念提示作为值,作为图像编码器输出和文本编码器输入之间的桥梁。具体来说,对于给定的图像,作者利用码书识别与类别嵌入最相关的概念提示以执行分类。此外,作者还引入了一个手工制作的概念缓存作为正则化,以减轻低样本场景下的过拟合问题。如图2所示,作者观察到这种概念性码书学习方法可以增强视觉和语言模态之间的对齐。作者的贡献可以总结为:* 作者为视觉-语言模型提出了一种名为CoCoLe的新颖微调方法,以解决泛化任务性能下降的问题。

  • CoCoLe引入了一个概念性码书,自适应地学习视觉概念及其相应的概念提示,并通过正则化进一步保证泛化能力。
  • 大量的实验结果证明了与现有最先进方法相比,所提出的CoCoLe在基础到新泛化、跨数据集迁移和领域泛化任务中的卓越性能。

2 Related Work

Vision-Language Models

近年来,预训练的视觉-语言模型(VLMs)已成为一种显著趋势。利用海量的图像-文本数据,这些大规模模型可以通过对比损失有效地获取视觉表示,使它们能够掌握视觉和文本语义,并实现成功的模态对齐。当前研究[37, 42]已经展示,通过利用大量的图像-文本对,VLMs在一系列下游视觉任务上表现出卓越的性能[6, 13, 16]。例如,通过在40亿在线图像-文本对上进行对比学习得到的CLIP[26],在分类任务上展示了显著的零样本准确度。作者的方法旨在利用CLIP的综合能力进行知识引导的微调,以更好地适应下游任务。

VLMs的提示调整

作为预训练视觉-语言模型的文本输入,提示为下游任务提供指导,从而从VLMs的内在知识中提炼出与任务相关的信息[41, 42]。在这一领域开创先例的CoOp[42]通过对一组可学习的向量的提示上下文进行端到端优化,但未能泛化到未见过的类别。为了解决这个问题,CoCoOp[41]通过生成条件提示改进了CoOp的泛化能力。此外,KgCoOp[36]通过最小化学习提示与手工提示之间的差异来增强泛化能力,而CoPrompt[28]通过将可训练模型限制在预训练模型上,避免在下游任务上过拟合。同时,还有一些方法探索了提示的多种形式。MaPLe[17]通过耦合函数调整视觉和语言分支,以诱导跨模态协同,而CPL[40]利用CLIP强大的泛化能力,通过投影仪建立一个视觉概念缓存以捕捉多级视觉特征。

在作者的工作中,作者主要关注提示调整方法,并通过一个带有手工概念缓存的规则化可学习码本,精心操作可学习向量。在现有方法中,与作者的方法最相关的是CoOp和CPL。与CoOp相比,所提出的CoCoLe引入了自适应码本,而不是固定到特定类别或任务。另一方面,CoCoLe利用跨领域的概念可迁移性,以最优的手工概念为基础的提示作为规则化,防止码本过拟合。

Visual Concept Learning

先前的研究确定了视觉概念学习的两种主要方法。第一种方法通常使用手动概念标注(例如,颜色、纹理和面料)对训练图像进行标注[24, 25],而另一种方法利用无监督学习设计数据驱动概念。然而,这些方法可能会在所学的概念中引入偏见,从而限制它们整体的表现。最近的研究寻求补充提示方法以捕捉无偏见的视觉概念[33, 34]。值得注意的是,CPL[40]首先利用CLIP[26]的能力设计一个无监督的概念缓存。此外,在本研究中,作者引入了一个可学习的代码簿,由手工制作的概念缓存进行监督,它自动选择与视觉概念对齐的概念提示。

3 Method

在本节中,作者展示了作者方法的细节。首先,作者提供了背景以及作者提出的CoCoLe的概述。其次,作者深入探讨CoCoLe的具体细节。最后,作者介绍了CoCoLe的训练和推理过程。

Background and Overview

CLIP和CoOp.CLIP [26]由两个编码器组成:一个视觉编码器,负责处理图像输入,以及一个文本编码器,设计用来处理相应的文本提示,构建为“一张[CLS]的照片”,其中[CLS]代表类别的词嵌入。在训练过程中,CLIP学习优化图像特征与与真实标签相关的提示嵌入之间的相似度。CoOp [42]进一步通过使用一组个可适应的上下文向量(每个具有与词嵌入相同的维度)替代手动提示构建,这些向量通过梯度下降迭代更新。对于特定的类别,相应的提示可以表示为。

CoCoLe概述。在图3中,作者展示了作者提出的CoCoLe方法的概览。图3(a)展示了手工构建概念缓存的过程。作者首先构建了一个描述主要视觉概念的文本概念列表,然后利用CLIP强大的文本-图像关联能力,发现每个文本概念特征具有Top-最高相似度分数的图像特征。这些Top-“匹配”特征被平均并作为键存储在视觉概念缓存中,其对应的文本概念作为值。图3(b)展示了基于手工概念提示的过程:作者首先通过提取图像特征,然后使用图像特征作为 Query ,通过余弦距离找到Top-相似的键,最后利用相应的值与类嵌入作为输入,用于LLM(例如,GPT [2])生成最优的手工概念基础提示,表示为,其中是类的数量。

图3(c)展示了CoCoLe的训练流程。作者首先为给定图像使用视觉编码器提取视觉特征。接下来,作者按照(b)生成基于手工概念提示,并通过提取文本特征,表示为。概念代码本中的视觉概念(键)和概念提示(值)是可训练的参数,通过四个损失函数进行优化。是分类损失,用于最大化图像特征与相应文本特征之间的相似性。旨在缩短选择的键(Top-相似的视觉概念)与图像特征之间的距离,使键能够学习可泛化的概念。作为一种正则化,用于减少过拟合问题,确保通过选择的已学习提示产生的文本特征与基于手工概念提示产生的特征不会显著偏离。最后,使提示的文本特征正交,以增加提示的多样性。

Conceptual Codebook Learning (CoCoLe)

可学习的概念代码本。在CoOp框架中,每个类别嵌入都关联到一组提示向量。然而,属于同一类的图像常常包含多种概念。将这些不同概念混淆到单一组提示中可能导致重大的知识损失。此外,CoOp提示中编码的信息缺乏类间互动,因为一个类的概念可能有助于识别具有相似概念的另一个类。例如,当呈现一张猫在树上的图像时,"在树上"的概念也可能适用于其他动物(如在树上的考拉)。作者假设基于图像概念微调提示可以促进与这些概念相关的文本描述的学习,从而提高跨数据集的泛化能力。

因此,作者提出了CoCoLe,如图3所示。CoCoLe的关键洞察是一个可训练的概念代码本,使图像能够自主地根据其固有的概念确定应学习的提示。对于每个训练输入,仅选择与当前图像概念对齐的提示子集,并单独训练。可学习的概念代码本将视觉概念作为键,概念提示作为值,由(键,值)对组成,表示为,其中表示可学习的概念代码本,每个与图像特征具有相同的维度,每个由个可学习向量组成。将所有可学习的视觉概念集合表示为,所有可学习的概念提示集合表示为。在最佳情况下,作者预期图像本身应决定应选择的提示,由其所包含的概念引导,以指导预测过程。为此,对于输入图像,作者首先获取其图像特征,其中是图像的索引。然后作者计算与之间的余弦相似度得分,表示为:

接下来,作者选择具有Top-余弦相似度得分的键形成集合,这表示从中为第张图像特定选择的Top-视觉概念子集。然后作者选择与这些视觉概念配对的概念提示,表示为,其中是特定为选择的第个提示。这些提示附加到的类别名嵌入上,如图3所示,文本编码器的文本输入可以表示为,其中表示连接。因此,对于测试图像和根据的概念选择的提示,可以获取文本特征,即。最后,将图像预测为类别的概率计算为:[公式部分未翻译]。

从更广泛的角度来看,作者建议的可适应概念码本作为连接图像编码器输出和文本编码器输入的桥梁。关键字被微调以与识别的图像特征紧密对齐,这些特征包含丰富的上层信息,如图像概念。同时,提示被细化以包含与相应图像概念相关的文本细节,从而在类名嵌入的同时,为模型预测提供改进的指导。

手工制作的概念缓存。在图3(a)中,遵循[39],作者首先构建了一个综合列表,包含个描述性文本概念,这些概念是从已建立的视觉概念数据集中收集的[39; 40]。这些描述涵盖了代表纹理、颜色、亮度、密度等词汇,作者将这些描述归类为50个类别。这些术语的示例可以在图4中找到。该字典表示为。遵循CLIP的零样本设置,作者首先将附加到手动设计的提示"The photo is...",以形成特定概念文本输入。因此,利用文本编码器,作者生成文本概念特征,表示为。

作者将手工制作的概念缓存表示为。其中键和值分别是视觉概念和文本概念词。视觉概念是通过利用文本概念特征和从训练图像中获得的CLIP模型来发现的。在-shot -class小样本学习场景中,每个类中存在个标记图像。利用CLIP视觉编码器,作者生成它们各自的图像特征,表示为。对于每个文本概念特征,使用公式计算与所有视觉特征之间的相似度分数,其中和都是标准化的。随后,作者确定相似度分数最高的Top-图像特征,并将它们的平均值作为键,以及对应的文本概念词作为关联值,存储在手工制作的概念缓存中。

带正则化的概念码本学习。图3(b)展示了基于手工制作概念提示的过程,作者首先通过提取图像特征,然后使用图像特征作为 Query ,通过余弦距离找到Top-相似的键,最后得到相应的值(概念词)。与类名一起,这些概念词被输入到LLM(例如GPT[2])以生成最佳的手工制作概念提示。因此,作者通过引入正则化来解决下游任务泛化能力下降的问题,确保从选择的已学习提示产生的文本特征与从手工制作概念提示产生的特征没有显著差异。作者通过使用欧氏距离作为从手工制作概念提示产生的文本特征()和从选择的已学习提示获得的文本特征()之间的约束来强制这种一致性。尽管其他措施,如余弦距离也可以作为约束,但作者的经验发现欧氏距离性能更优。作者可以将这种一致性约束表示为:

其中 是欧氏距离, 是已见的类别数量。

Training and Inference

训练目标。基于方程2,图像分类损失表述为:

除了之外,还需要一个匹配损失,将匹配的top-键拉向图像嵌入,使得键从样本中学习丰富的概念。作者使用余弦距离作为匹配损失。然而,其他类似的准则,如欧氏距离,也可以作为匹配损失。作者经验性地观察到,余弦距离作为匹配损失能带来最好的性能。因此,用于优化键的匹配损失定义为:

最后,为了使学到的提示在语义上更加多样化,作者采用第三个损失来正交化不同提示的嵌入,以增加提示的多样性:

其中表示余弦相似性。这样,整体优化目标定义为:

键通过进行优化,提示通过、和进行优化。

推理。 一旦通过训练学到了视觉和文本概念(键和值),它们可以与CLIP一起用于下游任务,采用标准的零样本CLIP推理设置。如图3所示,作者首先使用视觉编码器生成测试图像的视觉特征,然后使用通过余弦相似性选择top-相似的视觉概念(键),接下来,作者将键对应的提示(值)拼接起来,以获得概念提示,这与每个给定的名称融合,产生概念提示文本特征。最后,使用概念提示文本特征和输入图像特征进行零样本推理,以在测试图像上生成分类分数。

4 Experiments

在本节中,作者全面展示了作者方法的评估,包括实验结果、与现有先进方法的性能比较以及消融研究。

Experimental Setup

基准设置. 作者遵循之前的工作,在三个具有挑战性的任务上广泛评估作者提出的方法:

  • 基础类到新颖类的泛化能力. 作者评估了在数据集内零样本场景下作者方法的泛化能力。数据集平均分为基础类和新颖类。作者在基础类上用少样本图像训练作者的模型,然后在基础类和新颖类(未见过的)上进行评估。
  • 跨数据集评估. 与仅在一个数据集内转移的基础到新颖泛化相比,跨数据集转移是一个更具挑战性的泛化任务,后者仅在单一数据集内转移,而前者在跨不同数据集之间转移,例如从目标识别转移到纹理分类。在这个实验中,作者遵循之前的工作,在1000个ImageNet类的少样本设置下训练作者的模型,然后在十个未见过的其他数据集上评估其性能。
  • 领域泛化. 作者评估了模型在分布外泛化的性能。同样,作者在四个包含相同类别但来自不同分布的ImageNet变体上直接评估在ImageNet上训练的模型。

数据集. 为了在基础到新颖泛化和跨数据集转移任务上进行实验,作者遵循之前研究[26, 41, 42]的设置。具体来说,作者在11个不同的图像分类数据集上评估作者的方法。这些数据集涵盖了广泛的任务,包括通用目标分类(例如ImageNet[4]和Caltech101[7]),细粒度分类(例如OxfordPets[23],StanfordCars[18],Flowers102[22],Food101[1],FGVC Aircraft[21]),场景识别(SUN397[35]),动作识别(UCF101[31]),纹理分类(DTD[3])以及卫星图像识别(EuroSAT[10])。对于领域泛化任务,作者使用ImageNet作为源数据集,并在四个ImageNet变体上评估作者方法的性能:ImageNet-A[12],ImageNet-R[11],ImageNet-V2[27]和ImageNet-Sketch[32]。

实现细节. 为了确保公平比较,作者在所有三个基准任务上都使用了ViT-B/16 CLIP模型。对于基础到新颖泛化,作者使用16样本图像在基础类上训练作者的模型,然后评估基础类和新颖类。对于跨数据集评估和领域泛化,都使用在16样本ImageNet上训练的模型,在每个目标数据集上进行测试。在训练过程中,作者保持视觉和文本编码器都是固定的。作者的数据预处理遵循CLIP的协议,包括调整大小和随机裁剪操作等。对于基础到新颖生成任务,作者在ImageNet上训练30个周期,在其他数据集上训练20个周期。 和 分别设置为3和10。作者将提示长度设置为8,概念库中的概念数为100,选定的概念数为4。训练使用批大小为8,初始学习率为。作者使用AdamW优化器以及余弦退火调度器。所有方法的结采均是在3次运行后取平均值。

Base-to-Novel Generalization

在本节中,作者将提出的方法与七种 Baseline 方法进行了比较:零样本CLIP [26],CoOp [42],CoCoOp [41],MaPLe [17],KgCoOp [36],CoPrompt [28] 和 CPL [40]。表1展示了在16个样本的情况下,针对11个数据集的基础到新奇的泛化实验结果。作者将最佳结果用粗体标出,并将相对于次佳性能的改进用蓝色标记。从表0(a)中可以看出,所有11个数据集的平均结果显示,作者的方法在基础类别和新奇类别上都大幅优于所有 Baseline 方法。与先驱提示学习方法CoOp和CoCoOp相比,作者方法的性能提升分别达到了+11%和+6.9%。与之前的最先进方法(CPL)相比,作者的方法在新奇类别上提高了+2.28%,在调和平均(HM)上提高了+1.62%。这些结果证明了作者提出方法在零样本泛化能力上的强大。同时,作者的方法在基础类别上比CPL高出+0.84%,显示出强大的小样本学习能力。

对于各个数据集的性能,作者的方法在所有数据集的新奇类别和HM上都优于CPL。对于基础类别,作者的方法在11个数据集中的8个上相对于CPL实现了更优越的性能提升。即使在Catech101,Flower102和DTD上性能略有下降,但幅度仍然很小。这突显了作者的方法在增强对新奇类别泛化能力的同时,没有牺牲基础类别的性能。值得注意的是,除了CPL之外,作者的方法在所有数据集上相对于其他所有方法都取得了显著的性能优势。与次佳性能的 Baseline 方法相比,作者的方法在FGVCAircraft,DTD和ImageNet上分别高出高达+3.32%,+3.65%和+2.55%。这些观察表明,作者的方法可以有效学习多样性和区分性的视觉和文本概念,从而增强CLIP在泛化任务上的适应性。

Cross-Dataset Evaluation

表2展示了与CoOp、CocoOp、MaPLe、CoPrompt和CPL的比较结果。总体而言,作者的CoCoLe方法在源数据集和目标数据集上均取得了最佳性能,目标平均准确率为68.91%,比CPL高出0.84%。值得注意的是,在UCF101这个动作图像数据集上,作者的方法相较于CPL取得了最大的2.26%的提升,而UCF101的基础概念与ImageNet截然不同。这表明作者方法中的概念代码书学习有助于提高泛化能力。

Domain Generalization

在表3中,作者提供了源领域和目标领域之间的分类准确度,以及在目标领域内的平均准确度。作者的方法在源数据集和目标数据集上始终优于所有 Baseline ,在此任务上达到了新的最先进平均准确度61.85%。值得注意的是,在ImageNet-R上,作者的方法比CPL [40] 高出1.51%。这表明作者的模型对分布偏移具有显著的鲁棒性。

Ablation Studies

在本节中,为了系统地评估作者提出的方法,作者提供了对作者设计选择的实证分析,并展示了方法中不同组件的效果。除非另有规定,作者的实验是在ImageNet数据集上针对Base-to-Novel任务进行的,作者报告的是调和平均值。

主要算法组件的贡献。

在表4中,是用于优化键的匹配损失,用于一致性约束,用于使不同提示的嵌入正交化。作者通过移除提出方法的不同组件来进行消融研究,以了解它们各自的重要性。在推理过程中,在表格的第一行,作者展示了CoCoLe的最终性能,其调和平均值为。在第一次消融实验中,作者从CoCoLe中移除了,导致性能下降了。这突显了对CoCoLe的重要性。接下来,作者移除了,实际上这会强制学习性概念提示与手工制作的概念基础提示之间的一致性。这导致性能下降了,表明一致性正则化的重要性。最后,作者移除了,这导致性能下降了。这表明可学习的概念代码本在CoCoLe中起着关键作用。总的来说,整体结果表明所有组件对提升性能有着显著的贡献。

The value of , , and .

如第3.2节所定义,是提示的长度,是概念代码本的大小,是同时为训练选择的学习视觉概念的数量(即代码本中的键)。如表5所示,当时,模型表现出最佳性能。如果提示过长,将增加训练时间和计算成本。关于,模型在时表现出色。此外,通过尝试不同的值发现,同时用过多的键和提示使训练饱和会降低模型性能。当时,模型达到峰值性能。

训练时间的比较。如表格6所示,作者提出的CoCoLe与其他方法相比,在性能上有显著优势。尽管与CoOp相比,作者的CoCoLe需要更长的训练时间,但仍比CoOp高出11%。此外,与CoCoOp和CPL相比,作者的方法在更短的时间内实现了实质性的性能提升。这证明了作者方法的效率和有效性。

可视化。如图1所示,为了确认各种提示确实捕捉到了不同的图像概念,作者使用Grad-CAM [30]来视觉化表示与不同提示相关的图像内容。观察图1(a),很明显,各种提示突显了同一图像内不同的区域,展示了所获得提示的多样性。例如,对考拉图像应用不同的提示,分别强调 Head 、爪子以及树木等不同区域,展示了所学提示的多样性。为了评估所学提示是否确实封装了具有更高层次语义的图像概念,作者在图1(b)中可视化了特定提示(,,)跨不同图像的内容。很明显,主要捕捉“轮子”的概念,封装了“草地”的概念,而专注于设备上的“屏幕”。这突显了提示在学习关键概念方面的有效性,这些概念可以跨图像推广,从而提高在泛化任务中的性能。在补充材料中,作者提供了所提方法的更多细节以及实验结果。

5 Conclusion

为了在下游任务中对VLMs进行微调的同时提高其泛化能力,作者提出了概念性代码书学习(CoCoLe)。学到的概念性代码书包含视觉概念作为键和概念性提示作为值,它作为图像编码器输出和文本编码器输入之间的桥梁。

此外,作者引入了手工制作的概念缓存作为正则化手段,以减轻在低样本情况下的过拟合问题。

广泛的实验结果表明,作者的CoCoLe方法显著优于现有的最先进方法。

(CoCoLe)。学到的概念性代码书包含视觉概念作为键和概念性提示作为值,它作为图像编码器输出和文本编码器输入之间的桥梁。此外,作者引入了手工制作的概念缓存作为正则化手段,以减轻在低样本情况下的过拟合问题。广泛的实验结果表明,作者的CoCoLe方法显著优于现有的最先进方法。

参考

[1].Conceptual Codebook Learning for Vision-Language Models.

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-07-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AIGC 先锋科技 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 Introduction
  • 2 Related Work
  • Vision-Language Models
    • VLMs的提示调整
      • 主要算法组件的贡献。
  • Visual Concept Learning
  • 3 Method
  • Background and Overview
  • Conceptual Codebook Learning (CoCoLe)
  • Training and Inference
  • 4 Experiments
  • Experimental Setup
  • Base-to-Novel Generalization
  • Cross-Dataset Evaluation
  • Domain Generalization
  • Ablation Studies
  • The value of , , and .
  • 5 Conclusion
  • 参考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档