首页 > 其他分享 >ClearCLIP: Decomposing CLIP Representations for Dense Vision-Language Inference论文阅读笔记

ClearCLIP: Decomposing CLIP Representations for Dense Vision-Language Inference论文阅读笔记

时间:2024-07-27 16:41:10浏览次数:8  
标签:Dense Language CLIP 残差 FFN 作者 attn 范数

Motivation & Abs

文章关注的任务为用VLM(如CLIP)做开放词汇分割,motivation主要来自于作者的一个观察:分割图中的噪声主要来自于残差连接,这会导致在文本-图像预训练更加强调全局特征,从而牺牲了局部判别能力,从而导致了分割结果中的噪声。为此作者提出了ClearCLIP,对CLIP的特征进行解耦,从而提升开放词汇分割方法的性能。最后一层的主要改动分为三点:移除残差连接,实现self-attention以及丢弃FFN。因此,ClearCLIP能够生成更加干净且准确的分割结果。

Method

CLIP的残差结构

截屏2024-07-23 17.01.21

最简单的基于CLIP的dense prediction就是拿类名对应的text embedding去query图像特征,但是CLIP本身是通过image-level contrastive loss进行训练的,将text与region对应的能力非常弱。许多方法尝试修改最后一层的\(Attn_{qk}\)为self-attn或identity-attn(如\(Attn_{qq}\)),旨在对空间信息进行重新整合。然而,这些方法仍然会产生次优的带有噪声的结果,同时,当模型尺寸scale到ViT-L时,这些方法的表现不佳。为此,作者对噪声产生的原因进行了研究。

首先,作者分析了最后一层中残差连接以及\(X_{attn}\)的二范数:

截屏2024-07-24 17.37.57

两个图的共性为\(X_{attn}\)的mIoU曲线和范数曲线表现出一定的正相关性。区别在于:CLIP-B/16的res范数远小于CLIP-L/14的res范数,同时CLIP-B/16中注意力修改在q-k baseline上是一致的(CLIP-L/14则不然)。因此,作者假设只有当res范数比较小的时候,对于注意力的修改才是有效的。因此作者假设,残差连接是导致CLIP在密集预测任务表现不佳的主要原因。为此,作者在coco上进行了实验:

截屏2024-07-24 17.49.43

根据结果,残差连接只会起到负面作用,分割结果中的噪声很可能来自于残差连接。作者还进行了一系列分析:

截屏2024-07-24 18.05.48

对于CLIP-B/16,\(X_{res}\)和\(X_{sum}\)的最大值随着层深逐渐增加,因此其熵急剧下降。通过观察特征图可视化结果以及每个通道的平均归一化均值发现,这些峰值出现在少数通道中,这很有可能就是CLIP在密集预测任务中表现不佳的原因,同时这种现象在较大的模型中更加明显,因此之前的方法在CLIP-L/14中效果不好。因此,作者最终决定直接舍弃残差连接,从而提升方法性能。

此外,作者还讨论了FFN的影响。之前的工作发现,在推理期间,FFN对于图像表征的影响几乎可以忽略不计,同时最后一个block的FFN输出的特征与最后的分类特征有非常大的cosine夹角。本文中,作者发现在OVS任务中移除FFN对原始的CLIP不会有很大影响,但能极大程度提高移除了残差连接的CLIP的性能(特别是对于CLIP-L/14这种模型而言)。

基于上述观察,作者选择的最终方案:

\[X^{visual}=X_{attn}={\rm Proj}({\rm Attn}_{(\cdot)(\cdot)}\cdot v) \]

注意力中可以选择不同组合的query-key,实验证明qq组合效果最好。

实验

注意,该方法无需训练。

截屏2024-07-24 20.43.11

截屏2024-07-24 21.46.12

标签:Dense,Language,CLIP,残差,FFN,作者,attn,范数
From: https://www.cnblogs.com/lipoicyclic/p/18327128

