浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型

目前的多模态大语言模型未能在像素级实现细粒度的视觉-语言对齐,基于掩码的指令数据的缺乏限制了它们的进步。本文提出Osprey,通过将细粒度掩码区域合并到语言指令中来扩展MLLMs,旨在实现像素级的视觉理解。实验结果证明了Osprey在不变性区域理解任务中的优势,展示了其像素级指令调整的新能力。

论文地址:https://arxiv.org/pdf/2312.10032.pdf

Github地址:https://github.com/CircleRadon/Osprey

 

摘要

本文介绍了一种名为Osprey的多模态大型语言模型(MLLMs)的方法,通过融合细粒度的掩码区域到语言指令中,实现像素级的视觉理解。作者首先精心策划了一个基于掩码的区域-文本数据集,然后设计了一个视觉-语言模型,将像素级表示注入到LLM中。实验结果表明,Osprey在各种区域理解任务中具有优势,展示了其在像素级指令调整方面的新能力。

简介

本文提出了一种名为Osprey的新方法,旨在扩展MLLM的能力,实现对细粒度像素级理解。为了实现这一目标,提出了一个面向掩码的视觉提取器,用于捕捉各种粒度的精确视觉掩码特征。这些视觉特征与语言指令交错,形成输入序列,以实现精细的语义理解。同时,构建了一个大规模的基于掩码的区域-文本数据集Osprey-724K,用于实现像素级别的视觉和语言特征对齐。实验结果表明,Osprey在开放词汇识别、指代对象分类、详细区域描述和区域级别字幕等任务上表现优异。

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

相关工作

大型语言模型(LLMs)在自然语言处理(NLP)领域取得了显著进展。LLMs的成功促进了多模态语言模型的发展,通过扩大训练数据和增加模型规模来实现。这些模型在图像级多模态任务中表现出色,但在需要特定区域作为参考的任务中表现有限。最近的研究集中在如何利用预训练的LLMs进行视觉指导调整。目前存在的模型在视觉输入的处理上存在一些问题,如使用边界框作为参考区域可能引入背景中的无关特征。为了解决这些问题,本文介绍了一种基于LLM的像素级理解方法,并提供了一个包含掩码-文本对的数据集来支持基于指令的学习。

Osprey-724K数据集

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

Osprey-724K是一个包含约724K个多模态对话的指令数据集,用于鼓励MLLMs进行细粒度的像素级图像理解。该数据集包含基于公开可用数据集创建的对象级和部分级的掩码-文本指令数据。为了使数据具有指令性,我们利用GPT-4生成高质量的掩码-文本对,使用精心设计的提示模板。此外,为了增强响应的鲁棒性和灵活性,我们引入了短格式响应格式提示的负样本挖掘方法。Osprey-724K的示例样本如图2所示,我们的Osprey-724K数据集的详细统计数据和分布情况如表1和图3所示。

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

对象级指令

为了训练一个多模态语言模型(MLLM),我们需要利用具有掩码注释的公开数据集(如COCO、RefCOCO、RefCOCO+和RefCOCOg)中的图像级和对象级标题。然而,这些标题通常简单且缺乏语义上下文,不足以训练MLLM。为了解决这个问题,我们设计了一个数据处理流程,生成基于区域的细粒度指令数据,包括对象类别、对象类型、对象动作、位置、颜色、状态等。首先,我们使用LLaVA-115K中的详细描述作为COCO图像的图像级描述。其次,我们利用仅包含语言的GPT-4生成指令跟随数据,以生成每个对象区域的视觉内容。具体来说,我们利用边界框和简短的区域标题,其中每个框编码了场景中的对象概念和空间位置。从RefCOCO、RefCOCO+和RefCOCOg中收集的简短标题通常从不同角度描述特定区域。基于这些信息,我们使用GPT-4生成两种类型的数据,即区域级详细描述和对话样本。最后,我们总共收集了19.7万个独特的对象级掩码区域指令跟随样本。

区域级指令

利用PACO-LVIS数据集中的部件级知识来构建物体区域的指令跟随数据。通过考虑颜色、图案、材料和反射等信息,使用GPT-4构建了部件级区域的指令跟随数据。最终获得了306K个独特的部件掩码区域指令跟随样本。

鲁棒性和灵活性

