无需下游训练,Tip-Adapter大大提高了CLIP图像分类的准确性.研究背景对比图像语言预训练模型(CLIP)最近展示了强大的视觉域迁移能力,可在新的下游数据集上实现零样本图像识别。为了进一步提高CLIP的迁移性能,现有方法使用few-shot设置,例如CoOp和CLIP-Adapter,为少量下游数据集提供训练数据,使CLIP能够更好地针对不同的视觉场景。调整。但是,这个额外的训练步骤会带来相当大的时间和空间资源开销,一定程度上影响了CLIP固有的快速知识迁移能力。因此,我们提出了Tip-Adapter,一种不需要额外的下游训练并且可以大大提高CLIP准确性的少镜头图像分类方法。基于此,我们提出了一种只需要少量微调就可以达到最先进性能的解决方案:Tip-Adapter-F,它实现了效率和性能之间的最佳折衷。如下表1所示,Tip-Adapter不需要任何训练时间,即可以将ImageNet数据集中的CLIP提高+1.7%的准确率(Accuracy),而Tip-Adapter-F只需要十分之一的训练时间前一个方案的训练时间(Epochs,Time),可以达到现有最好的分类性能。表1:ImageNet数据集II上不同方案的16-shot图像分类精度和训练时间的比较。研究方法1.Tip-AdapterTip-Adapter的整体网络结构如下图1所示。对于给定的few-shot训练数据集和标签,我们使用CLIP通过非训练方案构建缓存模型(CacheModel),它存储来自下游训练数据的分类知识;在测试时,Tip-Adapter通过将CacheModel的预测与原始CLIP的预测线性相加,获得了更强的最终分类结果。具体来说,我们使用CLIP预训练的视觉编码器(VisualEncoder)提取few-shot训练集中所有图片的特征作为CacheModel的Keys;并将相应的图片标签转换成one-hotencodedForm,作为CacheModel的Values。这种Key-ValueCacheModel构造方法不需要任何训练开销,因为它使用了预训练的VisualEncoder;并且考虑到每个类别只包含少量图片(1到16张),CacheModel几乎不会占用额外的显存开销,参考GPUMem。指标如表1。对于一张测试图片,我们会先使用CLIP的VisualEncoder获取其特征,然后将特征作为Query到CacheModel进行下游小样本数据的知识检索。由于Keys也是由CLIP的VisualEncoder提取出来的,与测试图像特征Query同源,我们可以直接计算它们之间的余弦相似度,得到一个Key-Query邻接矩阵,可以看作是每个Value对应的权重。因此,我们可以通过计算Values的加权和来得到通过检索该测试图像的CacheModel得到的分类预测。此外,我们还可以通过将测试图像特征与CLIP的TextualEncoder文本特征进行匹配,得到CLIP的零样本预测。通过对两者之和进行线性加权,得到最终的分类预测,这不仅蕴含了CLIP预训练图像语言的对比知识,还结合了下游新数据集的few-shot知识,因此它可以实现更准确的分类。强大的图像分类精度。基于Tip-Adapter的网络结构,我们可以进一步将CacheModel的Keys部分改为学习参数,即可以通过训练更新。解决方案是Tip-Adapter-F。借助已经构建的缓存模型,Tip-Adapter-F只需要现有CLIP-Adapter的十分之一的训练轮数和时间,并且可以获得更高的性能,如表1所示。图1:Tip-Adapter和Tip-Adapter-F的网络流程图2.Tip-Adapter与现有方案的区别和联系与CLIP-Adapter相比,如图2所示,Tip-Adapter中存储的Keys和Values其实它们可以分别对应CLIP-Adapter中adapter结构的两个线性层,只不过前者是在没有训练的情况下构建的,而后者是随机初始化的,然后需要训练学习到最好的参数。图2:与CLIP-Adapter相比,Tip-Adapter对比现有的其他CacheModel构建方案。如图3所示,Tip-Adapter的CacheModel可以看作是一种多模态的可视化语言Cache。因为CLIP的TextualEncoder输出的特征可以看成是文本的Key-Value,相当于把测试图像特征看成一个Query,分别在视觉和文本缓存中检索知识。与现有仅包含视觉缓存的解决方案相比,Tip-Adapter可以利用多模态知识获得更强的识别性能。图3:Tip-Adapter与构建缓存模型III的其他方案的比较。实验结果1.ImageNet中的分类精度图4和表2比较了Tip-Adapter、Tip-Adapter-F和现有方案在1、2、4、8、16shots的少样本图像分类精度;表3比较了VisualEncoder在16-shotImageNet数据集上使用不同CLIP的准确性。可以看出,我们的两种方案都以较小的资源开销取得了优异的性能。图4和表2:不同方法在ImageNet数据集上的1-16-shot图像分类精度比较表5:不同CLIPVisualEncoder在16-shotImageNet上的图像分类精度比较2.在其他10个图像分类数据中集如图5所示。我们提供了另外10个图像分类数据集的精度比较结果,分别是StandfordCars、UCF101、Caltech101、Flowers102、SUN397、DTD、EuroSAT、FGVCAircraft、OxfordPets和Food101。如图所示,我们的Tip-Adapter-F实现了最高的识别精度。图5:不同方法在另外10个数据集上的1-16-shot图像分类准确率比较3.域泛化的评估我们还在域中测试了Tip-Adapter和Tip-Adapter-F)的性能。如表6所示,我们的两种方案都表现出很强的鲁棒性和特征可移植性。四。结论本文提出了Tip-Adapter,这是一种使用CLIP进行下游少镜头图像分类的免训练方案。Tip-Adapter构建Key-ValueCacheModel作为测试图像查询的知识检索库,并将CacheModel的预测与CLIP的零样本预测相结合,以获得更强的识别性能。我们期待Tip-Adapter能够激发更多关于预训练模型高效迁移的后续工作。
