人工智能
视觉指令调优用于像素级理解与 Osprey

随着视觉指令调优方法的最近增强,多模态大语言模型(MLLMs)展示了令人惊叹的通用视觉语言能力。这些能力使它们成为现代通用视觉助手的关键构建块。最近的模型,包括 MiniGPT-4、LLaVA、InstructBLIP 和其他模型,展示了令人印象深刻的视觉推理和指令跟随能力。虽然它们中的大多数依赖于图像文本对进行图像级视觉语言对齐,但它们在该领域表现良好。然而,它们依赖于框级和图像级理解是 MLLM 在复制其在像素级的精细视觉语言对齐任务上的性能方面的主要原因。此外,用于训练的基于掩码的指令数据的有限可用性在进一步增强 MLLM 方面带来了挑战。
Osprey 是一种掩码文本指令训练方法,主要目标是扩展 MLLM。它将精细的掩码区域纳入语言指令中,以实现像素级视觉语言理解。为此,Osprey 框架策划了一个包含 70 万多个样本的基于掩码的区域文本数据集。它将像素级表示注入大语言模型(LLM)中,以设计一个视觉语言模型。值得注意的是,Osprey 框架采用了基于卷积的 CLIP 模型作为其视觉编码器,并将掩码感知视觉提取器集成到其架构中。这使得可以从高分辨率输入中精确提取视觉掩码特征。
在本文中,我们将讨论 Osprey 框架,并更深入地探讨其架构。我们还将探索包含 70 万多个样本的策划区域文本数据集,并比较其在各种区域理解任务中的性能。因此,让我们开始。
Osprey:使用视觉指令调优的像素理解
像 MiniGPT-4、Otter、Qwen-LV、InstructBLIP 等多模态大语言模型是开发通用视觉助手的前沿者,它们以其出色的多模态和视觉生成能力而闻名。然而,多模态大语言模型面临着一个重大挑战,即它们在像素级图像理解任务(如字幕、区域分类和推理)上提供不令人满意的结果。多模态大语言模型在像素级图像理解任务上表现不佳的主要原因是缺乏区域级别的对齐。最近的 MLLM,如 GPT4RoI、Shikra 等,旨在通过处理边界框指定的区域并利用具有对象级别空间特征的视觉指令调优来实现区域级别的理解。
虽然这种实现区域级别理解的方法可能会提高性能,但直接使用稀疏边界框作为引用的输入区域可能会引入不相关的背景特征,从而导致在大语言模型上进行视觉指令调优时出现区域文本对齐不准确的情况。在推理过程中,框级引用的输入可能无法检测和表示对象精确地,这可能会导致语义偏差,如下图所示。

相比之下,使用精细的掩码而不是粗略的边界框作为引用的输入可能能够更精确地表示对象。最近开发的 SAM 或分割任何模型在数十亿高质量掩码上进行训练,展示了对零样本对象的显著分割质量,并支持使用点或简单边界框作为提示。然而,SAM 框架无法生成主要的语义标签,也无法提供详细的语义字幕和属性。因此,现有模型缺乏固有的多模态精细信息,并且对现实世界场景的理解有限。
为了解决现有 MLLM 面临的挑战,Osprey,一种新颖的掩码文本指令训练方法,旨在扩展多模态大语言模型的能力,以实现像素级的精细理解。Osprey 框架引入了一个掩码感知视觉提取器,能够精确地捕获每个对象区域内的视觉掩码特征。然后,框架将视觉特征与语言指令交织在一起,生成大语言模型的输入序列,并利用基于卷积的 CLIP 架构来促进高分辨率输入的使用。由于其设计和架构,Osprey 框架能够实现对象级和部件级区域的精细语义理解,并提供详细的对象属性以及复杂场景的增强描述。
通过利用视觉指令调优的能力,Osprey 框架实现了超越图像级和框级理解场景的新能力,因为 Osprey 框架可以使用来自现成 SAM 的类别无关掩码生成精细语义。此外,Osprey 在引物对象分类、开放词汇识别、区域级字幕和详细区域描述任务中展示了显著的能力。
Osprey:方法和架构
以下图表展示了 Osprey 框架的架构概述,包括大语言模型、像素级掩码感知视觉提取器和图像级视觉编码器。

