LISA:通过大语言模型进行推理分割

news2024/11/26 10:26:34

论文:https://arxiv.org/pdf/2308.00692

代码:GitHub - dvlab-research/LISA 

摘要

尽管感知系统近年来取得了显著的进步,但在执行视觉识别任务之前,它们仍然依赖于明确的人类指令来识别目标物体或类别。这样的系统缺乏主动推理和理解隐含用户意图的能力。在这项工作中,我们提出了一种新的分割任务-推理分割。该任务的目的是在给定复杂且隐式的查询文本的情况下输出分割mask。此外,我们建立了一个由一千多个图像指令对组成的基准,将复杂的推理和世界知识纳入评估目的。最后,我们提出了LISA:大型语言指导分割助手(large Language Instructed Segmentation Assistant),它继承了多模态大型语言模型(LLM)的语言生成能力,同时还具有生成分割掩码的能力。我们使用<SEG>标记扩展原始词汇表,并提出嵌入作为掩码范式来解锁分割功能。值得注意的是,LISA可以处理以下情况:1)复杂推理;2)世界知识;3)解释性答案;4)多回合对话。此外,当只在无推理数据集上训练时,它显示出强大的zero shot能力。此外,仅使用239对推理分割图像指令对模型进行微调可以进一步提高性能。实验表明,该方法不仅开启了新的推理分割能力,而且在复杂推理分割和标准参考分割任务中都是有效的。

背景

在这项工作中,我们引入了一种新的分割任务-推理分割,它需要基于涉及复杂推理的隐式查询文本生成二进制分割mask。

值得注意的是,查询文本并不局限于简单的引用(例如,“橘子”),而是涉及复杂推理或世界知识的更复杂的描述(例如,“高质量的食物含有维生素C”)。为了完成这一任务,模型必须具备两个关键能力:1)与图像联合推理复杂和隐式的文本查询;2)生成分割掩码。

尽管一些研究已经将robust的推理能力集成到多模态llm中以适应视觉输入,但这些模型中的大多数主要集中在文本生成任务上,并且在执行以视觉为中心需要细粒度fine-grained的输出格式的任务时仍然不足,例如分割。

通过将分割掩码表示为嵌入,LISA获得了分割能力,并从端到端训练中获益。

贡献

1) 我们引入了推理分割任务,该任务需要基于隐含的人类指令进行推理。这项任务强调了自我推理能力的重要性,这对于构建一个真正智能的感知系统至关重要。

2) 我们建立了一个推理分割基准,ReasonSeg,包含一千多个图像指令对。这个基准对于评估和鼓励社区开发新技术至关重要。

3) 我们提出了我们的模型- LISA,它采用嵌入作为掩码范式来合并新的分割功能。当在无推理数据集上训练时,LISA在推理分割任务上表现出强大的零射击能力,并且通过对239对涉及推理的图像指令对进行微调,进一步提高了性能。我们相信LISA将促进感知智能的发展,并激发这一方向的新进展。

相关工作

图像分割 IMAGE SEGMENTATION

语义分割的目的是为图像中的每个像素分配一个类标签。

大量研究提出了多种设计(如编码器-解码器、扩展卷积、金字塔池模块、非局部算子等)来有效地编码语义信息。

实例分割研究和全视分割为实例级分段引入了各种架构创新,包括基于DETR (Carion et al., 2020)的结构、mask attentiondynamic convolution

最近,Kirillov等人(2023)引入了SAM,使用数十亿个高质量掩码进行训练,支持边界框和点作为提示,同时展示了出色的分割质量。X-Decoder (Zou et al., 2023a)在视觉和语言之间架起了桥梁,将多个任务统一在一个模型中。SEEM (Zou et al., 2023b)进一步支持各种人类交互方法,包括文本、音频和涂鸦。然而,这些研究主要关注多任务的兼容性和统一,而忽视了新功能的注入。

在这项工作中,我们提出了LISA来解决推理分割任务,并通过自我推理能力增强现有的视觉分割器

多模态大语言模型 MULTI-MODAL LARGE LANGUAGE MODEL

受llm卓越的推理能力的激励,研究人员正在探索将这些能力转移到视觉领域的方法,开发多模态llm。

Flamingo(Alayrac,2022)采用交叉注意结构来关注视觉情境,从而实现视觉情境学习。

BLIP-2 (Li et al., 2023b)和mPLUG-OWL (Ye et al., 2023)等模型提出用视觉编码器编码图像特征,然后将其与文本嵌入一起输入LLM。

