【提示学习论文】TCP:Textual-based Class-aware Prompt tuning for Visual-Language Model

TCP:Textual-based Class-aware Prompt tuning for Visual-Language Model(CVPR2024)

  • 基于文本的类感知提示调优的VLM
  • KgCoOp为baseline,进行改进,把 w c l i p w_{clip} wclip进行投影,然后与Learnable prompts进行结合。
    ![[TCPf2.png|600]]

Abstract

近年来,通过可学习的域共享或图像条件的文本tokens,促进生成适用于特定任务的分类器

问题:
这些textual tokens对unseen域具有有限的泛化能力,不能动态地适应测试类的分布

解决:
提出了新的基于文本的类感知提示调优(TCP,Textual-based Class-aware Prompt)。显式地结合关于类的先验知识,增强它们的可辨别性。利用文本知识嵌入(TKE),映射高泛化性的类级文本知识,到类感知文本tokens。通过无缝地将这些类感知提示集成到Text Encoder中,可以生成一个动态的类感知分类器,以增强对不可见域的可辨别性。
推断阶段,TKE动态地生成与unseen类相关的类感知提示,可作为即插即用的模型与现有方法轻松结合。

1 Introduction

图像条件文tokens封装了每个图像的特定知识,特别是测试图像,从而更容易泛化到unseen类。

3 方法

TKE将一般类级的textual embedding转化成类感知提示,然后与Learnable tokens 结合。

3.2 基于文本的类感知提示提示调优

TKE:投影class-level embedding W c l i p W^{clip} Wclip,得到class-aware prompt T
![[TCPg2.png]]

![[TCPg3.png]]

![[TCPg4.png]]

![[TCPg1.png]]

TKE包括两层

  • 下投影层
    使用权重 W d o w n W_{down} Wdown W c l i p W^{clip} Wclip其投成低维特征
  • 上投影层
    使用权重 W u p W_{up} Wup W d w o n W^{dwon} Wdwon其投成高维特征
    得到
    ![[TCPg5.png]]
    再重塑成
    ![[TCPg6.png]]
    插入到文本编码器的中间层

4 实验

作者将其分为tp、vp、dtp、dvp,比较了近年来的方法
在这里插入图片描述

消融实验

  • Prompt长度:M=8最好
  • 不同模板的效果:可学习prompt最好
  • Dmid的作用:128时效果最好
  • 类感知prompt拼接到哪:第8层最好

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

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

相关文章

树莓派|角速度和加速度传感器

角速度传感器和加速度传感器是常见的惯性传感器,常用于测量物体的旋转和线性运动。 角速度传感器(Gyroscope)用于测量物体绕三个轴(X、Y、Z)的旋转速度或角速度。它可以提供关于物体在空间中的旋转方向和角度变化的信…

PXI/PXIe规格1553B总线测试模块

面向GJB5186测试专门开发的1553B总线适配卡,支持4Mbps和1Mbps总线速率。该产品提供2个双冗余1553B通道、1个测试专用通道、2个线缆测试通道。新一代的TM53x板卡除了支持耦合方式可编程、总线信号幅值可编程、共模电压注入、总线信号波形采集等功能外,又新…

Python专题:十三、日期和时间(2)

datetime 模块 today()函数 date类型 year month day

二分法的时间复杂度是logN

对数函数: (a>0, a≠1, x>0) 当αe时,记为yln x 当α10时,记为ylg x 当α2时,记为ylog x 其中x是自变量,函数的定义域是(0,∞),…

【Flask框架】

6.Flask轻量型框架 6.1Flask简介 python提供的框架中已经写好了一个内置的服务器,服务器中的回应response行和头已经写好,我们只需要自己写显示在客户端,的主体body部分。 ---------------------------------------------------------- Fla…

Android Studio无法使用Google翻译问题记录

背景 其实关于Google翻译不能用的问题已经出现很久了,之前Google关掉了很多国内的一些Google服务,但是Google翻译还是能用的,直到不知什么时候起,Google翻译也不能用呢。 每次换电脑安装完AS后第一件事就是下载插件 Settings-Pl…

探索智慧生活:百度Comate引领人工智能助手新潮流

文章目录 百度Comate介绍1. 什么是百度Comate?主要特点 2. Comate的核心功能智能问答功能语音识别功能语音助手功能个性化服务 3. Comate 支持哪些语言? 使用教程(以vscode为例)1. 下载和安装Comate3. 常用操作快捷键(windows) 使用体验自然语言生成代码…

Gitlab、Redis、Nacos、Apache Shiro、Gitlab、weblogic相关漏洞