相关文章

  • python运行报警告:Cython directive 'language_level' not set, using '3str' for now
    相关:https://stackoverflow.com/questions/34603628/how-to-specify-python-3-source-in-cythons-setup-pycython的setup.py文件内容:fromdistutils.coreimportsetupfromCython.Buildimportcythonizesetup(name='GreatCirclemodulev1',ext_modu......
  • CF568C New Language 题解
    Description将\(\texttt{a}\sim\texttt{a}+l-1\)这\(l\)个字符分成\(\texttt{V,C}\)两个集合。你需要构造一个长度为\(n\)且满足\(m\)个限制且不小于另一个长度为\(n\)的字符串\(s\)的最小字符串。每一个限制为若字符串的第\(p_1\)个位置上的字符\(\in......
  • CLIP-DIY 论文解读:基于 CLIP 和无监督目标定位的语义分割
    CLIP-DIY是一种基于CLIP模型的开放词汇语义分割方法,特点是无需额外的训练或者像素级标注,即可实现高效、准确的分割效果。该方法主要利用CLIP模型在图像分类方面的强大能力,并结合无监督目标定位技术,实现开放词汇语义分割。在论文中,首先肯定了CLIP出现的重要意义,开启了开放......
  • Denser Retriever: 企业级AI检索器,轻松构建RAG应用和聊天机器人
    DenserRetriever是一个企业级AI检索器,将多种搜索技术整合到一个平台中。在MTEB数据集上的实验表明,可以显著提升向量搜索(VS)的基线(snowflake-arctic-embed-m模型,在MTEB/BEIR排行榜达到了最先进的性能)。DenserRetriever官网Readourcollectionofblogsabouttipsandtric......
  • eclipse如何写python程序
    本文主要介绍在Windows系统环境下,搭建能在Eclipse中运行python程序的环境。一、Eclipse下载与安装:Eclipse是写JAVA的IDE,下载地址为:http://www.eclipse.org/downloads/下载安装,网上教程很多,不赘述。二、pydev插件下载与安装:启动Eclipse,点击Help—>EclipseMarketplace......
  • Large Language Models: A Survey
    LargeLanguageModels:ASurveyhttps://arxiv.org/pdf/2402.06196 导读https://developer.volcengine.com/articles/7389111961612451866 1、介绍了语言建模的历史背景,从统计语言模型到神经网络模型,再到预训练语言模型和LLMs的发展。流行语言模型类型:Encoder-Only、D......
  • 【论文阅读笔记】大模型微调——《LoRA: Low-Rank Adaptation of Large Language Mode
    论文地址:https://arxiv.org/abs/2106.09685代码地址:https://github.com/microsoft/LoRA目录IntroductionMotivationMethodExperimentsFurtherdiscusion感想IntroductionMotivationMethodExperimentsFurtherdiscusion个人认为本篇的精髓所在,能够引用5k+的原因之一感......
  • ChatRule: Mining Logical Rules with Large Language Models for Knowledge Graph Re
    文章目录题目摘要引言方法实验消融研究题目ChatRule:利用大型语言模型挖掘逻辑规则进行知识图推理论文地址:https://arxiv.org/abs/2309.01538摘要    逻辑规则对于揭示关系之间的逻辑联系至关重要,这可以提高推理性能并在知识图谱(KG)上提供可解释的结果。尽......
  • Evaluating the Factuality of Large Language Models using Large-Scale Knowledge G
    本文是LLM系列文章,针对《EvaluatingtheFactualityofLargeLanguageModelsusingLarge-ScaleKnowledgeGraphs》的翻译。使用大规模知识图谱评估大型语言模型的真实性摘要1引言2相关工作3方法4实验5结论摘要大型语言模型(LLMs)的出现极大地改变了人......
  • SELF-DEMOS: Eliciting Out-of-Demonstration Generalizability in Large Language Mo
    本文是LLM系列文章,针对《SELF-DEMOS:ElicitingOut-of-DemonstrationGeneralizabilityinLargeLanguageModels》的翻译。SELF-DEMOS:在大型语言模型中引入非演示泛化能力摘要1引言2相关工作3方法4实验5讨论6结论局限性摘要大型语言模型(LLM)已经显......