鲁棒性。MLLMs在视觉指令中存在对象幻觉问题,即经常出现在视觉指令中或与其他对象共同出现的对象容易被错误地幻觉。为了增强MLLM的鲁棒性,我们构建了正/负指令样本,用于准确地理解区域。正样本询问给定区域是否属于特定类别,并期望肯定或否定的回答。为了保持平衡,正/负样本被等量地设计。

负样本挖掘旨在找到空间感知和类别感知的负样本。前者使模型能够在给定对象附近空间上识别特定的对象类别。对于后者,负类别是根据与目标类别名称的高语义相似性选择的,其中使用SentenceBert计算语义相似性。实证上,从与目标类别最相似的前8个候选类别中随机选择一个类别,以增强负类别的多样性。我们将这个方案应用于LVIS,这是一个包含约1200个带有掩码注释的对象类别的大词汇数据集。

灵活性。为了提高MLLM基于用户指令的响应灵活性,我们添加了短格式响应指令,涵盖特定对象区域的类别、颜色、类型、位置或数量。我们使用GPT-4使用与第3.1节讨论的相同的公开可用数据集生成指令样本,期望GPT-4能够生成由单个词或短语组成的简洁响应。然而,我们观察到传统的基于对话的提示没有明确指示期望的输出格式,可能导致LLM过度拟合到短格式答案。这个问题在之前的关于图像级理解的工作中已经被认识到。为了解决这个挑战,当寻求简短答案时,我们采用在问题末尾明确附加短格式响应提示的方法。

Osprey

模型架构

Osprey是一个语义理解模型,包括图像级视觉编码器、像素级掩码感知视觉提取器和大型语言模型。它可以通过输入图像、掩码区域和语言来获取细粒度的语义理解。

卷积CLIP视觉编码器

相比于采用ViT模型,卷积神经网络可以处理更高分辨率的图像,同时具有更好的泛化能力和更高的效率。作者选择了ConvNeXtLarge CLIP模型作为视觉编码器,并采用其在“res4”阶段的输出作为图像级别特征。这种设计可以直接利用卷积神经网络生成的多尺度特征图进行目标区域的特征提取。

掩码感知视觉提取器

本文提出了一种基于对象表示的指代解析方法,使用详细的掩码区域而非稀疏的边界框作为指代输入。为了捕捉每个对象区域的像素级特征,提出了一个掩码感知视觉提取器,它不仅编码掩码级视觉特征,还收集每个区域的空间位置信息。同时,利用二进制掩码编码像素级位置关系,将视觉掩码令牌和其对应的空间令牌作为每个掩码区域的嵌入。

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

LLM模型的标记化

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

本文介绍了一种基于预训练视觉编码器和语言模型的图像指令生成方法。通过将图像输入预训练的ConvNeXt-Large CLIP模型,提取图像级别的嵌入。对于文本信息,使用预训练的LLM的分词器将文本序列进行分词,并将其投影到文本嵌入中。对于基于掩码的区域,定义一个特殊的占位符,用于替换掩码标记t以及空间标记s,以 表示。在文本输入中引用对象区域时,在其区域名称后附加。此外,还使用前缀提示“ \n这提供了图片的概述。”将图像级别和区域级别的视觉标记和文本标记交错输入到LLM中,以理解图像和用户指令。使用Vicuna作为LLM,它是在LLaMA上进行指令调整的解码器。

训练

Osprey模型的训练过程包括三个阶段:图像-文本对齐预训练、掩码-文本对齐预训练和端到端微调。在第一阶段,使用卷积CLIP视觉编码器进行图像级特征和语言连接器的训练。在第二阶段,添加掩码感知视觉提取器以捕获像素级区域特征。在第三阶段,固定视觉编码器权重,微调Osprey的图像级投影仪、基于掩码的区域特征提取器和LLM模型。使用Osprey-724K数据集、Visual Genome和Visual Commonsense Reasoning数据集进行训练,使Osprey能够准确地遵循用户指令和处理复杂的像素级区域理解任务。

实验

实现细节

使用AdamW作为优化器,余弦退火调度器调整学习率。在三个训练阶段中,分别设置不同的批量大小和学习率,并使用DeepSpeed框架进行大规模模型训练。最终模型的最大序列长度为2,048,输入图像大小为512×512。所有训练数据集都被聚合到一个数据加载器中,以确保表征完整性。在训练过程中,从每个数据集中随机选择图像及其相应的掩码指令/响应对。训练时间分别为7、15和48小时。