对于给定的图像、输入语言和引用的掩码区域,框架执行转换和标记化以生成嵌入,然后将语言嵌入序列和交织的掩码特征发送到大语言模型以获得精细的语义理解。
基于卷积的 CLIP 视觉编码器
大多数多模态大语言模型中部署的视觉编码器是使用 ViT 基于的 CLIP 模型来演示的。因此,框架采用 224×224 像素或 336 x 336 像素的图像分辨率。然而,使用 ViT 基于的 CLIP 模型使得模型难以实现对像素级表示的细粒度图像理解,这个问题在小区域中进一步被放大。另外,ViT 架构相关的计算负载阻碍了增加输入图像分辨率的可能性。
为了解决这个挑战,Osprey 框架在其架构中实现了基于卷积的 CLIP 模型作为视觉编码器。传统上,基于 CNN 的 CLIP 模型在不同输入分辨率下表现出显著的泛化能力,相比基于视觉变换器的 CLIP 模型。实现基于 CNN 的 CLIP 模型为快速推理和高效训练提供了空间,而不会损害模型的性能。此外,基于 CNN 的 CLIP 模型能够生成多尺度特征图,框架然后直接用于每个后续对象区域的特征提取。
掩码感知视觉提取器
与使用稀疏边界框作为引用的输入的现有区域级模型相比,Osprey 框架使用详细的掩码区域来实现基于对象的表示。Osprey 模型采用掩码感知视觉提取器组件来捕获每个对象区域内的像素级特征。掩码感知视觉提取器组件编码掩码级视觉特征,并且还收集每个区域的空间位置信息。
为了实现这一点,Osprey 首先使用视觉编码器生成的多级图像特征来采用掩码池化操作,并且对于每个单级特征,框架池化所有位于掩码区域内的特征。然后,模型通过将每个特征通过线性投影层来编码不同层的特征,生成区域级嵌入,并通过求和来融合多级特征。模型然后使用 MLP 层来产生视觉掩码令牌。此外,Osprey 通过为每个对象区域实现二进制掩码来保存对象区域的空间几何形状,编码像素级位置关系。在最后,Osprey 包括视觉掩码令牌及其相应的空间令牌用于每个掩码区域嵌入。
LLM 标记化
如前所述,模型通过将图像输入到预训练的基于 CNN 的视觉编码器中来提取图像的图像级嵌入。对于文本信息,模型首先使用预训练的 LLM 标记化器来标记化文本序列,然后将这些标记化的文本序列投影到 文本嵌入中。对于基于掩码的区域,模型定义一个特殊令牌作为占位符,然后用空间令牌和掩码令牌替换它。当模型在文本输入中引用对象区域时,它在区域名称后追加占位符,这允许掩码区域与文本混合良好,形成完整的句子,而无需标记化空间。此外,除了用户指令外,模型还包括一个前缀提示,一个特殊令牌,作为占位符,然后被视觉编码器的图像级嵌入替换。最后,框架交织区域级和图像级视觉令牌以及文本令牌,并将其输入到大语言模型中,以理解用户指令和具有不同区域的图像。
Osprey:三阶段训练过程
Osprey 框架采用三阶段训练过程,其中每个训练阶段都由最小化下一个令牌预测损失来监督。
阶段 1:图像文本对齐训练
在第一阶段,Osprey 框架采用基于 CNN 的 CLIP 视觉编码器来训练图像级特征和语言连接器,以训练模型进行图像文本特征对齐。在第一阶段,框架采用三个组件:预训练的大语言模型、预训练的视觉编码器和图像级投影器。框架还采用一个 MLP 层作为视觉语言连接器,以增强 Osprey 的多模态生成能力。
阶段 2:掩码文本对齐预训练
在第二阶段,Osprey 加载在第一阶段训练的权重,并采用其掩码感知视觉提取器组件来捕获像素级区域特征。在第二阶段,框架仅训练掩码感知视觉提取器,以对齐语言嵌入和基于掩码的区域特征。此外,模型从部分级和公开可用的对象级数据集中收集像素级掩码对和短文本,并将其转换为指令跟随数据以进一步训练模型。
阶段 3:端到端微调
在第三阶段和最后阶段,模型固定视觉编码器的权重,并微调大语言模型、基于掩码的区域特征提取器和图像级投影器组件。第三阶段训练的主要目标是扩展模型跟随用户指令的能力,并高效地执行像素级区域理解任务。
在实施了三个训练阶段后,Osprey 框架能够理解由用户指令定义的复杂场景,并基于像素级掩码区域。
Osprey:实验结果
为了评估其性能,Osprey 开发人员进行了一系列广泛的实验,以展示模型在分类、像素级区域识别和复杂描述方面的能力。

开放词汇分割
开放词汇分割的主要目标是生成基于掩码的区域识别及其相应的类别。为了实现开放词汇分割,Osprey 首先使用输入文本提示,然后采用地面真实掩码区域进行模型干预,以评估模型在开放词汇识别任务中的性能。根据多模态大语言模型生成的句子响应,Osprey 计算词汇表和每个数据集输出之间的语义相似度。以下图表比较了 Osprey 与最先进的多模态大语言模型。

如可以观察到的,Osprey 框架在 Cityscapes 和 ADE20K-150 数据集上显著优于现有方法。结果表明 Osprey 的能力超越了现有的方法,并实现了对细粒度对象区域的强大理解和识别。
引物对象分类
在引物对象分类任务中,模型需要对图像中特定区域内的对象进行分类。为了评估其分类能力,Osprey 框架使用两个语义相关度指标,包括语义 IoU(S-IoU)和语义相似度(SS)。语义 IoU 表示地面真实标签和预测标签之间的重叠词汇,而语义相似度则衡量预测和/或地面真实标签在语义空间中的相似度。以下图像展示了 Osprey 在引物对象分类任务中的性能,当其与使用框级和图像级方法的模型进行比较时。

详细区域描述
在详细区域描述任务中,模型评估其在指令跟随详细描述能力方面的性能,以及其他区域级方法。模型从预定义提示列表中随机选择输入推理提示,并利用 GPT-4 LLM 框架来衡量模型生成的响应的质量,相对于输入引物区域进行全面评估。使用指令生成管道,模型生成问题,并寻求 GPT-4 的答案,然后 LLM 评估语义的正确性和引物理解的精度。以下表格展示了 Osprey 与最先进模型在详细区域描述任务中的性能。

区域级字幕
Osprey 框架还在区域级字幕任务中超越了当前的方法,结果包含在以下图像中。

最后的思考
在本文中,我们讨论了 Osprey,一种掩码文本指令训练方法,主要目标是通过将精细的掩码区域纳入语言指令中来扩展 MLLM,以实现像素级视觉语言理解。为了实现这一目标,Osprey 框架策划了一个包含 70 万多个样本的基于掩码的区域文本数据集,并将像素级表示注入 LLM 中,以设计一个视觉语言模型。Osprey 框架旨在显著增强 MLLM 的精细视觉理解能力,并通过实施基于 CNN 的 CLIP 模型和掩码感知视觉提取器,Osprey 获得了理解图像在部件级和对象级区域的能力。












