AAAI 2024 | Adobe提出全新上下文提示学习框架CoPL,高效提升下游性能

news2024/11/24 18:49:41

4371db3d3c4840ec870827d18c37aa3c.png

 

论文题目:CoPL: Contextual Prompt Learning for Vision-Language Understanding
论文链接:https://arxiv.org/abs/2307.00910

提示学习(Prompt Learning)在近几年的快速发展,激活了以Transformer为基础的大型语言模型(LLM)的性能涌现。这一技术范式迅速在多模态学习等领域进行迁移,例如在CLIP跨模态对齐模型中加入可学习的Prompt,就可以在多种下游任务展现出通用性能,且具有一定的泛化能力。但这种简单的提示方法仍具有局限性,主要分为两个方面,其一是使用全局视觉特征作为提示输入可能会导致模型缺乏关注图像中前景对象的注意力能力。此外,在将提示送入到下游模块时,现有的方法对所有提示设置的权重完全相同,直观上思考,应该根据不同输入图像的内容来重新调整这一权重。

基于这两方面的局限,本文介绍一篇发表在人工智能顶级会议AAAI 2024上的文章,本文提出了一种称为上下文提示学习(Contextual Prompt Learning)的框架CoPL,CoPL可以更精确的实现提示信息与图像局部特征的对齐,为了使学习到的提示能够更好的适应到不同的下游任务中,作者设计了一种动态提示机制,从提取图像上下文特征的角度来对提示进行加权处理。本文的实验在包含few-shot和out-of-distribution等多种任务设置上进行,实验结果表明,CoPL在多模态提示学习领域已达SOTA性能。

01. 引言

传统的视觉分类任务通常需要在包含大规模类别的数据集上进行训练,例如ImageNet和OpenImages等。但是当模型在遇到一些训练分布之外的特殊图像时,就无法做出合理的预测,这种方法因为缺乏泛化性一直被学术界所诟病。研究人员开始探索如何将特定领域的知识注入到已有的模型中,使其具有一定的扩展能力。CoOp[1]方法是这一领域的先行工作,其通过引入NLP领域中提示学习的思想,通过训练可学习的提示向量来保留句子和标签之间的语义关系。但后来的一些工作指出,基于CoOp的方法具有灾难性知识遗忘的特点,同时仅采用模型的全局特征来生成提示,提示无法很好的适应到特定的下游任务中。

0f45b6bad60e4a9499f61b239c1a1a78.png

 

本文首先分析了现有框架的缺陷,相应的提出了一种上下文提示学习的改进框架CoPL,CoPL的关键思想是将提示与局部图像上下文进行对齐,如果仅使用全局特征,模型在很多few-shot和分布外的测试样本上很容易受到噪声的影响。如上图所示,CoPL首先确定图像局部上下文与哪些提示在语义上更相关,然后计算得到更合适的提示权重,通过拟合上下文信息到提示中,CoPL产生的特征会具有更强的鲁棒性和通用性

02. 本文方法

2.1 原始CLIP模型

2.2 CoOp和CoCoOp

2.3 上下文提示学习CoPL

虽然CoCoOp相比CoOp在性能方面已经获得了较大的提升,但其仍有很大的改进空间,由于 CoCoOp 使用全局特征向量来更新提示向量,因此其很难关注到图像中的局部感兴趣区域。此外,在将meta-net生成的条件向量附加到提示向量上时,CoCoOp没有体现不同区域的提示重要性。为了解决这些问题,本文提出了一种CoPL方法,CoPL方法的整体框架如下图所示。

2726049a9c624daeb41a3c85a78a027e.png

03. 实验效果

本文的实验在11个不同复杂度的图像分类数据集上进行,这些数据集主要包含通用分类数据集,例如ImageNet和Caltech-101,以及细粒度类别数据集:OxfordPets、StanfordCars、Flowers102、Food101和 FGVCAircraft。还有一些特殊领域中的标准数据集,例如场景识别、动作分类、纹理和卫星图像识别数据集。作者也选取了一些常见的CoOp变体方法作为baseline对比方法,包括CoCoOp、KgCoOp和ProGrad等。

7a6ea19c04dd4c25ab1acea89088f72a.png

 

上表展示了本文方法在上述几种数据集上的性能表现,本文作者提到,CoOp方法的主要缺点之一是其在训练分布之外的样本上表现不佳,无法很好的泛化到一些unseeen的类别上。本文的方法对这一方面进行了改进,如上表所示,CoPL在绝大多数数据集上的unseen子集上均获得了更好的分类精度。此外,我们还可以观察到,CoOp方法相比原始的CLIP方法性能有所下降,这也证明了其具有灾难性遗忘的问题

