视觉霸主SAM和文图霸主CLIP强强联合!苹果联合UIUC,发布统一视觉模型SAM-CLIP,或掀起多模态新浪潮

作者 | ZenMoore

相信大家对 SAM[1] 并不陌生,它是 Meta 此前发布的 Segment Anything Model (分割一切模型)。一经发布便火遍全网震惊世界,史称“视觉领域的 ChatGPT 时刻”。

大模型研究测试传送门

GPT-4传送门(免墙,可直接测试,遇浏览器警告点高级/继续访问即可):
http://hujiaoai.cn

正如 ChatGPT 出现后,很多 NLP 的任务都离不开 ChatGPT 等 LLM 的辅助;视觉也是一样,很多 CV 的新工作都离不开 SAM 的辅助。

但笔者一直好奇,什么时候这位视觉霸主,可以和语言霸主 ChatGPT 碰一碰来个联姻?或许这会是多模态大模型的又一个里程碑?

FYI: 目前多模态大模型的瓶颈很大程度上来自于视觉编码器组件。

所以,当笔者看到 SAM-CLIP 的时候,眼前一亮!这是 SAM 进军多模态基础模型的第一步,也是关键的一步!

来!我们看看 SAM-CLIP 做了什么...

论文标题:SAM-CLIP : Merging Vision Foundation Models Towards Semantic and Spatial Understanding

论文链接:https://arxiv.org/abs/2310.15308

SAM 为何要与 CLIP 联姻?

SAM[1] 顾名思义,是一个专门用来进行图像分割的模型,如下图 1 所示:

图1:SAM 模型结构以及功能展示。

▲图1:SAM 模型结构以及功能展示。

SAM 在海量的分割数据集上进行了训练,具有极强的图像理解和分割能力,但是,SAM 因为没有太多文本信息的加成,学到的更多是**空间理解能力 (spatial understanding)**,会看不会想。

而 CLIP[2] 就不一样了。如图 2 所示,它是一个和文本编码器对齐的模型。也就是说,它的视觉组件学到的更多是**语义理解能力 (semantic understanding)**,会想不会看。

图2:CLIP 模型结构和原理 (对比学习预训练)。

▲图2:CLIP 模型结构和原理 (对比学习预训练)。

因此,两个模型虽然都具备图像理解能力,但却着重于不同的方面:SAM 更偏视觉一些,强调局部性和空间能力;CLIP 更偏语言一些,强调整体性和语义能力。通过两个模型的融合,取长补短,打造一个兼具两类特性的视觉编码器,便是本文联姻两大模型的最大动机。

更进一步地,目前火出圈的多模态大模型如 GPT-4V 的开源平替 LLaVA, Mini-GPT4, BLIP-2 等,其原理都需要依赖一个和文本语义特征空间对齐的视觉编码器充当眼睛,一般用的都是 CLIP 及其衍生模型。这也是为什么 SAM-CLIP 很可能给多模态基础模型带来新的增长的原因。

SAM-CLIP “联姻”方法

总的来说,本文基于持续学习 (continual learning) 和知识蒸馏 (knowledge distillation) 两个方法合并两个模型。如图 3 所示。

图3:SAM-CLIP 方法原理。

▲图3:SAM-CLIP 方法原理。

由于 CLIP 模型的既定图像分辨率的限制,本文不采取“向 CLIP 合并 SAM”的做法,而采用了“向 SAM 合并 CLIP”。

先准备好经过训练的 SAM 和 CLIP 各组件:

  • SAM:图像编码器,提示编码器,轻量的分割掩码解码器 ()。

  • CLIP: 图像编码器,文本编码器。

以及 SAM 模型 和 CLIP 模型之前训练时候的数据的小子集(<10%), 和 .

  • 使用 CC3M, CC12M, YFCC-15M, ImageNet-21k 中的图像构成 40.6M 无标签图像数据;

  • 使用 5.7% 的 SA-1B 数据。

这些数据作者称为 Merged-41M.

然后按照以下步骤执行:

  1. 本文的模型 的参数使用 SAM 的参数进行初始化。

  2. 使用 SAM 的掩码解码器初始化 SAM 头 ()参数。

  3. 随机初始化 CLIP 头 ()参数。

  4. 其他组件参数冻结不训练。

  5. Head Probing: 冻结 参数,只训练 . 使用余弦蒸馏损失在 上训练:.

  6. 多任务蒸馏:解冻所有头以及 进行训练。损失函数为:,其中,.

是 SAM 模型的几何提示 (geometric prompt),, 指的是使用的和的线性组合

