2B小模型吊打7B大模型 | 突破传统!视觉感知Token让MLLM自主控制视觉输入
分类:AI资讯 浏览量:17
为了利用视觉信息,多模态大语言模型(MLLM)依赖于其视觉编码器的感知过程。视觉感知的完整性和准确性会显著影响空间推理、细粒度理解等任务的精度。然而,MLLM仍然缺乏自主控制自身视觉感知过程的能力,例如选择性地审查图像的特定区域或关注与特定物体类别相关的信息。在这项工作中,作者提出了视觉感知 Token 的概念,旨在赋予MLLM控制其视觉感知过程的机制。作者设计了两种类型的视觉感知 Token ,称为区域选择 Token 和视觉重新编码 Token 。MLLM会像生成文本一样自主生成这些 Token ,并使用它们来触发额外的视觉感知操作。区域选择 Token 明确标识图像中需要进一步感知的特定区域,而视觉重新编码 Token 使用其隐藏状态作为控制信号来指导额外的视觉感知过程。大量实验表明,这些 Token 在处理空间推理、提高细粒度理解等任务方面具有优势。平均而言,引入视觉感知 Token 将2B模型的性能提高了30.9%,使其得分从0.572提升至0.749,甚至比7B参数模型高出20.0%(从0.624)。请查看作者的代码库。 多模态大语言模型(MLLM)依赖于其视觉编码器的感知能力来处理和利用视觉信息。在此过程中,MLLM使用视觉编码器和 Projector 将视觉信息嵌入到语言空间中。视觉感知的质量决定了MLLM能否准确区分图像中的物体[35],能否依靠视觉信息回答问题而不是生成文本幻觉[14],以及能否对空间关系进行精确推理等其他任务。尽管当前的MLLM系统在视觉信息理解方面表现出强大的能力[20, 34, 37, 45],但它们缺乏自主控制其视觉感知过程的能力。相反,这些系统依赖于手动设计的流程来执行特定的图像标注或视觉特征增强[35, 48]。 在这项工作中,作者探索了使MLLM能够自主控制其视觉感知过程的任务。以往,基于MLLM的Agent以及配备了函数调用或工具使用能力的MLLM可以被认为具有控制后续任务的能力。它们将LLM的输出作为后续函数或工具使用的参数。然而,此类控制信息局限于自然语言空间。自然语言空间中控制信号的优势在于其可解释性、清晰的监督信号以及易于构建训练数据。然而,这些信号受到特定格式的限制。此外,自然语言本身具有冗余性,导致效率问题。在这项工作中,作者旨在探索超越自然语言空间的控制信号。然而,作者也要求这些信号能够自然兼容LLM的下一词预测范式。为此,作者提出了“视觉感知 Token ”的概念。这些 Token 被集成到MLLM词汇中,并通过下一词预测由MLLM生成,类似于自然语言生成。这些 Token 不对应自然语言中的特定词语或字符;其主要功能是触发额外的视觉感知过程,并传递这些过程的控制信息。 作者设计了两种类型的视觉感知Token。第一种是区域选择Token,它指示MLLM裁剪输入图像,并使用视觉编码器重新编码与 Query 相关的关键区域。第二种是视觉重新编码Token,它向模型发出信号,将图像输入到(额外的)视觉编码器中,并使用生成的视觉特征来补充原始MLLM的视觉特征。一个 Projector 将额外的视觉特征和视觉重新编码Token的隐藏状态作为输入,从而实现超越仅触发视觉编码器的细粒度控制。在本工作中,作者探索使用额外的DINO模型、SAM模型或模型的原始视觉分支作为视觉编码器。在生成过程中,如果MLLM输出任何视觉感知Token,相应的额外感知过程将被触发,从图像中派生的额外嵌入序列将与原始LLM输入连接。然后LLM以下一个Token预测的形式继续生成响应。图1a说明了包含视觉感知Token的VQA过程。图3提供了更详细的描述,说明MLLM如何生成视觉感知Token以及它们如何被用来控制视觉感知过程。 为训练MLLM使用视觉感知 Token ,作者构建了视觉感知 Token 训练数据集,该数据集包含829k个样本,涵盖四个任务类别:通用视觉问答(General VQA)、细粒度视觉问答(Fine-Grained VQA)、空间推理(Spatial Reasoning)和与文本/OCR相关的视觉问答(Text/OCR-Related VQA)。实验表明,视觉感知 Token 显著增强了MLLM自主控制和优化其视觉感知的能力。 作者的贡献可以总结如下: 3 实验结果展示了VisualPerceptionToken的有效性。在空间推理和细粒度视觉问答等任务上,配备视觉感知 Token 的模型相较于7B Baseline 模型分别实现了3.4.6%和3.2.7%的性能提升。 从技术角度来看,VisualPerceptionToken也可以被视为一种可学习的视觉 Prompt 方法。视觉 Prompt 是视觉模型中的关键技术,尤其是在分割任务中[11, 16, 27]。它使用 Prompt 编码器来解释手动标注,如点和 Mask ,以控制分割粒度并辅助实例选择。最近的进展表明,LVLMs可以在零样本学习的方式下解释圆形等视觉线索和颜色 Mask ,而无需额外的编码器[29, 44]。基于这一点,[41]和[42]利用分割模型生成的 Mask 作为视觉 Prompt ,提升了LVLM在分割和定位任务中的性能。然而,这些方法是 Query 无关的,而VQA任务需要根据 Query 来调整视觉信息。[48]通过使用辅助的VLM来生成针对 Query 的视觉 Prompt ,并将注意力图叠加以引导关注相关区域,解决了这一问题。 基于这些无学习方法的[28],训练MLLM输出重要区域的边界框。然后将图像裁剪并重新输入进行推理,创建了一个“裁剪并重新输入”的CoT过程。与[28]相比,作者的区域选择 Token 设计不依赖于自然语言空间中的边界框信息,而是使用专门的 Token 来指示重要区域的位置。这种设计简化了训练,并缓解了MLLM难以将图像坐标系与自然语言描述的坐标系对齐的问题。 目前,多模态大语言模型(MLLMs)已发展出提取视觉信息的能力,使其不仅可用于基于图像的通用问答和聊天[1, 20, 21, 23, 34, 37, 38, 43],还可应用于3D理解[8, 9, 51]、视频分析[4, 32, 33, 50]以及特定领域的图像问答[15]。 作者的目标是利用视觉感知 Token 进一步提升多模态语言模型(MLLM)的视觉感知能力。除了上述提到的视觉 Prompt 技术外,还有许多其他研究方向致力于提升MLLM的视觉感知性能。 [35] 指出CLIP特征中的模糊性是限制MLLM视觉感知性能的一个因素。为克服这一问题,它建议结合额外的DINOv2[26]编码器来增强MLLM的视觉感知能力。[36]观察到即使能够访问图像数据,MLLM有时也会基于文本信息和幻觉来生成响应,而不是直接利用视觉内容。为解决这一问题,[36]建议添加图像标题以提高视觉感知的准确性。在空间推理的具体任务中,视觉感知专注于推理物体之间的空间关系。为增强模型的推理能力,[3]建议使用场景的深度图作为额外的输入。此外,[8]探索了如何利用多视角场景信息来提高MLLM的视觉感知能力。为将多视角信息转换为合适的输入格式,[8]采用了神经场表示。类似地,为解决2D图像在物理世界推理中的局限性,[2, 51]研究了基于3D数据的MLLM视觉感知方法。在这种情况下,MLLM的输入可以包括额外的3D点云特征[9]和3D场景图特征[6]。 上述方法旨在为多模态语言模型提供更好的视觉输入以增强其视觉感知能力。相比之下,VisualPerceptionToken具有迭代感知的特点,允许多模态语言模型对感知过程提供反馈,进行多轮视觉感知,并对视觉感知过程进行控制。 作者在原始的MLLM词汇表中添加了两种类型的额外视觉感知Token。表1提供了它们关键属性的对比。此前,MLLM只能生成自然语言中的推理和答案。然而,随着视觉感知Token的添加,MLLM现在能够以非自然语言形式输出有价值的信息。这些视觉感知Token主要作为触发器使用;当输出一个视觉感知Token时,MLLM会启动额外的视觉感知过程。 请参见图2了解作者使用的区域选择 Token 与精确边界框之间的关系,并参见图1a了解带有区域选择 Token 的MLLM响应示例。 每个区域选择 Token 组代表1个边界框(bbox)。当MLLM输出一组区域选择 Token 后,原始图像将根据bbox进行裁剪,仅保留与 Query 相关的区域,然后重新输入到MLLM中。这种“裁剪并重新输入”的方法通过直接提高分辨率来增强视觉感知性能。尽管简单,但它已被证明非常有效[20, 28]。例如,在文档理解和OCR相关任务中,包含目标文本的区域通常很小,而原始文档或图像可能很大,甚至可能需要缩小以适应模型输入。在这种情况下,识别与 Query 相关的文本变得非常具有挑战性。然而,在将图像裁剪后,在输入模型之前对相关区域进行放大,可以显著提高任务性能。 给定一个 的图像和一个矩形区域,边界框可以精确描述区域的位置,其中和分别表示区域的左上角和右下角像素的坐标。然而,对于视觉问答(VQA)任务来说,精确的像素坐标并非必需。先前的研究也表明,多模态语言模型(MLLMs)难以解释和生成精确的边界框 [40],尤其是在输入图像分辨率不固定的情况下,这在实践中很常见。在这种情况下,MLLMs 难以从分块图像嵌入中推理出原始图像分辨率,从而难以生成有效的边界框。因此,作者不是使用精确的像素坐标来描述区域的边界框,而是仅描述区域的近似位置。作者将的图像均匀地划分为一个的矩形网格,每个单元格的大小为。每个单元格可以通过行和列索引进行编号,左上角的单元格索引为,右上角的单元格索引为。作者使用包含区域左上角和右下角像素的单元格的索引来描述其位置。在作者的实现中,作者设置。 一组区域选择 Token 包含六个连续的 Token :一个 Region Selection_Start> Token ,两个表示左上单元格索引的 Token ,两个表示右下单元格索引的 Token ,以及一个Region_Selection.End> Token 。为了使模型能更好地区分水平和垂直坐标,作者添加了个 Token ,和,专门用于指示单元格索引。例如,左上单元格表示为,右上单元格表示为。给定一组区域选择 Token ,裁剪区域的左上角和右下角的像素坐标分别计算为和。 基于该设计,区域选择 Token 具有清晰且可解释的语义,指示图像中的特定位置。在训练过程中,区域选择 Token 通过下一个 Token 预测损失进行学习。 请参见图1a,以了解当MLLM响应包含视觉重编码 Token 时的示例。 视觉重编码 Token 触发额外的视觉编码器,例如DINO,对原始图像进行重新编码,所得视觉特征在输入到MLLM之前由 Projector 进行处理。 每一组视觉重新编码 Token 由三个 Token 组成: Token 、 Encoding_Control和-Encode_EndToken 。-Encoding ControlToken 的隐藏状态与视觉特征一起输入到 Projector 中,从而对输入到LLM的最终嵌入序列进行进一步控制。为了使-Encoding_Control能够自由传递任何控制信息,作者在训练过程中不计算-Encoding_ControlToken 的损失。因此,MLLM在Encoding_ControlToken 处的输出可以是任意的。作者仅要求其隐藏状态具有信息性。从这个角度来看,-Encoding_Control不传递清晰的、可解释的语义,并且不能解码为特定的单词或短语。这也是为什么需要额外的Encode_Start和-Encode_EndToken 来 Token-Encoding_Control存在的原因。 Mask 建模。为了提升 Encoding_Control Token 的性能,作者采用了一种类似于 Mask 语言建模的训练方法。在训练过程中,包含视觉重编码 Token 的50%样本会进行额外的 Mask 处理。作者修改了这些样本的注意力 Mask ,确保对话中对应答案的 Token 只能访问 Encoding Control Token ,同时被限制无法访问对应原始问题和图像嵌入的 Token 。 当视觉重编码 Token 触发重编码时,作者使用额外的DINO或SAM模型,或MLLM的原始视觉编码器。在所有情况下,都会添加一个额外的 Projector 来对齐视觉特征与LLM嵌入。该 Projector 是一个交叉注意力模块,将-编码控制 Token 的隐藏状态作为 Key和Value ,将视觉特征作为 Query 。这种设计使得-编码控制 Token 的隐藏状态能够控制最终输入到LLM的视觉特征。图3展示了不同类型的视觉感知 Token 的生成过程示意图。下面,作者将具体描述修改后的MLLM的前向过程。 一个多模态语言模型(MLLM)通常包含一个语言模型(LLM)、一个视觉编码器 以及一个连接和 LLM 的 Projector。对于一个输入图像,由编码的图像特征表示为。通过进行对齐后,生成的图像嵌入可以表示为。这些图像嵌入随后与文本嵌入连接,形成 LLM 的输入。当 LLM 输出区域选择 Token 时,裁剪后的图像会重新通过原始的视觉编码器和 Projector 处理,得到 ,该嵌入会追加到之前的图像和文本嵌入中,作为 LLM 的输入。 令 表示用于重新编码的视觉模型,表示与大语言模型(LLM)之间的 Projector ,表示-Encoding_ControlToken 的隐藏状态,其中是 LLM 的隐藏维度。当 LLM 输出-Encoding_ControlToken 时,原始图像输入到中,生成特征,其中是重新编码图像特征的序列长度,是的隐藏维度。然后将特征和输入到 Projector 中,得到嵌入。接着将 与先前的图像和文本嵌入连接起来,作为 LLM 的输入。 作者基于[20]和[28]中的数据集构建了视觉感知 Token 的训练数据集。作者的训练数据涵盖四种类型的任务:文本/OCR相关视觉问答(VQA)、空间推理、通用视觉问答(VQA)和细粒度视觉问答(VQA)。文本/OCR相关视觉问答和空间推理任务用于创建区域选择 Token 的训练样本。通用视觉问答和细粒度视觉问答任务用于构建视觉重编码 Token 的训练样本。请参见表2了解训练数据集的构成。 带区域选择 Token 的样本。作者使用DocVQA [24]、TextVQA [31]和TextCaps [30]数据集构建用于文本/OCR相关任务的训练数据。DocVQA图像包括书籍和发票等文档照片,而TextVQA和TextCaps图像则展示自然场景,如广告牌和商店招牌。这两个数据集都包含需要根据图像内文本进行推理的问题。对于这些数据集,作者使用在[28]中获得的文本区域的边界框,并将边界框转换为Sec. 3.1中描述的区域选择 Token 序列。空间推理任务的训练数据包括来自VSR [19]、GQA [10]和OpenImage [12]数据集的图像,这些数据集包含现实场景以及关于物体之间空间关系的问题。作者使用[28]中的过滤边界框和问答对,并将边界框转换为相应的区域选择 Token 。 带有视觉重编码 Token 的样本。对于通用视觉问答(VQA)任务,作者使用了LLaVA 1.5 [20]提供的COCO [18]和GQA [10]数据。作者插入了一个额外的MLLM响应,其中包含视觉重编码。 原文与响应之间的Token。对于细粒度视觉问答(Fine-Grained VQA)任务,作者使用了CUB-200-2011 [7]数据集,其中包含200种鸟类的图像以及这些鸟类详细属性的标注。作者使用了[28]中生成的问答对,并在问题与答案之间插入了带有视觉重编码Token(Vision Re-Encoding Tokens)的MLLM响应。 作者使用Qwen2-VL-2B或Qwen2-VL-7B[37]作为基础多模态语言模型(MLLM)并使用DINOv2[26]或SAM[11]作为额外的视觉特征提取器。当在重新编码过程中使用原始视觉分支时,作者用CLIP表示。2B模型进行了完全微调,而7B模型使用LoRA进行微调。第4.2节中描述的数据集用于模型的微调。随后,作者将其性能与原始的Qwen2-VL-2B和Qwen2-VL-7B模型进行了比较。 作者在第4.2节中使用的数据集的测试集上评估了Qwen2-VL-2B-VPT的性能。当有官方测试集划分时,作者直接使用该划分。当没有提供官方测试集划分时,作者随机将数据划分为训练集和测试集,并过滤掉同时出现在两个集合中的任何图像,以防止数据泄露。此外,作者还对未经训练的Flickr [46]、DUDE [13]和POPE [17]数据集进行了评估,以评估VisualPerceptionToken的一般化能力。 遵循既定实践[20, 49],作者使用GPT4o(2024-08-06)评估模型对每个问题的回答与真实标签之间的对齐程度。分数越高表示匹配程度越高,其中0代表无匹配,1代表完美匹配。作者报告了每个数据集的平均匹配分数。评估中使用的 Prompt 包含在补充材料中。 实验结果如表3所示。在整体平均性能方面,带有视觉感知 Token 的2B模型显著优于不带视觉感知 Token 的7B模型。详细分析如下:(1)使用不同视觉编码器进行重新编码的趋势保持一致,带有视觉感知 Token 增强的2B模型优于7B模型。(2)作者实现了两种触发视觉感知 Token 的方法。第一种方法明确要求在整个数据集中使用区域选择或DINO特征 Token ,这与用户可能需要显式控制的现实场景相一致。这对应于表3中的大多数结果。第二种方法允许模型自主决定是否使用感知 Token 以及应用哪种类型的 Token ,这对应于表3中的“自由选择”结果。这种“自由选择”机制实现了比第一种方法更好的性能。(3)视觉感知 Token 在视觉推理和细粒度 VQA任务方面,2B模型相较于7B模型分别提升了0.161和0.207。然而,在一些通用VQA和文本/OCR相关VQA任务的特定数据集上,仅使用视觉感知 Token 的2B模型表现与7B模型相当,并未实现显著的性能提升。(4)视觉感知 Token 在零样本学习场景下依然有效。在评估过程中,作者包含了三个未用于训练的数据集。在这些数据集上,2BVPT模型仍然优于或与7B模型的表现持平。(5)视觉感知 Token 对高分辨率和低分辨率图像均有效。平均而言,当使用低分辨率图像作为输入时,模型相较于7B模型提升了0.094,而在高分辨率图像上,其相较于7B模型的表现提升了0.084。 在图4中,作者展示了证明视觉感知 Token 有效性的示例。视觉感知 Token 对于以下几类 Query 特别有效:第一类涉及在大型文档或图像中定位小区域。这些小区域可以是签名、脚注、页码、产品品牌、标志或衣物上的小文字,这些通常太小,无法通过MLLM直接进行OCR。然而,区域选择 Token 可以精确定位这些区域。第二类针对幻觉问题。例如,当被问及狗旁边是什么时,基于文本的幻觉可能会生成“一个人”这样的答案。区域选择 Token 通过将响应与图像相结合来缓解此类错误。第三类涉及在复杂场景中识别或计数物体。视觉重编码 Token 在这些任务中表现出色,因为对图像进行两次编码可以增强分割和检测。 在本小节中,作者评估了引入区域选择 Token 的必要性,并检验直接使用边界框是否是有效的方法来指示选定区域。此外,作者对粒度参数进行了消融研究。由于实验成本,作者没有在主实验中使用的所有数据集上训练模型进行消融研究。相反,作者专注于使用DocVQA、TextVQA和TextCaps数据集进行训练,并在它们的测试集上进行评估。做出这一选择是因为,对于文本/OCR相关的VQA任务, Query 相关的区域通常较小,而图像通常包含复杂的物体,这些物体会分散MLLM的注意力。因此,区域选择的质量对最终VQA性能有显著影响。作者总共训练了五个模型。前四个模型采用了区域选择 Token ,值分别为4、8、16和32,其中较大的表示图像分区更细的粒度。第五个模型直接使用了边界框,如[28]中所述。结果展示在表4中。 研究结果分为两个方面:(1)区域选择 Token (Region Selection Tokens)被证明比边界框(bounding boxes)更有效。结果所示,使用和的模型显著优于使用边界框作为区域指示器的模型。作者还观察到,当多模态语言模型(MLLMs)使用边界框时,它们生成了许多无效的边界框,例如高度或宽度超出原始图像尺寸的边界框。(2)存在一个最佳粒度。在作者的实验中,通常能获得最佳性能。当过小时,裁剪区域仍然较大,可能仍包含复杂场景或多个物体,无法有效引导模型的注意力。相反,当过大时,需要更多新的 Token ,增加了MLLM的学习难度。此外,过于细粒度的区域描述对视觉问答(VQA)性能没有帮助。这两个因素共同导致了整体性能的下降。 在本小节中,作者验证了视觉重编码 Token 的有效性,并对其进行了消融实验。 为验证视觉重编码 Token 的有效性,表5展示了两种模型变体的性能比较。包含控制信息(表最后一行)的模型将 Token 的隐藏状态作为 Projector 的输入,从而能够对输入到LLM的嵌入进行细粒度控制。相比之下,不包含控制信息的模型(表中间行)在将维度与LLM的嵌入维度对齐后,直接使用重编码的图像特征作为LLM的输入。在本实验中,使用DINO-v2作为额外的视觉编码器。实验结果表明, -Encoding_Control> Token 所携带的额外控制信息显著提升了模型性能。 接下来,作者对-Encoding_Control Token 的数量和 Mask 建模进行消融研究。考虑到计算成本,在这些实验中,作者仅使用CUB鸟类数据集和来自COCO与GQA的LLaVA指令微调数据训练模型。结果展示在表6中,并得出以下结论。首先,将.>的数量从增加到提供了有限的性能提升,而增加到则导致性能下降。这是由于的轻量级设计,使其容易受到过参数化和过拟合的影响。其次,引入建模提高了性能。进一步的实验表明,对中连接{ mathrm { - R e } }>$隐藏状态的线性层进行额外1个epoch的微调进一步提升了性能,证实这些隐藏状态编码了有价值的控制信息。 在这项工作中,作者提出了视觉感知 Token ,以使多模态语言模型能够自主控制其视觉感知过程。多模态语言模型可以像生成自然语言一样生成这些视觉感知 Token ,并使用它们向视觉感知过程传递信息。实验验证了视觉感知 Token 在各种任务中的有效性。 [1]. Introducing Visual Perception Token into Multimodal Large Language Model
精简阅读版本
本文主要解决了什么问题
本文的核心创新是什么
结果相较于以前的方法有哪些提升
局限性总结
深入阅读版本
导读
1. 引言


2. 相关工作
2.1. 视觉 Prompt
2.2. MLLM中的视觉感知
3. 视觉感知 Token

3.1. 区域选择 Token

3.2. 视觉重编码 Token
4. 带有视觉感知 Token 的MLLM
4.1. 架构
4.2. 视觉感知Token的训练数据

5. 实验
5.1 主要结果


5.2. 区域选择 Token 的讨论

5.3. 视觉重编码 Token 讨论


6. 结论
参考