aec3492aeeb24d179fe1df1b72698e39.png

 

此外,作者在上图中进一步分析了本文提出的CoPL相比CoOp和CoCoOp方法在unseeen类别上的性能提升效果。可以看到,在行为识别数据集UCF101上,CoPL实现了将近20.6%的性能增益,而在其他语义信息较少的数据集,例如纹理数据集等,CoPL也可以得到一定的性能增益,这表明本文方法的出发点是正确的,通过对图像局部区域的注意力特征进行上下文建模,可以使得到的动态提示向量包含更多与下游任务相关的语义信息

b00edea5a49a46eabbf8f1be7967ad69.png

 

除了常规分类任务之外,本文作者还重点探索了本文方法在零样本(zero-shot)分类任务上的性能,如上表所示,首先将实验方法在简单的Caltech101数据集上进行训练,随后测试其在其他数据集上的性能,以评估方法的零样本迁移能力。从上表中可以看出,CoPL方法在大多数数据集上的表现都优于CoCoOp。虽然Caltech101是通用对象分类数据集,但是CoPL仍然能够将知识迁移到DTD数据集上来执行纹理识别任务

04. 总结

本文作者首先对现有基于提示的图像分类方法的缺陷进行了分析,即这些方法无法很好的关注到图像的局部关键信息。本文提出另一种全新的多模态提示学习方法CoPL,CoPL通过动态学习提示权重并将生成的提示向量与局部图像进行特征对齐来解决上述问题。作者通过在包含11个不同的数据集和场景中进行了完整的视觉分类实验,包括zero-shot、few-shot等不同的实验设置。实验结果表明,经过CoPL方法处理后的多模态对齐特征,具有良好的下游任务适应能力。

参考

[1] Zhou, K.; Yang, J.; Loy, C. C.; and Liu, Z. 2022b. Learning to Prompt for Vision-Language Models. Int. J. Comput. Vis., 130(9): 2337–2348.

[2] Zhou, K.; Yang, J.; Loy, C. C.; and Liu, Z. 2022a. Conditional Prompt Learning for Vision-Language Models. In CVPR.


关于TechBeat人工智能社区

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

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

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

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

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

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

相关文章

【机器学习】数据清洗之识别重复点

🎈个人主页:甜美的江 🎉欢迎 👍点赞✍评论⭐收藏 🤗收录专栏:机器学习 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步…

1、若依(前后端分离)框架的使用

若依(前后端分离)框架的使用 0、环境1、下载若依(1) 下载并解压(2) 导入SQL语句(3) 配置Redis、MySQL 2、运行若依3、登录(1) 前端(2) 后端 4、获取用户角色、权限和动态路由(1) 获取用户角色、权限(2) 根据用户信息获取动态路由【getRouters】 5、杂6、…

每日一练:LeeCode-530、二叉搜索树的最小绝对差【二叉搜索树+pre辅助节点+DFS】

本文是力扣LeeCode-530、二叉搜索树的最小绝对差【二叉搜索树pre辅助节点DFS】 学习与理解过程,本文仅做学习之用,对本题感兴趣的小伙伴可以出门左拐LeeCode。 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。…

面试经典150题——有效的数独

​"Strive not to be a success, but rather to be of value." - Albert Einstein 1. 题目描述 2. 题目分析与解析 2.1 暴力求解 没思路,老规矩,先来一次笨办法,先把步子迈出去,因为可能笨办法写着写着就会有更多的…

STM32 HAL库 STM32CubeMX -- IWDG(独立看门狗)

STM32 HAL库 STM32CubeMX -- IWDG 一、IWDG简介二、独立看门狗的工作原理三、驱动函数初始化函数HAL IWDG Init()初始化函数HAL IWDG Init()其他宏函数 四、超时时间计算第一种办法第二种办法(推荐) 一、IWDG简介 看门狗(Watchdog)就是MCU上的一种特殊的…

企业数字化转型战略规划与实践:迈向未来的关键之举

在信息技术的不断革新和全球数字化浪潮的推动下,企业数字化转型已经成为当今商业世界中不可或缺的一项战略规划。随着技术的进步,企业必须积极应对数字化转型的挑战,并将其作为发展的关键驱动力。本文将探讨企业数字化转型的重要性&#xff0…

JavaWeb之Servlet接口

Servlet接口 什么是Servlet? Servlet是一种基于Java技术的Web组件,用于生成动态内容,由容器管理,是平台无关的Java类组成,并且由Java Web服务器加载执行,是Web容器的最基本组成单元 什么是Servlet容器&…

浅谈电商场景中的扣除库存问题