论文中还有更多关于分辨率提升训练的技巧,推荐阅读原文的 Implementation Details.

SAM-CLIP 效果如何

从上表可见,合并 SAM 和 CLIP 之后的性能下降不是很明显,极大程度上在不损害各自能力的前提下,融合了两者的优势。

从上表可见,SAM-CLIP 的语义分割能力非常强劲。

上面的实验表明:

  • SAM-CLIP 学到了更加丰富的图像表示;

  • SAM-CLIP 在图像分类任务上,取得了和 CLIP 不相上下的结果;

  • 同时使用两个头的话,SAM-CLIP 的语义分割能力得到了进一步增强。

小结

SAM-CLIP 的出现可能标志着多模态基础模型的又一个重要技术节点。通过将 SAM(具有强大的空间理解能力)与 CLIP(具有强大的语义理解能力)相结合,该模型成功地整合了两者的优势,创造出了一个兼具图像和文本理解的强大模型。基于持续学习和知识蒸馏的融合策略使得这一结合不仅实现了两者能力的整合,还确保了性能的最大化。实验结果也进一步证实了 SAM-CLIP 在图像分类、语义分割等任务上都表现出色。这为多模态研究开辟了新的可能性,展示了融合空间与语义理解能力在实际应用中的潜力。

参考资料

[1]SAM: https://segment-anything.com/
[2]CLIP: https://openai.com/research/clip

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

springboot的spring.jackson.date-format失效解决

看起来数据库的格式非常完美,但是数据库字段look_date 是 datetime类型,java里没有datetime类型,这样一来如果你不在后端做处理,那么模型属性Date来接收一定会出问题.我通过实验证明最后拿到的是一个时间戳. 第一 解决时间格式问题 1.可以通过application.propertis配置文件中…

Element UI的table不同应用

目录 一、自定义表头 二、纵向表头(动态表头) 2.1、分别拿到表头和表头中日期对应的行数据 2.2、拿到每个日期对应的列数据 一、自定义表头 <el-table-column prop"chu" align"center"><!-- 自定义表头 --><template slot"header…

Java 实现灰度图转真彩图

目录 1 问题2 实现1 问题 Java 实现灰度图转真彩图 将以上的图片,jpg png 都可以,转为有颜色的 2 实现 import javax.imageio.ImageIO; import java.awt.*; import java.awt.image.BufferedImage; import java.awt.image.Raster; import java.io.File;public class DatUtil…

铜排载流量表新垂直拼接表-分享一张铜排的载流量表可以方便查看铜排重量计算

可以方便的铜排重量的铜排载流量表来了&#xff0c;方便查询和选择&#xff0c;希望能够帮到你&#xff1a; 下载&#xff1a;https://download.csdn.net/download/weixin_43097956/88490649

招投标系统简介 企业电子招投标采购系统源码之电子招投标系统 —降低企业采购成本

功能描述 1、门户管理&#xff1a;所有用户可在门户页面查看所有的公告信息及相关的通知信息。主要板块包含&#xff1a;招标公告、非招标公告、系统通知、政策法规。 2、立项管理&#xff1a;企业用户可对需要采购的项目进行立项申请&#xff0c;并提交审批&#xff0c;查看所…

Redis配置多个端口记录

一、背景&#xff1a; 使用Redis做WEB系统缓存&#xff0c;如登录信息、数据字典 等 键值对信息&#xff1b;存在多个测试环境及开发连接使用默认的6379端口&#xff0c;易造成Key重复&#xff0c;缓存紊乱&#xff0c;网络堵塞&#xff1b; 额外增开6380、6381端口&#xff0c…

【OpenCV实现平滑图像金字塔,轮廓:入门】

文章目录 概要图像金字塔轮廓&#xff1a;入门 概要 文章内容的概要&#xff1a; 平滑图像金字塔&#xff1a; 图像金字塔是什么&#xff1f; 图像金字塔是指将原始图像按照不同的分辨率进行多次缩小&#xff08;下采样&#xff09;得到的一系列图像。这种处理方式常用于图像…

Mojo::UserAgent模块做的一个快速爬虫项目

use Mojo::UserAgent;my $ua Mojo::UserAgent->new; my $proxy duoip:8000;# 使用爬虫IP $ua->proxy(http, $proxy) # 设置http爬虫IP->proxy(https, $proxy); # 设置https爬虫IPmy $res $ua->get(音乐网址); if ($res->is_success) {print $res->body; …

GIT文件夹上面的状态(对钩或红色感叹号)不显示,解决

