SPT: Revisiting the Power of Prompt for Visual Tuning

方法简介

方法很简单,作者通过实验发现prompt拥有一个良好的初始化是VPT的关键,于是作者就通过在MAE/MoCo进行预训练来得到一个良好的prompt的初始化来提供微调阶段的prompt。

这么简单的方法是怎么催成一篇顶会的呢?值得我们去学习!

论文思路

主要的挑战

我们总结了下面列出的主要挑战。

提示初始化:现有的基于提示的方法,如VPT (Jia et al ., 2022)、GateVPT (Yoo et al ., 2023),采用随机初始化提示(如均匀或正常)的策略,然后在调优过程中更新提示,类似于传统神经网络的参数优化。然而,插入的提示令牌的不同初始化技术会显著影响准确性,如VPT及其变体的原始论文所示。

提示长度 :与完全微调相比,唯一需要调整的额外超参数是插入的提示令牌的数量。虽然现有方法的消融研究表明,VPT及其变体通常对插入提示符的数量敏感

自监督预训练的性能欠佳 :最近的研究(Yoo et al ., 2023)证明了VPT及其变体在自监督预训练下的性能明显差于在监督预训练下的性能,阻碍了其在具有大量未标记数据的各种场景中的应用。

一个度量方式NMI和发现

一个中心问题集中在优化插入的提示令牌的训练上。我们首先进行一个简单的实验,观察随着VPT的收敛,提示令牌的分布如何变化。一个直观的策略包括使用补丁令牌作为引用。因此,我们引入了标准化互信息 (NMI (Estevez et al ', 2009))作为量化关系的度量。设 π ( p i − 1 , e i − 1 ) \pi(\textbf p_{i-1},\textbf e_{i-1}) π(pi−1,ei−1)为第 i i i个transformer块的prompt牌和token牌的联合分布。我们用 p i − 1 \textbf p_{i-1} pi−1和 E i − 1 \textbf E_{i-1} Ei−1上的sigmoid-normalized交叉注意近似 π \pi π为:

其中 σ \sigma σ是sigmoid运算。我们进一步沿 j j j坍缩得到 p i − 1 \textbf p_{i-1} pi−1的边际分布为 π ( p i − 1 ) = ∑ j = 1 N e π ( p i − 1 k , e i − 1 j ) \pi(\textbf p_{i-1})=\sum^{N_e}{j=1}\pi(\textbf p^k{i-1},\textbf e^j_{i-1}) π(pi−1)=∑j=1Neπ(pi−1k,ei−1j)。 e i − 1 \textbf e_{i-1} ei−1的边际分布遵循 π ( e i − 1 ) = ∑ k = 1 N p π ( p i − 1 k , e i − 1 j ) \pi(\textbf e_{i-1})=\sum^{N_p}{k=1}\pi(\textbf p^k{i-1},\textbf e^j_{i-1}) π(ei−1)=∑k=1Npπ(pi−1k,ei−1j)的相同原则。因此,定义归一化互信息为:

其中 I ( ; ) I(;) I(;)表示标准互信息, H ( ⋅ ) H(\cdot) H(⋅)表示熵。我们可以很容易地用联合分布 π ( p i − 1 k , e i − 1 j ) \pi(\textbf p^k_{i-1},\textbf e^j_{i-1}) π(pi−1k,ei−1j)和边际分布来计算它们。

为了探索提示令牌的注意力崩溃程度,我们测量了四个规范数据集(CUB-200-2011 (Wah等人,2011)、Caltech-101 (Wah等人,2011)、Patch Camelyon (Veeling等人,2018)、Clevrcount (Johnson等人,2017))的归一化互信息。从图2中可以看出,视觉提示调优的训练过程(如四个子图中的蓝色曲线)逐渐得到了较高的归一化互信息值。考虑到NMI本身的定义,我们的发现如下:

图2。VPT呈现提示符和补丁令牌之间的规格化互信息(NMI (Estevez et al ', 2009))在微调期间逐渐增加的行为。SPT的初始NMI较大,有利于快速收敛,获得更先进的结果

发现

随着训练水平的提高,下游语境化提示的分布逐渐向patch token的分布收敛,具体表现为归一化互信息值的增加。回想一下,我们在第3.1节讨论了应用视觉提示调优的好处和挑战。鉴于上述发现,我们推测具有高度共享信息的初始提示令牌**(训练起点处的高NMI值)可能有利于调优过程(提高收敛速度和准确性),从而促进更稳定的训练** 。然后将问题转移到构造具有高度规范化互信息的提示初始化(之后就开始讲简单的预训练初始化了)

提出的方法

构造具有高度共享信息的提示的直观方法**(个人感觉:方法与发现其实是没有什么衔接的,或者说作者对这个衔接没有讲清楚)** 是使用目标数据集上推断的令牌原型初始化提示令牌。对于目标数据集,我们将第 i i i层补丁嵌入的前向结果表示为 E i ∗ = { e i j ∈ R D ∣ j ∈ N , 1 ≤ j ≤ N e ∗ N } \textbf E^*_i=\{e^j_i\in \mathbb{R}^D|j\in \mathbb{N},1\le j\le N_e*N\} Ei∗={eij∈RD∣j∈N,1≤j≤Ne∗N}。 N N N是整个目标数据集的总数。假设 C i = { c i j ∈ R D ∣ j ∈ N , 1 ≤ j ≤ N p } \textbf{C}_i=\{c^j_i\in \mathbb{R}^D|j\in \mathbb{N},1\le j\le N_p\} Ci={cij∈RD∣j∈N,1≤j≤Np}是第 i i i层的原型,我们通过最小化惯性将 E i ∗ \textbf E^*_i Ei∗聚为具有K-means的 N p N_p Np原型:

与视觉提示调优类似,我们使用原型 C i \textbf{C}_i Ci构造提示令牌。我们将这种方法称为自提示调优S elfP rompt T uning (SPT)。在VPT示例之后,我们根据所涉及的transformer块的数量定义了SPT-ShallowSPT-Deep

接下来就跟VPT一样的操作了,只不过**用预训练出来的原型C i \textbf{C}_i Ci作为微调时候的prompt的初始化**;

SPT-Shallow

SPT-Deep

优化提示的预训练

表1。构建提示过程的时间成本。我们在CUB-200-2011上采用了四种策略(K-Means, Max pooling, Mean pooling, Random sample),以vitb为骨干。(注:"d"表示天,"s"表示秒。)

前面介绍的SPT将令牌原型视为初始提示,它可以近似地表示训练数据和/或中间令牌的总体分布。但是,候选令牌的数量通常远远超过提示的长度。聚类过程极其缓慢(见表1和图3 (a)),甚至时间成本明显超过模型微调的时间。为了缓解这个问题,我们提出了两个更实用的策略****(me:提出了预训练速度更快但效果略微有所下降的办法)

Mean (max) pooling 我们对随机选择的批标记 E i ∗ = { e i j ∈ R D ∣ j ∈ N , 1 ≤ j ≤ N e ∗ B } \textbf E^*_i=\{e^j_i\in \mathbb{R}^D|j\in \mathbb{N},1\le j\le N_e*B\} Ei∗={eij∈RD∣j∈N,1≤j≤Ne∗B}执行均值池化或最大池化,输出 N p N_p Np个标记 。对于非重叠采样,窗口核大小为 ⌊ N e ∗ B N p ⌋ \lfloor \frac{N_e*B}{N_p}\rfloor ⌊NpNe∗B⌋。 ⌊ ⋅ ⌋ \lfloor \cdot \rfloor ⌊⋅⌋指向下取值操作。 B B B是批大小。

Random sample 对于简化的替代方案,我们甚至在随机批处理中随机抽样 N p N_p Np个令牌。例如,我们在第 i i i层随机选择一个前向批结果作为 E i ′ ∗ \textbf E'^{*}_i Ei′∗。最终的 N p Np Np初始标记从 N e ∗ B N_e*B Ne∗B标记中均匀抽样。

备注:建议的改进程序对下游任务更实用。我们从两个方面对计算成本进行了简要的评估。

相关实验

在MAE和MoCo-V3上的实验。

四种提示优化策略,总体来说K-mean最好,但效率低

参考资料

论文下载(ICML(CCF A), Spotlight, 2024)

https://arxiv.org/pdf/2402.02382

代码地址(暂未开源)

相关推荐
葫三生28 分钟前
如何评价《论三生原理》在科技界的地位?
人工智能·算法·机器学习·数学建模·量子计算
m0_751336392 小时前
突破性进展:超短等离子体脉冲实现单电子量子干涉,为飞行量子比特奠定基础
人工智能·深度学习·量子计算·材料科学·光子器件·光子学·无线电电子
美狐美颜sdk5 小时前
跨平台直播美颜SDK集成实录:Android/iOS如何适配贴纸功能
android·人工智能·ios·架构·音视频·美颜sdk·第三方美颜sdk
DeepSeek-大模型系统教程5 小时前
推荐 7 个本周 yyds 的 GitHub 项目。
人工智能·ai·语言模型·大模型·github·ai大模型·大模型学习
有Li5 小时前
通过具有一致性嵌入的大语言模型实现端到端乳腺癌放射治疗计划制定|文献速递-最新论文分享
论文阅读·深度学习·分类·医学生
郭庆汝5 小时前
pytorch、torchvision与python版本对应关系
人工智能·pytorch·python
小雷FansUnion7 小时前
深入理解MCP架构:智能服务编排、上下文管理与动态路由实战
人工智能·架构·大模型·mcp
资讯分享周7 小时前
扣子空间PPT生产力升级:AI智能生成与多模态创作新时代
人工智能·powerpoint
叶子爱分享8 小时前
计算机视觉与图像处理的关系
图像处理·人工智能·计算机视觉
鱼摆摆拜拜8 小时前
第 3 章:神经网络如何学习
人工智能·神经网络·学习