库存 一、场景二、扣减时机1.下单时扣库存2.支付完成扣库存3.预扣除 三、库存存储方案1.数据库存储2.数据库缓存混合存储 四、整体方案1.单数据库方案2.主从数据库方案3.主从数据库缓存方案4.数据库缓存混合存储 五、其他情况1.秒杀QPS过高2.Redis QPS过高3.Master DB QPS过高4…

java生态环境评价Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java 生态环境评价管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发,数据库为Mysq…

【sgCreateTableColumn】自定义小工具:敏捷开发→自动化生成表格列html代码(表格列生成工具)[基于el-table-column]

源码 <template><!-- 前往https://blog.csdn.net/qq_37860634/article/details/136126479 查看使用说明 --><div :class"$options.name"><div class"sg-head">表格列生成工具</div><div class"sg-container"…

问题:人的安全知识和技能是天生的。() #媒体#知识分享#学习方法

问题&#xff1a;人的安全知识和技能是天生的。&#xff08;) 人的安全知识和技能是天生的。() 参考答案如图所示 问题&#xff1a;&#xff08;&#xff09;是党和国家的根本所在、命脉所在&#xff0c;是全国各族人民的利益所在、幸福所在。 A.人民当家作主 B.坚持和完善…

Crypto-RSA3

题目&#xff1a;&#xff08;BUUCTF在线评测 (buuoj.cn)&#xff09; 共模攻击 ​ 前提&#xff1a;有两组及以上的RSA加密过程&#xff0c;而且其中两次的m和n都是相同的&#xff0c;那么就可以在不计算出d而直接计算出m的值。 ​ 设模数为n&#xff0c;两个用户的公钥分别为…

JavaScript中什么是事件委托

JavaScript 中的事件委托&#xff08;Event delegation&#xff09;是一种重要的编程技术&#xff0c;它能够优化网页中的事件处理&#xff0c;提高程序的性能和可维护性。本文将详细介绍事件委托的概念、工作原理&#xff0c;并提供示例代码来说明其实际应用。 事件委托是基于…

ARM编译器5.06下载安装

ARM编译器5.06下载安装 1.官网下载 进入官方网站ARM Complier v5.06官网下载页面 进入后的界面为 往下翻&#xff0c;找到如图位置的5.06 for windows的文件&#xff0c;点击下载&#xff0c;下载时需要登录账号 2.安装 先解压下载的压缩文件&#xff0c;在installer文件夹里…

英文单词-计算: calculate、count、compute、reckon

英文单词-计算: calculate、count、compute、reckon count 数数; 计算总数; 重要; 包括在内; 正式认可; 认为; 被视作; compute 计算&#xff0c;估算; calculate 计算; 估算; 估计; 预料; reckon 测算&#xff0c;估计; 认为; 计算; 评定&#xff0c;断定; 这四个单词 “c…

文件管理大师:深入解析Linux的文件与目录操控

目录 一、文件命名规则 1、可以使用哪些字符? 2、文件名的长度 3、Linux文件名大小写 4、Linux文件扩展名 二、文件管理命令 1、目录创建/删除 mkdir创建目录 直接创建文件夹 创建多个文件夹 递归创建写法 总结mkdir 删除空目录 2、文件创建、删除 touch创建文…

数解 transformer 之 self attention transformer 公式整理

千万不要从任何角度轻看 transformer&#xff0c;重要的话说四遍&#xff1a; 千万不要从任何角度轻看 transformer 千万不要从任何角度轻看 transformer 千万不要从任何角度轻看 transformer Attention is all you need 整个项目是鬼斧神工之作&#xff0c;巧夺天工之作&a…

C语言程序设计(第四版)—习题7程序设计题

目录 1.选择法排序。 2.求一批整数中出现最多的数字。 3.判断上三角矩阵。 4.求矩阵各行元素之和。 5.求鞍点。 6.统计大写辅音字母。 7.字符串替换。 8.字符串转换成十进制整数。 1.选择法排序。 输入一个正整数n&#xff08;1&#xff1c;n≤10&#xff09;&#xf…

SpringBoot RabbitMQ收发消息、配置及原理

今天分析SpringBoot通过自动配置集成RabbitMQ的原理以及使用。 AMQP概念 RabbitMQ是基于AMQP协议的message broker&#xff0c;所以我们首先要对AMQP做一个简单的了解。 AMQP (Advanced Message Queuing Protocol) is a messaging protocol that enables conforming client a…

Springmvc 的参数绑定之list集合

标签中name属性的值就是pojo类的属性名 参数绑定4 list [对象] <form action"teaupd.do" method"post"> <c:forEach items"${list}" var"tea" varStatus "status"> 教师编号&#xff1a;<input…