实验结果

Osprey可以进行像素级区域识别、分类和复杂描述,包括开放词汇分割、指代对象分类、详细区域描述和区域级字幕。我们通过实验验证了Osprey的有效性,并展示了一些视觉结果。

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

Open-Vocabulary分割

与其他方法相比,Osprey在城市景观数据集上表现出色,超过了其他方法15.94%的PQ、7.24%的AP和13.05%的mIoU。在ADE20K-150数据集上,Osprey也取得了高竞争力的表现。这些结果表明Osprey可以在细粒度物体区域上实现强大的识别和理解。

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

参考对象分类

该任务旨在对图像中特定区域的对象进行分类。使用语义相似度(SS)和语义IoU(S-IOU)这两个语义相关性度量来评估模型的分类能力。在LVIS和PACO数据集上进行实验,并使用特定提示来进行性能评估。与其他方法相比,Osprey在LVIS和PACO数据集上表现出更好的性能,具有强大的细粒度部分级分类和理解能力。

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

区域详细描述

本文评估了Osprey和其他区域级方法的指令遵循详细描述能力。使用GPT-4对模型生成的响应进行全面评估,评估结果表明Osprey模型的性能最佳,准确率为77.54%,明显优于基于区域的GPT4RoI。同时,本文还介绍了MLLMs的有效性。

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

区域级描述

Osprey在RefCOCOg数据集上进行了实验,表现出与基于盒子区域的方法相比具有竞争力的性能。Osprey模型能够生成与物体区域相关的语义描述,展示了其优越的能力。

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

消融分析

本文通过实验比较了使用ViT-L和ConvNeXt-L作为CLIP视觉编码器对开放词汇语义分割的影响。实验结果表明,随着输入尺寸的增加,CNN-based CLIP表现出更好的泛化性能。因此,Osprey采用了CNN-based CLIP作为视觉编码器。在使用512×512输入尺寸的ConvNeXt-L模型时,Osprey的PQ达到了42.50%,比使用224×224输入尺寸的ViT-L模型提高了3.64%。

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

短形提示和正/负数据对Osprey-724K数据集的影响进行了实验评估。实验结果表明,使用短形提示和正/负样本的Osprey模型在对象级LVIS数据集上获得了65.24%的SS和38.19%的S-IoU,相比于没有使用短形提示数据的模型,性能提升了8.83%和12.54%。在部分级PACO数据集上,仅使用短形提示的Osprey模型获得了22.80%的SS和29.43%的S-IoU改进。在包含正/负样本的情况下,Osprey模型在对象级LVIS数据集上的性能提升了1.69%的SS和1.49%的S-IoU。在部分级PACO数据集上,使用正/负样本数据时获得了1.47%的SS和2.33%的S-IoU性能改进。这些实验结果表明,将短形提示和正/负数据纳入Osprey-724K模型中可以提高模型性能。

《浙大&蚂蚁发表Osprey,首个像素级多模态AI大模型》- 投稿作者:灵度智能 - 发布于:GetAI社区

本文探讨了输入图像大小对Osprey中基于ConvNeXt的CLIP视觉编码器的影响。实验结果表明,随着输入大小的增加,Osprey的性能也随之提高。但是,随着输入大小的增加,LLM的计算负担也会显著增加。为了在性能和计算成本之间取得平衡,Osprey选择了512×512的输入图像大小。

总结

本文介绍了Osprey,一种将像素级掩码区域引用融入语言指令的新方法,显著增强了细粒度视觉理解的多模态大型语言模型(MLLMs)。通过结合掩码感知的视觉提取器和卷积CLIP骨干网络,Osprey能够在部分级和对象级区域进行图像理解。为了促进视觉和语言之间的细粒度像素级对齐,我们精心策划了Osprey-724K数据集,其中包含了724K个高质量的基于掩码的区域-文本对。在Osprey-724K数据集上训练的Osprey模型在各种区域理解任务中表现出优越的性能,超过了最先进的方法。预计我们的Osprey-724K数据集和Osprey模型可以促进MLLM在像素级视觉理解方面在实际应用中的进展。

0

评论0

请先
显示验证码