ICCV 2023 | SuS-X:仅靠类别名称微调CLIP模型,剑桥大学联合DeepMind出品

news2025/1/12 22:48:12

论文链接: https://arxiv.org/abs/2211.16198
代码仓库: https://github.com/vishaal27/SuS-X

对比语言图像预训练(Contrastive Language-Image Pre-training,CLIP) 已成为计算机视觉社区通向自然语言领域的一种常用的方法,CLIP模型在各种下游任务上都展示除了强大的零样本(zero-shot)分类和检索性能。然而,为了在特定的下游任务上充分发挥其潜力,微调CLIP仍然是一个必需的步骤。对于普通的视觉任务而言,微调时需要访问大量目标任务分布中的图像,因而微调整个CLIP模型可能会占用大量的算力资源并且训练效果并不稳定

本文介绍一篇来自剑桥大学和DeepMind合作完成的论文,本文已被计算机视觉顶级会议ICCV 2023录用。在本文中作者提出了一种名为SuS-X的微调方法,SuS-X可以实现一种“仅靠名称迁移(name-only transfer)”的效果,即在微调过程中,模型对下游任务所掌握的唯一知识就是下游目标类别的名称。SuS-X由两个关键构建模块“SuS”和“TIP-X”组成,其既不需要密集数据的微调,也不需要昂贵的标记数据,打造了一种全新的微调范式。作者进行了大量的实验来评估SuS-X方法的可行性和性能,SuS-X在多达19个基准数据集上均实现了SOTA零样本分类效果。

01. 介绍

在开始介绍本文工作之前,我们简单回顾一下CLIP模型[1],CLIP是在含有4亿图像文本对的超大规模语料库上训练得到,其使用对比损失来最大化成对图像文本样本之间的相似性。CLIP在视觉语言设置中率先提出了零样本迁移的概念,即可以实现对未见过的样本进行分类。例如给定一个分类任务,CLIP可以直接将类别标签转换为对应类别的文本提示。例如“一个<CLASS> 的照片。”,其中<CLASS>随后会被每个类别的真实文本标签替换。然后,CLIP会计算所有类别的查询图像和文本提示之间的相似性,并选择提示与查询图像具有最大相似度的类作为预测标签。然而,CLIP的零样本性能通常会受到其预训练分布的限制。如果下游数据集分布与预训练期间训练的图像分布相差太大,CLIP的零样本性能会急剧下降。

为了缓解这一问题,本文作者的目标是采用CLIP和其他视觉语言模型(vision language models,VLMs)仅通过名称(仅需要类别名称,而不需要来自目标域的样本)和免训练的方式进行下游分类。本文提出的SuS-X框架如下图所示,其由两个新颖的模块组成:

(1)SuS(支持集,Support Sets),通过设计一种动态支持集管理策略,来实现无需来自目标任务的样本的训练效果。

(2)TIP-X,通过部署一个免训练的适应模块来将支持集得到的类别信息迁移到各种下游任务中。

对于给定的下游任务,SuS-X首先利用任务类别标签来构建一个支持集,然后从大型视觉语言数据库中(例如,LAION-5B[2])检索一系列真实场景中的图像。然后将构建好的支持集送入到TIP-X模块中进行下游任务迁移。

02. 方法细节

下图展示了SuS-X的两个主要模块SuS和TIP-X的内部细节,其中SuS模块位于图中右上角,通过构建动态支持集,可以仅基于目标类别名称来将视觉知识注入VLM。TIP-X模块位于图中右下角,是一种新型的免训练方法,可以直接利用图像文本距离来计算支持集和测试图像之间的相似性

2.1 SuS的构建

2.2 TIP-X免训练推理

03. 实验效果

为了详细的评估SuS-X零样本能力,作者在多达19个数据集上对其进行了测试,并且选择了6个非常流行的baseline方法。为了对比公平,作者将所有参与实验的方法的视觉backbone都设置为ResNet50。下表展示了SuS-X与其他baseline方法分别在Zero-Shot和Name-Only两种实验设置下的性能对比结果。

