SVL-Adapter: Self-Supervised Adapter for Vision-Language Pretrained Models

当前的问题

CLIP和CLIP-Adapter等方法的一个主要局限性是,它们没有对视觉编码器所编码的底层表示进行显著的修改。原因很简单:微调大型模型需要大量的监督,这在低监督学习设置中是很难获得的。如果下游分类任务的图像来自与互联网常见图像相同的分布,那么这不一定是个问题。然而,如果图像差异显著,例如医学或生物多样性监测图像,那么从视觉编码器提取的表示很可能不适合当前任务。

解决办法

me:动机跟KgCoOp很像。

我们引入了一个新的编码器 E s E_s Es,它在目标数据集上使用自我监督进行训练 。这个编码器的输出是一个特征向量 f s f_s fs,它被输入到一个适配器网络 A s A_s As中。与CLIP-Adapter不同,此适配器的输出不是转换后的特征编码,而是对感兴趣的类的预测, P s ( y ∣ x ) = A s ( f s ) = σ ( ReLU ( f s T W s 1 ) W s 2 ) P_s(y|\textbf{x})=A_s(\textbf{f}_s)=\sigma(\text{ReLU}(\textbf{f}_s^T\textbf{W}_s^1)\textbf{W}_s^2) Ps(y∣x)=As(fs)=σ(ReLU(fsTWs1)Ws2)。然后,我们将这些预测与标准零样本 CLIP模型的输出结合起来, P v ( y ∣ x ) = σ ( f v T W t ) P_v(y|\textbf{x})=\sigma(\textbf{f}_v^T\textbf{W}_t) Pv(y∣x)=σ(fvTWt),

在训练中我们学习了权重 { W s 1 , W s 2 } \{\textbf{W}_s^1,\textbf{W}_s^2\} {Ws1,Ws2}。我们使用自监督约束目标[9]在目标训练数据集上训练 E s E_s Es,它不需要任何标记数据。虽然在大型数据集上训练 E s E_s Es可能很昂贵,但在实践中,我们从ImageNet初始化模型开始,这导致在相对较小的下游数据集上快速收敛。此外,这个步骤只需要执行一次,因为当可用的监督数量发生变化时,只有适配器 A s A_s As需要重新训练。

混合权重选择

me:挺好的一个思路,动态调整混合参数 λ \lambda λ。

CLIP-Adapte同消融实验选择效果最好的超参数 α \alpha α和 β \beta β。然而,在低样本学习的情况下,任何和所有标记的数据都是宝贵的,并且可能更有价值用于训练而不是超参数选择

为了克服这个问题,我们提出了一个概念上简单而有效的方法来选择我们在Eqn. 3中的预测混合权 λ \lambda λ,它不需要任何标记的验证数据。从图1中我们观察到,与Zero-shot CLIP预测相对应的置信度得分在数据集之间差异很大。基于此,在假设CLIP不自信时,我们应该更重地权衡low-shot学习获得的知识 ,我们将 λ \lambda λ定义为类似于CLIP在给定数据集的 N N N个测试图像上的平均预测置信度得分, λ = 1 N ∑ i = 1 N max k P ( y i = k ∣ x i ) \lambda=\frac{1}{N}\sum^N_{i=1}\text{max}_k P(y_i=k|\textbf{x}_i) λ=N1∑i=1NmaxkP(yi=k∣xi)。在我们的实验中,我们将我们的SVL-Adapter方法与现有的方法进行比较,其中我们使用验证数据('SVL-Adapter ')选择 λ \lambda λ,或者我们使用上面概述的CLIP输出('SVL-Adapter ')估计它。

参考资料

论文下载(BMCV CCF C,2022)

https://bmvc2022.mpi-inf.mpg.de/0580.pdf
https://arxiv.org/abs/2210.03794

代码地址

https://github.com/omipan/svl_adapter

相关推荐
AI浩2 分钟前
上下文信息、全局信息、局部信息
人工智能·transformer
Elastic 中国社区官方博客14 分钟前
Elasticsearch:Retrievers 介绍
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
&黄昏的乐师38 分钟前
Opencv+ROS实现颜色识别应用
人工智能·opencv·学习·计算机视觉
小馒头学python1 小时前
深度学习中的卷积神经网络:原理、结构与应用
人工智能·深度学习·cnn
2zcode1 小时前
基于YOLOv8深度学习的脑肿瘤智能检测系统设计与实现(PyQt5界面+数据集+训练代码)
人工智能·深度学习·yolo
fhf1 小时前
感觉根本等不到35岁AI就把我裁了
前端·人工智能·程序员
m0_742848881 小时前
PyTorch3
人工智能·深度学习
lindsayshuo1 小时前
香橙派--安装RKMPP、x264、libdrm、FFmpeg(支持rkmpp)以及opencv(支持带rkmpp的ffmpeg)(适用于RK3588平台)
人工智能·opencv·ffmpeg
soso19681 小时前
构建与优化数据仓库-实践指南
大数据·数据仓库·人工智能
linmoo19861 小时前
java脚手架系列16-AI大模型集成
java·人工智能·ai·大模型·通义千问·qwen·脚手架