Otter (Li et al., 2023a)通过对拟议的MIMIC-IT数据集进行上下文指令调优,进一步整合了鲁棒的少镜头功能。LLaVA (Liu et al., 2023b)和MiniGPT-4 (Zhu et al., 2023)首先进行图像-文本特征对齐,然后进行指令调优。

此外,众多著作(Wu et al., 2023;Yang et al., 2023b;沈等,2023;Liu et al., 2023c;Yang等人,2023a)利用即时工程,通过API调用连接独立模块,但没有端到端培训的好处。

最近,有一些研究探讨了LLM和视觉任务多模态之间的交集。

VisionLLM (Wang et al., 2023)通过指令调优为多个以视觉为中心的任务提供了灵活的交互界面,但未能充分利用llm进行复杂的推理。

Kosmos -2 (Peng et al., 2023)构建了基于图像-文本对的大规模数据,为llm注入了基于的能力。GPT4RoI (Zhang et al., 2023)引入空间框作为输入,在区域-文本对上训练模型

相比之下,我们的工作旨在

1)有效地将分割能力注入到多模态llm中

2)解锁当前感知系统的自我推理能力。

Reasoning Segmentation 推理分割介绍

问题定义

 推理分割任务是给定一个输入图像ximg和一个隐式查询文本指令xtxt,输出一个二值分割maskM

查询文本可能不是简单的短语(例如,“垃圾桶”),而是包含更复杂的表达式(例如,“应该把垃圾放入的东西”)或更长的句子(例如,“烹饪后,吃完食物,我们可以把剩下的食物和残羹冷炙扔在哪里?”),这涉及到复杂的推理或世界知识。

基准 Benchmark

在缺乏定量评价的情况下,为推理分割任务建立一个基准是十分必要的。为了确保可靠的评估,我们从OpenImages (Kuznetsova et al., 2020)和ScanNetv2 (Dai et al., 2017)中收集了一组不同的图像,并用隐含的文本指令和高质量的目标掩码对它们进行注释。我们的文字说明包括两种类型:1)短句;2)长句子,如图2所示。所得的ReasonSeg基准测试总共包含1218个图像指令对。该数据集进一步划分为三个部分:train、val和test,分别包含239、200和779个图像指令对。由于基准测试的主要目的是评估,因此验证和测试集包含更多的图像指令样本。

方法

模型结构

 Embedding as Mask

 VisionLLM (Wang et al., 2023)可以通过将分割掩码解析为多边形序列,支持将分割掩码表示为纯文本,并允许在现有多模态llm框架内进行端到端训练。然而,除非使用大量的数据和计算资源,否则多边形序列的端到端训练会引入优化挑战,并可能损害泛化能力。例如,训练一个7B模型,VisionLLM需要4 × 8 NVIDIA 80G A100 gpu和50个epoch,这在计算上是令人望而却步的。相比之下,训练LISA-7B只需要在8台NVIDIA 24G 3090 gpu 上训练10,000步。

 为此,我们提出了嵌入作为掩码范式,将新的分割功能注入到多模态LLM中。

step1

Text

我们首先用一个新的令牌扩展原始的LLM词汇表,即<SEG>,它表示对segmentation输出的请求。给定文本指令xtxt和输入图像ximg,我们将它们输入到多模态LLM F中,LLM F反过来输出文本响应ytxt。

 当LLM打算生成二进制分割掩码时,输出的ytxt应该包含一个<SEG>令牌。

然后,我们提取与<SEG>令牌对应的最后一层嵌入- hseg,并应用MLP投影层γ来获得hseg

image

同时,视觉骨干神经网络从视觉输入图像中提取视觉嵌入。最后,hseg和f被馈送到解码器Fdec以产生最终的分割掩码M。解码器Fdec的详细结构参照Kirillov et al.(2023)。该过程可表述为

Training Objectives

损失函数

使用文本生成损失Lxtsegmentation mask损失Lmask对模型进行端到端训练。总目标L是这些损失的加权和,由λtxt和λmask决定:

具体来说,Ltxt是文本生成的自回归交叉熵损失,Lmask是掩码损失,这促使模型产生高质量的分割结果。为了计算Lmask,我们采用了每像素二进制交叉熵(BCE)损失和DICE损失的组合,相应的损失权重分别为λbce和λdice。给定真值目标ytxt和m,这些损失可以表示为:

 

Training Data Formulation 训练数据公式

我们的训练数据由三部分组成,全部来源于广泛使用的公共数据集。具体情况如下