如上表所示,在所有19个数据集上,SuS-X方法的性能均达到了最佳,相比零样本CLIP,性能提升达到了4.6%。 此外,SuS-X相比目前免训练自适应方法中的两个SOTA(CuPL+ensemble 和VisDesc)平均性能提升达到1.1%和3.1%。

3.1 在不同VLM上的迁移效果

为了评估SuS-X方法的泛化性能,作者选用了其他两个常用的VLM进行实验,分别是TCL和BLIP,作者只保留了这些模型的图像和文本编码器来计算特征。下表为实验结果。

从上表中可以看出,本文提出的SuS-X方法在两个VLM中均明显优于所有基线方法,在19个数据集上的零样本性能平均提高了11.37%和5.97%。这表明本文方法并非特定于CLIP模型,而是可以轻松泛化到其他不同的VLM上

3.2 从Zero-Shot适应到few-shot

SuS-X方法的一个关键组成部分是TIP-X模块,TIP-X可以直接扩展到few-shot设置上,其中支持集是来自目标域的标记样本。为了在这种真实环境的支持集上评估TIP-X,作者对其进行了免训练的小样本分类实验,并且与同类型的SoTA方法——TIP-Adapter进行比较。下图展示了SuS-X、TIP-Adapter以及Zero-shot CLIP在K-shot分类任务设置上使用了11个数据集子集测试效果,其中K分别取1、2、4、8和16。

从图中可以看到,TIP-X明显优于Zero-shot CLIP和TIP-Adapter(在不同K-shot上的平均绝对增益为0.91%),这进一步证明了TIP-X方法在适应到few-shot免训练设置方面的通用性

3.3 对SuS支持集进行可视化

为了进一步展示SuS-X方法的综合能力,作者在下图中可视化了其在ImageNet上构建的两种支持集,其中来自ImageNet的真实图片与SuS包含的支持集图像按照相同的类别名称进行划分。其实我们很难区分真实的ImageNet样本和SuS样本,因此可以使用SuS支持集来模拟真实的数据分布。

04. 总结

本文针对Zero-shot和Few-shot问题,提出了一种仅通过类别名称迁移的模型免训练新范式,称为SuS-X。SuS-X仍然遵循对比学习原则,可以在多种大型语言视觉模型上完成新任务适应和微调。其首先通过SuS模块系统的构建一个包含丰富知识的支持集,但是无法访问任何目标分布中的样本。随后通过TIP-X模块将原始分类器能力快速迁移到新任务上,这一过程中无需密集数据的微调,也不需要非常标准的标注数据。通过研究SuS-X框架,作者观察到了先前方法中使用CLIP模态内嵌入距离来计算模态相似性的缺陷,并基于本文方法对这种嵌入距离进行了校准。

参考

[1] Alec Radford, Jong Wook Kim, Chris Hallacy, Aditya Ramesh, Gabriel Goh, Sandhini Agarwal, Girish Sastry, Amanda Askell, Pamela Mishkin, Jack Clark, et al. Learning transferable visual models from natural language supervision. In International Conference on Machine Learning, pages 8748–8763. PMLR, 2021

[2] Christoph Schuhmann, Romain Beaumont, Richard Vencu, Cade Gordon, Ross Wightman, Mehdi Cherti, Theo Coombes, Aarush Katta, Clayton Mullis, Mitchell Wortsman, et al. Laion-5b: An open large-scale dataset for training next generation image-text models. arXiv preprint arXiv:2210.08402, 2022

[3] Renrui Zhang, Wei Zhang, Rongyao Fang, Peng Gao, Kunchang Li, Jifeng Dai, Yu Qiao, and Hongsheng Li. Tipadapter: Training-free adaption of clip for few-shot classification. arXiv preprint arXiv:2207.09519, 2022.

作者:seven_


  关于TechBeat人工智能社区

TechBeat(www.techbeat.net)隶属于将门创投,是一个荟聚全球华人AI精英的成长社区。

我们希望为AI人才打造更专业的服务和体验,加速并陪伴其学习成长。

期待这里可以成为你学习AI前沿知识的高地,分享自己最新工作的沃土,在AI进阶之路上的升级打怪的根据地!

更多详细介绍>>TechBeat,一个荟聚全球华人AI精英的学习成长社区

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