换了新电脑&#xff0c;GIT代码上传啥的都正常&#xff0c;但是文件中文件图标状态不显示&#xff0c;搜了一下已找到解决方法&#xff0c;实测有效。 第一步 winr&#xff0c;输入regedit.exe&#xff0c;打开注册表 第二步 找到以下路径 “ HKEY_LOCAL_MACHINE–>SOFTWA…

JS 去除字符串中所有标点符号

直接上代码了 var str 这是《书》中的一段&#xff0c;两段文字。; var new_str str.replace(/[:_.~!#$%^&*() \ <>?"{}|, \/ ; \\ [ \] ~&#xff01;#&#xffe5;%……&*&#xff08;&#xff09;—— \ {}|《》&#xff1f;&#xff1a;“”【】、&a…

八、ACL访问控制列表实验

拓扑图&#xff1a; 通过某些特定的条件&#xff0c;端口号&#xff0c;ip地址&#xff0c;来限定某些数据包的访问 在这张拓扑图中&#xff0c;使得1.0和2.0能够访问服务器&#xff0c;但是两个网段不能互通 首先根据拓扑图把ip分配完毕&#xff0c; 高级acl命令可以用设置源…

js 在数组对象 过滤掉无用的数据

下面的数组中有null&#xff0c; undefind&#xff0c; NaN&#xff0c; ’ &#xff0c;过滤掉这些数据 let arr [12, null, 0, xyz, null, -25, NaN, , undefined, 0.5, false]; let arr1 [{k:12,o:1},{k:12,o:null},{k:12,o:NaN}, {k:null,o:}, {k:0,o:0}, {k:xyz,o:1}, …

亲测有效!盘点3款好用的录屏软件

随着社会的发展&#xff0c;视频内容的制作和共享变得比以往任何时候都更重要。无论是录制在线课程、游戏过程&#xff0c;还是制作教程或视频演示&#xff0c;一款好用的录屏软件都能让用户事半功倍。接下来&#xff0c;我们将介绍三款各自适用于不同场景的录屏软件&#xff0…

AWS SAP-C02教程11-解决方案

本章中,会根据一些常见场景的解决方案或者AWS的某一方面的总结,带你了解AWS各个组件之间的配合使用、如何在解决方案中选择组件以及如何避开其本身限制实现需求。 目录 1 处理高并发解决方案(Handing Extreme Rates)2 日志管理(AWS Managed Logs)3 部署解决方案(Deploy…

循环神经网络 - RNN

循环神经网络&#xff08;Rerrent Neural Network,RNN&#xff09;是神经网络的一种&#xff0c;类似的还有深度神经网络&#xff08;DNN&#xff09;、卷积神经网路(CNN)、生成对抗网络&#xff08;GAN)等。**RNN对具有时序特性的数据非常有成效&#xff0c;他能挖掘数据中的时…

最新 IntelliJ IDEA 旗舰版和社区版下载安装教程(图解)

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

Word 将文档中的【第几条】批量加粗

目录预览 一、问题描述二、解决方案三、参考链接 一、问题描述 我要制作一份文档&#xff0c;关于法律条文的&#xff0c;然后需要将条文中的【第几条】字样进行加粗表示&#xff0c;格式刷是不可能格式刷的&#xff0c;这明显不适合此种批量的操作&#xff0c;浪费事件。所以…

算法学习打卡day36| 738.单调递增的数字、 968.监控二叉树、贪心算法阶段学习总结

738.单调递增的数字 力扣题目链接 题目描述&#xff1a; 当且仅当每个相邻位数上的数字 x 和 y 满足 x < y 时&#xff0c;我们称这个整数是单调递增的。 给定一个整数 n &#xff0c;返回 小于或等于 n 的最大数字&#xff0c;且数字呈 单调递增 。 示例 1: 输入: n 10 …

洗地新天花板:CEYEE希亦顶配机皇T800 Pro洗地机多点发力上市开售

2023年11月1日&#xff0c;CEYEE希亦正式发布高端清洁产品无线洗地机希亦T800 PRO&#xff0c;创新性地实现了洗地场景深度清洁体验的新突破&#xff0c;彻底解决了清洁行业20多年来技术发展难题&#xff0c;颠覆式引领行业向水汽混动时代迈进&#xff0c;推动了整个市场向“智…

从0到1了解metasploit上线原理

在渗透的过程中拿到权限后通常会进行上线cs/msf的操作&#xff0c;我们了解上线的原理后&#xff0c;无论是对编写远控&#xff0c;还是绕过杀软帮助都很大。 前言 在渗透的过程中拿到权限后通常会进行上线cs/msf的操作&#xff0c;我们了解上线的原理后&#xff0c;无论是编…