Semantic Segmentation Dataset.语义分割数据集

语义分割数据集通常由图像和相应的多类标签组成。

在训练过程中,我们随机为每个图像选择几个类别。为了生成与可视化问答格式匹配的数据,我们使用了如下的问答模板

" USER: <IMAGE>你能分割这个图像中的{CLASS NAME}吗? "助理:是<SEG>,其中{CLASS NAME}是选择的类别,<IMAGE>表示图像patches token 的placeholder。

使用相应的二值分割掩码作为ground truth,提供mask loss监督。在训练过程中,我们还使用其他模板来生成QA数据,以保证数据的多样性。我们采用ADE20KCOCO-StuffLVIS-PACO零件分割数据集。

Vanilla Referring Segmentation Dataset 参考分割数据集

参考分割数据集提供输入图像和目标对象的显式简短描述。

因此,使用类似于“USER: <IMAGE>可以在此图像中分割{description}吗?”这样的模板很容易将它们转换为问答对。Assistant:当然,是<SEG>,其中{description}是给定的显式描述。本部分采用refCOCOrefCOCO+refCOCOgrefCLEF数据集。

Visual Question Answering Dataset 图片问答数据集

为了保持多模态LLM原有的视觉问答(VQA)能力,我们还在训练过程中加入了VQA数据集。我们直接使用GPT-4生成的llava - instruction -150k数据(Liu et al., 2023b)。

可训练参数

为了保持预训练的多模态LLM F(即我们实验中的LLaVA)的泛化能力,我们利用LoRA (Hu et al., 2021)进行高效微调,并完全冻结视觉骨干区。解码器Fdec是完全微调的。此外,LLM的词嵌入投影层γ也是可训练的。

实验

实验设置

网络结构

除非另有说明,我们采用LLaVA-7B-v1-1LLaVA-13B-v1-1作为多模态LLM F

采用ViT-H SAM骨干网作为视觉骨干网。

γ的投影层是通道为[256,4096,4096]的MLP

 

实现细节

8个NVIDIA 24G 3090 gpu

训练脚本基于deepspeed (Rasley et al., 2020)引擎。我们使用AdamW (Loshchilov & Hutter, 2017)优化器,学习率和权重衰减分别设置为0.0003和0

我们也采用WarmupDecayLR作为学习率调度器,其中warmup迭代设置为100。

文本生成loss λtxt gen掩码loss λmask的权值分别设为1.0和1.0,

bce loss λbcedice loss λdice的权值分别设为2.0和0.5。

此外,每个设备的batch size设置为2,gradient accumulation step设置为10。在训练过程中,我们对语义分割数据集中的每个图像最多选择3个类别。

数据集

对于语义分割数据集,我们使用ADE20K (Zhou等人,2017)和COCO-Stuff (Caesar等人,2018)。此外,为了增强对物体某些部分的分割结果,我们还使用了部分语义分割数据集,包括PACO-LVIS (Ramanathan等人,2023)、PartImageNet (He等人,2022)和PASCAL-Part (Chen等人,2014);

对于参考分割数据集,我们使用了refCLEF, refCOCO, refCOCO+ (Kazemzadeh et al., 2014), and refCOCOg (Mao et al., 2016).

对于视觉问答(VQA)数据集,我们使用llava - instruction -150k数据集(Liu et al., 2023b)。为了避免数据泄露,我们在训练过程中排除了图像出现在refCOCO(+/g)验证集中的COCO样本。

此外,我们惊奇地发现,通过对ReasonSeg图像指令对的239个样本进行模型微调,模型的性能可以进一步提高。

评价指标

我们遵循之前大多数关于参考分割的工作(Kazemzadeh等人,2014;)gIoU是由所有每个图像的交集-联合(iou)的平均值定义的,而cIoU是由累积交集-联合定义的。由于cIoU对大面积物体的偏倚较大,且波动较大,所以首选gIoU

实验结果

REASONING SEGMENTATION

只有真正理解了查询,模型才能很好地完成任务。现有的工作仅限于显式引用,没有适当的方法来理解隐式查询,而我们的模型利用多模态LLM来实现这一目标。

LISA-13B的性能大大优于7B,特别是在长查询场景下,这表明当前的性能瓶颈可能仍然在于理解查询文本,而更强大的多模态LLM可能会带来更好的结果 

VANILLA REFERRING SEGMENTATION

 

消融实验

除非另有说明,我们在验证集中报告LISA-7B的gIoU和cIoU指标。

 视觉主干的设计选择

 视觉骨干的设计选择是灵活的,不局限于SAM