mp4视频太大怎么发送?这样压缩视频就对了

随着科技的发展&#xff0c;视频格式多种多样&#xff0c;其中mp4格式因为其通用性而广受欢迎。然而&#xff0c;有时候我们会遇到一个问题&#xff1a;mp4视频文件太大&#xff0c;导致发送变得困难。那么&#xff0c;如何解决这个问题呢&#xff1f;下面就给大家分享几个实用…

【易盾点选】

拿官网的点选做个例子吧&#xff0c;比较省事&#xff0c;水一篇~ ​ 官网的接口目前都改成V3了&#xff0c;多了个dt参数&#xff0c;以及加密的一个函数也变动了下 点选坐标在这&#xff0c;加密函数未变&#xff0c;用逗号拼接 整个加密里的函数变了&#xff0c;直接重新…

live555-lastest 编译

1. live555-latest 源码下载&#xff1a;http://www.live555.com/ 2. 将下载的live-latest.tar.gz放到指定目录下解压&#xff1a;tar -xvf live-latest.tar.gz&#xff0c;cd 进入live目录&#xff0c;在live目录下有很多config.xxxx的相关配置文件&#xff0c;config.linux默…

什么是Vercel?

Vercel 是一个云平台&#xff0c;用于构建、部署和扩展无服务器应用程序和静态网站。由于其易用性、速度和处理大量流量的能力&#xff0c;它在开发人员中越来越受欢迎。 使用 Vercel&#xff0c;您可以使用各种编程语言和框架构建和部署应用程序&#xff0c;并利用自动 SSL、…

使用vue3.0实现一些动画效果

一&#xff0c; 动画效果&#xff1a; 1&#xff0c;横屏滚动 2&#xff0c;根据横屏滚动的距离&#xff0c;左侧文本缩小放大 3&#xff0c;鼠标悬浮单张图片时根据悬浮位置发生倾斜效果 横屏滚动函数&#xff1a; function handlerMouserScroll(event) { //鼠标滑动list…

【校招VIP】产品思维考察之用户体验

考点介绍&#xff1a; 在设计产品的功能点时&#xff0c;我们需要设想我们的用户到底是谁&#xff1f;他的需求是什么&#xff1f; 为此我们需要做用户分析&#xff0c;从而得出我们的用户画像&#xff0c;提供解决方案。用户调研是用户分析的一种方法&#xff0c;用户画像是结…

ESV1-8-C、ESV1-8-O、ESV1-10-C、ESV1-10-O插装式比例流量阀放大器

比例减压阀 EPPD2_2A、EPRV1-16、EPRV2-8 比例流量阀 EFV1-10-C、EFV1-10-O、EFV1-12-C、EFV1-12-O、EFV2-12-C、EFV2-12-O、EPV16A、EPV16B、ESV1-8-C、ESV1-8-O、ESV1-10-C、ESV1-10-O、ESV1-12-C、ESV1-12-O 比例流量阀 双油口压力补偿阀 EPFR14A、EPFR24A 比例溢流阀…

SwiftUI 5.0(iOS 17)TipKit 让用户更懂你的 App

概览 作为我们秃头开发者来说&#xff0c;写出一款创意炸裂的 App 还不足以吸引用户眼球&#xff0c;更重要的是如何让用户用最短的时间掌握我们 App 的使用技巧。 从 iOS 17 开始&#xff0c; 推出了全新的 TipKit 框架专注于此事。有了它&#xff0c;我们再也不用自己写 A…

Linux系统编程-C++ I/O库

文章目录 一、 总述二、输出缓冲三、文件输入输出四、string流五、输入输出格式总述1、控制布尔值的格式2、指定整型值的进制3、在输出中指出进制4、控制浮点数格式4.1、 指定打印精度5、输出空白 六、未格式化的输入输出操作 一、 总述 C使用标准库类来处理面向流的输入和输出…

Linux之shell条件测试

目录 作用 基本用法 格式&#xff1a; 案例 -f 用法 [ ] 用法 [[]] 用法 (()) 语法 文件测试 参数 案例 编写脚本&#xff0c;测试文件是否存在&#xff0c;不存在则创建 整数测试 作用 操作符 案例 系统用户个数小于50的则输出信息 逻辑操作符 符号 案例 …

