微信扫码
与创始人交个朋友
我要投稿
一、背景
本文中我们介绍一种新的 LMM(Large MultiModal Model,大型多模态模型),其结合了 LMM 和视觉搜索模型,能很好的处理高分辨率图像的细节,也提出了相应的搜索算法和高分辨率图像评估基准。
对应的论文为:[2312.14135] V*: Guided Visual Search as a Core Mechanism in Multimodal LLMs
对应的代码库为:https://api.ibos.cn/v4/weapparticle/accesswximg?aid=78681&url=aHR0cHM6Ly9naXRodWIuY29tL1RlbmNlbnRBUkMvUGhvdG9NYWtlci90cmVlL21haW4=
最近常见多模态 LMM 的解读可以参考:
3. CogVLM: Visual Expert for Large Language Models 论文解读
8. SPHINX:多任务、多权重、多编码器、多分辨率混合的多模态大模型
9. Monkey:大分辨率+详细描述,多项 LMM SOTA
10. Florence-2:126M 图像,5.4B 视觉标注,0.77B LMM,多项 SOTA
常见多模态数据集的解读可以参考:
2. LMM 视觉描述(Captioning)和定位(Grounding)数据集
3. LVIS-Instruct4V: Data is All You Need,12 评估 11 SOTA
其他多模态幻觉校正可以参考:
1. Woodpecker: LMM 幻觉校正 - 论文解读
作为实现通用人工智能的重要一步,LMM 试图集成多模态信息来执行更复杂的任务,然而当前 LMM 依然存在一个局限性,它们都依赖于预训练的视觉编码器(通常也都是冻结的),例如常见的 CLIP,然而这些视觉编码器往往在低分辨率上训练(通常要 resize 到 224x224 或 336x336),在推理时,输入图像也往往要调整到较低分辨率,因此导致编码器很容易忽略高分辨率图像中的重要细节,此外,当前 LMM 难以识别它们处理的图像中的缺失或者不清楚的细节时,也无法主动寻找或查询这些信息,这成为了视觉信息处理的主要瓶颈。
受人类能力的启发,作者提出了 SEAL(Show,SEArch,and TelL),这是一种通用的架构,用于将 LLM 引导的视觉搜索机制集成到 LMM 中,以解决上述限制。SEAL 框架由 VQA(Visual Question Answering)LLM 和视觉搜索模型组成,SEAL 中的 VQA LLM 可以明确地确定缺失的视觉细节,从而创建目标对象并进一步聚焦处理。然后,利用丰富的世界知识和语言模型的常识,视觉搜索组件定位这些已识别的元素,并将它们添加到视觉工作记忆 (Visual Working Memory,VWM) 中。VWM 中的这些额外视觉数据使 VQA LLM 能够提供更准确、更明智的响应。
总而言之,本文的主要贡献可以概括为如下三点:
设计了一种 LMM 框架 SEAL(Show,SEArch,and TelL),旨在主动推理和搜索所需的视觉信息,这是密集型视觉多模态任务的重要能力,尤其是处理高分辨率图像时。
设计了一种视觉搜索算法 V*,利用 LLM 固有的常识理解对任何分辨率的图像进行有效地、广泛地搜索。
创建了一种多模态评估基准 V* Bench,用来评估 LMM 在高分辨率图像中准确处理和定位详细视觉信息的能力。
如下图所示为 VQA LLM 的主要结构,其包含一个 VWM,用于存储上下文信息,主要包含 4 个方面:
<question>:原始的纯文本问题。
<global image>:初始的图像。
<searched targets>:从视觉搜索模块获得的目标图像,已经经过裁剪,初始阶段为空。
<target locations>:目标图像对应的坐标,初始阶段为空。
作者使用 LLaVA-7B-1.5 作为 VQA LLM,其同样包含三个关键组件:
Vision Encoder:作者采用 CLIP ViT-L/14 模型,用于提取图像 Token embedding,对应的输入图像分辨率为 224x224,生成 256 个 Token。
Language Model:大语言模型。
Resampler + Linear:两种常见的多模态投影模块,Resampler 采用 Cross-Attention,可以压缩 Token 数目,从 256 -> 32。作者设计了一个简单的机制在两者之间切换:
只包含一个初始图像:使用 Linear,保留 256 个 Token。
有一个初始图像和 1-2 个目标图像:初始图像使用 Resampler,目标图像使用 Linear,目标图像 Token 更多,LLM 可以更加聚焦在目标图像。
超过 2 个目标图像:全部使用 Resampler,以减小计算代价。
如下图所示为 SEAL 的详细工作流程:
1:输入图像 I 和文本问题 T,和阈值 δ
2:调用 VQA LLM 获得目标 L
3:初始化 VWM
4:将图像 I 和文本问题 T 添加到 VWM
5:循环遍历所有目标 L:
6:创建优先级队列 q
7:将 (I, ∞) 添加到 q
8:使用视觉搜索模型来搜索目标
9,10:没有找到目标,VWM 中添加 “图像中不存在 {目标}”
12,13:找到目标,从图像 I 中裁剪目标,并将 “{目标} <目标图像> 位于 [x1, y1, x2, y2]” 添加到 VWM
14,15:VQA LLM 基于 VWM 最终结果并返回
由于 VQA LLM 增加了 VWM,因此需要额外的指令微调数据来训练,作者构建了三种数据。
VQA LLM 首先要识别目标物体,以便回答问题及判断是否缺失或者在初始图像中不够清晰。为此,作者构建了(图像,问题,答案)数据,其中包含图像中不存在的 1 或 2 个目标。
此外,作者还故意挑选了一些太小而无法被 CLIP Encoder 捕获的目标物体,具体来说是选择了边界框小于 20x20 的物体,并构建其相关细节问题,对于此类问题的恰当的回答应该是承认无法回答,并明确列出所需的其他目标物体。作者使用 COCO 2017 构建了 100k 的数据,并使用 GPT-3.5 生成相关问题。
数据包含三个部分:
GQA 数据(70k)
聚焦于物体属性的 VQA 数据(51k)
聚焦于物体空间关系的 VQA 数据(46k)
数据包含两部分:
LLaVA-80k 指令微调数据,图像也来自 COCO。
针对上述数据还识别了与 COCO 类别匹配并标注有对象实体的数据,将匹配的对象作为搜索目标,创建了额外的 40k 数据。
如下图所示,上述的 VQA LLM(MLLM)模型有三个用途:
加上 LoRA:用于生成可能的目标(文本)。
加上 LoRA 和 Mcl:用于生成目标可能的区域。
加上 LoRA 和 Mtl:用于生成目标确切的位置。
作者设计了一个特殊的 <LOC> Token,通过 prompt “Please locate the [object] in the image.”,模型会生成对应的 <LOC> Token,然后将该 Token 对应的 embedding 用于后续的 Mcl 和 Mtl 模块,这两个模块的结构如下图 Figure 4 所示,其中 Dcl 参考了 SAM 的实现,Dtl 包含两个 MLP,这两个模块也都会把 Image Token embedding 作为输入:
其对应的视觉模型搜索算法如下所示:
1:给定优先级队列 q,搜索目标 s 和阈值 δ
2:从队列 q 中拿到对应图像 I
3:调用视觉搜索模型,从图像 I 中定位目标 s,获得对应的坐标 coordinates、置信度 confidence 和可能位置 heatmap。
4,5:如果存在目标 s 对应的坐标则直接返回坐标 coordinates
6:不存在目标 s 的坐标,且 heatmap.max() 小于阈值 δ
7:从当前图像 I 中找到可能关联的目标
8:基于可能关联的目标进行定位
9:不存在目标 s 的坐标,且 heatmap.max() 大于阈值 δ,将图像 I 分成一系列子图像,并递归调用视觉搜索模型。
10,11,12,13,14:从队列 q 中返回对应的搜索结果。
图像切分逻辑如下图 Figure 5 所示,其会保证图像的比例,然后多级递归切分:
作者从 SA-1B 数据集(Meta 分割一切模型 SAM 一起发布的数据集)中选择了 191 个高分辨率图像,平均分辨率为 2246x1582。Benchmark 中包含两个子任务:
属性识别(attribute recognition):包含 115 个图像,要求模型识别特定类型的属性,比如颜色、材料等。
关系推理(relationship reasoning):包含 76 个图像,要求模型识别图像中两个物体的空间关系。
如下图 Figure 8 所示为评估集中的一些实例,第一行为属性识别,第二行为关系推理:
如下图 Table 1 所示,使用 Vicuna-7B 模型作为语言模型,人类水平接近满分,而之前的 LMM 模型评分都很低,甚至接近随机水平,而本文的 SEAL 相比之前的模型大幅领先,甚至大幅超越 GPT-4V:
作者验证了各种组件的影响,可见 VWM 和 V* 搜索算法都很有帮助:
作者同时评估了不同搜索算法的搜索步长,提出的 LLM 引导的视觉搜索算法使用了最少的步长,相应的效率也更高:
如下图 Table 5 所示,作者结合多种多模态基准对 LLaVA 和本文的 SEAL 进行了评估,SEAL 在 V* Bench 和 MME、PoPE 上都大幅领先,在 MMBench 和 SEED-Bench(Img)上相当,但是在 MM-Vet 和 LLaVAw 上差距较大,这可能因为它们的规模较小或者使用基于 GPT4 的评估方法,可能带来不确定性和潜在的偏差:
作者论文中提供的评估对比比较少,此外很多模型效果也已经超过 LLaVA,因此我们进一步结合之前的数据进行对比,可见模型在很多任务上还有进一步提升的空间(也可能和训练数据有关):
如下图为 POPE 指标,很多任务使用更大模型也获得了很大的提升,比如 SPHINX:
https://api.ibos.cn/v4/weapparticle/accesswximg?aid=78681&url=aHR0cHM6Ly9hcnhpdi5vcmcvYWJzLzIzMTIuMTQxMzU=
https://api.ibos.cn/v4/weapparticle/accesswximg?aid=78681&url=aHR0cHM6Ly9naXRodWIuY29tL1RlbmNlbnRBUkMvUGhvdG9NYWtlci90cmVlL21haW4=
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-03-30
2024-04-26
2024-05-10
2024-04-12
2024-05-28
2024-04-25
2024-05-14
2024-07-18
2024-08-13
2024-04-26