SAM LoRA微调

 我们注意到经过LoRA调优的SAM主干的性能不如冻结的主干。一个潜在的原因是微调削弱了原始SAM模型的泛化能力

 

SAM预训练权重

不带预训练权重性能大下降!

MLP vs.线性投影层

我们注意到使γ MLP在gIoU中的性能下降很小,但在cIoU中的性能相对较高↑

所有类型训练数据的贡献

 值得注意的是,在Exp. 4中,我们没有使用任何语义分割数据集,性能下降了很多。我们推测语义分割数据集为训练提供了大量的基真二值掩码,因为一个多类标签可以产生多个二值掩码。这表明语义分割数据集在训练中是至关重要的

GPT-3.5指令复述

在对推理分割图像指令对进行微调的过程中,我们使用GPT-3.5对文本指令进行改写,并随机选择一条。表4中实验3和实验4的对比表明,性能分别提高了2.2%和2.9% cIoU。该结果验证了该数据增强方法的有效性。

附录-一些实验结果

 

 

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

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

相关文章

csdn崩溃了?每次都卡

反馈给了官方客服也没有响应&#xff0c;最近几周都是这样的高频率的转圈圈&#xff01;这个入口不受重视&#xff1f;这个对于csdn用户来说&#xff0c;是最最基本的入口 如果CSDN&#xff08;CSDN.net&#xff09;崩溃了&#xff0c;可能会对以下方面产生影响&#xff1a; 开…

【perl】报错合集

perl报错合集 &#xff08;注&#xff1a;可能会不定时更新&#xff09; 1.Name “main::x” used only once: possible typo at … 1.Name "main::x" used only once: possible typo at ...给某个变量赋值但是从来没有用它&#xff0c;或者变量之只用一次但没有…

前沿分享-100 μAh 微型电池

这是SMD 组件形状的固态锂离子微型电池&#xff0c;容量高达 100Ah&#xff0c;在22年的慕尼黑电子展上出现过。 因为是可重复使用的&#xff0c;未来该产品甚至有机会取代容量更高&#xff08;例如100 Ah 时&#xff09;的不可充电硬币电池。 一般应用于超低功率的传感器&…

8.7 作业

1.思维导图 2.写一个函数&#xff0c;获取用户的uid和gid并使用变量接收 #!/bin/bash fun() {uid$(id -u)gid$(id -g) }fun echo $uid $gid 3.整理冒泡排序、选择排序和快速排序的代码 冒泡 #include <myhead.h> void fun(int l,int *arr) {for(int i0;i<l-1;i){f…

【面试题】 本地运行的前端代码,如何让他人访问?

前端面试题库 &#xff08;面试必备&#xff09; 推荐&#xff1a;★★★★★ 地址&#xff1a;前端面试题库 有时候&#xff0c;我前端写好了项目&#xff0c;想要给其他人看一下效果&#xff0c;可以选择将代码部署到test环境&#xff0c;也可以选择让外部通过i…

Linux/centos上如何配置管理samba服务器?

Linux/centos上如何配置管理samba服务器&#xff1f; 1 samba服务相关知识1.1 SMB协议1.2 samba工作原理1.2.1 相关进程1.2.2 samba工作流程1.2.3 samba功能 2 samba服务器安装2.1 利用光驱安装2.2 利用光盘映射文件 3 启动与停止samba服务4 配置samba服务器4.1 samba主配置文件…

睡眠助手/白噪音/助眠夜曲微信小程序源码下载 附教程

睡眠助手/白噪音/助眠夜曲微信小程序源码 附教程 支持分享海报 支持暗黑模式 包含了音频数据 最近很火的助眠小程序&#xff0c;前端vue&#xff0c;可以打包H5&#xff0c;APP&#xff0c;小程序 后台可以设置流量主广告&#xff0c;非常不错的源码 代码完整 完美运营 搭配无…

用神经网络玩转数据聚类:自编码器的原理与实践

一、什么是自编码器 自编码器是一种神经网络模型&#xff0c;它可以学习输入数据的低维表示&#xff0c;也称为隐层特征或编码。自编码器由两部分组成&#xff1a;编码器和解码器。编码器将输入数据映射到隐层特征&#xff0c;解码器将隐层特征重构为输入数据&#xff0c;使其…

自动方向识别式 LSF型电平转换芯片