Spring----IOC、注解

目录 一、简介 二、spring的组成及拓展 spring七大模块 核心容器(Spring core) Spring上下文(Spring context) Spring面向切面编程(Spring AOP) Spring DAO模块 Spring ORM模块 Spring Web模块 Spring MVC框架(Spring WebMVC) 拓展 三、IOC理论 IOC本质 Hello S…

11.(Python数模)(预测模型三)多元线性回归预测

多元线性回归 简介 多元线性回归使用在自变量和因变量有逻辑相关性的情况中。在实际应用中&#xff0c;多元线性回归经常用于探索和解释变量之间的复杂关系&#xff0c;例如经济学、社会科学和自然科学等领域。它提供了一种统计工具来分析多个自变量对因变量的影响&#xff0…

Windows下使用source insight连接远程Linux机器写代码

命令总结 基本会用到的命令都在这里了&#xff0c;流程里面就不加命令了&#xff0c;自行看表格 流程 linux安装 samba&#xff0c;并确认版本&#xff0c;确认samba服务运行状态配置samba用户配置samba的配置文件 在文件最后增加 示例如下&#xff1a; security user [pub…

大模型参数高效微调PEFT的理解和应用

简介 近年的大型语言模型&#xff08;也被称作基础模型&#xff09;&#xff0c;大多是采用大量资料数据和庞大模型参数训练的结果&#xff0c;比如常见的ChatGPT3有175B的模型参数量。随着Large Language Model(LLM)的横空出世&#xff0c;网络模型对常见问题的解答有了很强的…

分享大数据分析培训就业班课程内容

随着国家重视大数据&#xff0c;政府扶持大数据&#xff0c;大数据在企业中生根发芽根据人社部发布的《新职业--大数据工程技术人员就业景气现状分析报告》预计&#xff0c;未来5年&#xff0c;大数据行业的人才需求将保持30%-40%的增速&#xff0c;人才缺口总量将达到2000万人…

冠达管理股票分析:权益分派前买入好不好?

随着股票市场的不断升温&#xff0c;出资者们也越来越关注买入时机的把握。而其中一个重要的要素就是权益分配。那么&#xff0c;权益分配前买入好不好呢&#xff1f;本文将从多个视点进行剖析。 1、剖析权益分配对股价的影响&#xff0c;推断买入时机的合理性。权益分配是上市…

地图结构 | 图解占据栅格地图原理(附Matlab建图实验)

目录 0 专栏介绍1 栅格地图1.1 应用场景1.2 基本概念 2 占据栅格地图2.1 更新模型2.2 截断策略 3 仿真实现3.1 算法流程3.2 Matlab实现 0 专栏介绍 &#x1f525;附C/Python/Matlab全套代码&#x1f525;课程设计、毕业设计、创新竞赛必备&#xff01;详细介绍全局规划(图搜索…

蚂蚁开源编程大模型,提高开发效率

据悉&#xff0c;日前蚂蚁集团首次开源了代码大模型 CodeFuse&#xff0c;而这是蚂蚁自研的代码生成专属大模型&#xff0c;可以根据开发者的输入提供智能建议和实时支持&#xff0c;帮助开发者自动生成代码、自动增加注释、自动生成测试用例、修复和优化代码等kslouitusrtdf。…

小红书母婴行业文案怎么写,创作方向有哪些?

行业文案顾名思义就是有关于某个行业的文案&#xff0c;不过此类内容一般都具有商业性。随着互联网的深入&#xff0c;怎么对行业文案进行创作&#xff0c;也成为品牌的日常工作。今天为大家分享下小红书母婴行业文案怎么写&#xff0c;创作方向有哪些&#xff1f; 首先&#x…

arppy gis 读取text 并批量添加字段 arcpy.AddField_management

arppy gis 读取text 并批量添加字段 arcpy.AddField_management 例&#xff1a;给“省级行政区域”添加“A、B、C、D” 4个字段。 &#xff08;1&#xff09;用Excel制作出字段及其描述表&#xff0c;定义字段结构&#xff1b; &#xff08;2&#xff09;复制除标题行以为的内…