文章目录 一、Gitlab远程代码执行(CVE-2021-22205)二、Redis主从复制远程命令执行三、Nacos认证绕过漏洞(CVE-2021-29441)四、Apache Shiro认证绕过漏洞(CVE-2020-1957)五、Gitlab任意文件读取漏洞&#xf…

3.TCP的三次握手和四次挥手

一、前置知识 TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议。在传输数据前通信双方必须建立连接(所谓连接,是指客户端和服务端各自保存一份关于对方的信息,比如ip地址,端口号等)。TCP通过三次握手建立一个…

从零开始:C++ String类的模拟实现

文章目录 引言1.类的基本结构2.构造函数和析构函数3.基本成员函数总结 引言 在C编程中,字符串操作是非常常见且重要的任务。标准库中的std::string类提供了丰富且强大的功能,使得字符串处理变得相对简单。然而,对于学习C的开发者来说&#x…

C语言----斐波那契数列(附源代码)

各位看官们好,当我写了上一篇博客杨辉三角后,有一些看官叫我讲一下斐波那契数列。对于这个大家应该是有了解的。最简单的规律就是f(n)f(n-2)f(n-1)。就是当前是前两项之和,然后下标1和0都是1.从第三项开始计算的。那么我们知道规律&#xff0…

位图(c++)

文章目录 1.位图概念2.位图的实现3.应用(解决整形存在或次数问题)3.1存在问题3.2次数问题 5.搜索的方法对比: 1.位图概念 和哈希一样,都是一个表来记录某个元素的个数或者存在与否;不同的是哈希使用的计算机定义的完整…

群辉部署小雅alist实现视听盛会

最近群辉搭建起来了,开始整蛊影视库,之前搞过nastool。这次折腾下小雅alist。 1.下载并安装 直接在群辉的docker里面下载映像 主要映射下端口和文件夹 #token mytoken.txt 获取地址:https://alist.nn.ci/zh/guide/drivers/aliyundriv…

Git使用(2):远程仓库

一、创建远程仓库 登录码云Gitee - 基于 Git 的代码托管和研发协作平台。 点击右上角,新建仓库。 创建完成,复制仓库地址接下来要使用。 二、将idea项目推送到码云 首先创建本地仓库VCS -> Create Git Repository。然后选择Manage Remotes&#xff0…

用友hr软件统一认证与致远OA单点登录身份周期管理怎么做

一、引言 随着企业信息化建设的深入,各类管理软件如用友HR、致远OA等已经成为事业单位日常运营不可或缺的工具。用友HR软件以其强大的人力资源管理功能,帮助企事业单位实现员工信息的集中管理;而致远OA则以其便捷的办公流程管理,…

springcloud简单了解及上手

springcloud微服务框架简单上手 文章目录 springcloud微服务框架简单上手一、SpringCloud简单介绍1.1 单体架构1.2 分布式架构1.3 微服务 二、SpringCloud与SpringBoot的版本对应关系2022.x 分支2021.x 分支2.2.x 分支 三、Nacos注册中心3.1 认识和安装Nacos3.2 配置Nacos3.3 n…

C++ 并发编程指南(11)原子操作 | 11.6、计算机内存结构

文章目录 一、计算机内存结构1、内存的基本组成2、内存的类型3、内存的结构层次4、CPU架构5、局部性原理6、总结 前言 在探讨计算机的运行效率和数据处理能力时,内存结构无疑是一个至关重要的部分。内存,作为计算机系统中的关键组件,承担着存…

【保姆级介绍自动化的讲解】

🌈个人主页: 程序员不想敲代码啊 🏆CSDN优质创作者,CSDN实力新星,CSDN博客专家 👍点赞⭐评论⭐收藏 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共…

【C语言】4.C语言数组(2)

文章目录 6. 二维数组的创建6.1 ⼆维数组的概念6.2 ⼆维数组的创建 7. 二维数组的初始化7.1 不完全初始化7.2 完全初始化7.3 按照⾏初始化7.4 初始化时省略⾏,但是不能省略列 8. 二维数组的使用8.1 ⼆维数组的下标8.2 ⼆维数组的输⼊和输出 9. 二维数组在内存中的存…

利用一段代码轻松绕过PHP授权系统

利用一段代码轻松绕过PHP授权系统 第一步:首先你需要改名全局文件 比如说全局文件 common.php,那么 你将他改为core.php 第二步:创建文件 创建一个文件,和改名前的全局文件名称一样,然后把以下代码复制进去就OK了 …