大家好&#xff0c;这里是大话硬件。 今天这篇文章想分享一下电平转换芯片相关的内容。 其实在之前的文章分享过一篇关于电平转换芯片的相关内容&#xff0c;具体可以看链接《高速电路逻辑电平转换设计》。当时这篇文章也是分析的电平转换芯片&#xff0c;不过那时候更多的是…

如何做好Code Review

本文主要从我们为什么需要CR&#xff1f;CR面临哪些挑战&#xff1f;CR的最佳实践几个方面分析&#xff0c;希望可以给读者一些参考。 为什么需要CR&#xff1f; 代码质量 定性来看&#xff0c;大家都认可Code Review&#xff08;后文简称CR&#xff09;能显著改善代码质量&…

自监督去噪:Blind2Unblind原理分析与总结

文章目录 1. 方法原理1.1 动机与贡献1.2 方法细节(1) Noise2Void(2) re-visible without identity mapping(3) 综合说明 2. 效果3. 总结 1. 方法原理 1.1 动机与贡献 摘要要点&#xff1a;基于盲点去噪的网络受网络设计和/或输入数据的影响会丢失部分信息 --> 有价值的信息…

UNIX 系统概要

UNIX 家族UNIX 家谱家族后起之秀 LinuxUNIX vs LinuxUNIX/Linux 应用领域 UNIX 操作系统诞生与发展UNIX 操作系统概要内核常驻模块shell虚拟计算机特性 其他操作系统 LinuxRichard StallmanGNU 项目FSF 组织GPL 协议Linus Torvalds UNIX 家族 有人说&#xff0c;这个世界上只有…

优维低代码实践:对接数据

优维低代码技术专栏&#xff0c;是一个全新的、技术为主的专栏&#xff0c;由优维技术委员会成员执笔&#xff0c;基于优维7年低代码技术研发及运维成果&#xff0c;主要介绍低代码相关的技术原理及架构逻辑&#xff0c;目的是给广大运维人提供一个技术交流与学习的平台。 优维…

CS 144 Lab Five -- the network interface

CS 144 Lab Five -- the network interface TCP报文的数据传输方式地址解析协议 ARPARP攻击科普 Network Interface 具体实现测试tcp_ip_ethernet.ccTCPOverIPv4OverEthernetAdapterTCPOverIPv4OverEthernetSpongeSocket通信过程 对应课程视频: 【计算机网络】 斯坦福大学CS144…

Gradle Run with --stacktrace option to get the stack trace

IDEA中使用Gradle的时候遇到以下异常&#xff1a; * Try:Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. 解决办法&#xff1a; IDEA中File-Settings-Build&#…

比特鹏哥2-数据类型和变量【自用笔记】

比特鹏哥2-数据类型和变量【自用笔记】 1.数据类型介绍字符&#xff0c;整型&#xff0c;浮点型&#xff0c;布尔类型 2.signed 和unsigned3.数据类型的取值范围sizeof 展示字节大小--- 计算机中单位&#xff1a;字节 4.变量 常量4.1 变量创建变量&#xff08;数据类型 变量名&…

awk基础知识和案例

文章目录 awk1 awk用法入门1.1 BEGIN和END语句块1.2 awk语法1.2.1 常用命令选项1.2.2 awk变量内置变量自定义变量 1.3 printf命令1.3.1 格式1.3.2 演示 1.4 操作符 2 awk高阶用法2.1 awk控制语句(if-else判断)2.2 awk控制语句(while循环)2.3 awk控制语句(do-while循环)2.4 awk控…

PingCAP 入选 Gartner 《Hype Cycle for Data Management 2023》代表厂商

日前&#xff0c;全球科技咨询与研究机构 Gartner 发布了《Hype Cycle for Data Management 2023》&#xff08;2023 年数据管理技术成熟度曲线报告&#xff09;&#xff0c;PingCAP 凭借技术积累和产品优势&#xff0c;入选报告“用于数据管理的生成式人工智能”&#xff08;G…

Win10下webots2020b闪退

下载安装完之后打开软件就会停留在这个界面几秒钟&#xff0c;什么都点不了&#xff0c;然后就会闪退回桌面 原因: webots安装路径中有中文 解决方案&#xff1a; 安装路径下的中文改为英文

真的不想知道录音转文字怎么弄才简单吗

哇哦&#xff01;听说你想知道如何将录音转成文字&#xff1f;这简直是一个超酷的技能&#xff0c;让我来为你揭开这个神奇的面纱吧&#xff01;想象一下&#xff0c;当你有一堆录音文件需要处理时&#xff0c;你不再需要费尽心思地一遍遍倾听、抄写。现在&#xff0c;你只需要…