虽然Ferret无缝地将区域理解整合到大型语言模型(LLM)中,以增强其参照和定位能力,但它存在一定的局限性:受到预训练的固定视觉编码器的限制,并且在更广泛的任务上表现不佳。在这项工作中,作者揭开了Ferret-v2的面纱,这是对Ferret的重要升级,具有三个关键设计。
任意分辨率定位和参照:一种灵活的方法,轻松处理更高图像分辨率,提高了模型处理和理解图像细节的能力。
多粒度视觉编码:通过整合额外的DINOv2编码器,模型能够学习到更好的全局和细粒度视觉信息的多样化底层上下文。
三阶段训练范式:除了图像-标题对齐外,还提出了一个额外阶段,用于在最终指令调整之前进行高分辨率密集对齐。实验表明,由于Ferret-v2在分辨率扩展和细粒度视觉处理方面的显著改进,它相较于Ferret和其他最先进的方法提供了实质性的提升。
在AI近期的发展中越来越关键,作为开发多功能通用助手的基础元素。然而,这些方法建立在粗糙的图像级对齐上,这在细粒度理解(如区域描述和推理)方面存在不足。为此,Peng等人(2023年);Chen等人(2023年);You等人(2023年)整合了定位能力,并在对话中解锁了参照能力,即用户可以指向物体或区域作为输入,模型以边界框的空间坐标回应。这一进步使MLLMs能够执行需要详细视觉理解的任务,是该领域的重要进展。
尽管定位和参照MLLMs表现出强大的性能,但仍有许多挑战尚未解决。例如,上述方法使用CLIP(Jiang等人,2023年)或其变体(Sun等人,2023年)作为视觉编码器。由于预训练的图像编码器通常采用相对较低的图像分辨率,例如224x224,这严重阻碍了MLLMs的细粒度视觉理解。尽管一些特定任务的MLLMs(Lv等人,2023年;Hong等人,2023年;Ye等人,2023年)已经探索了放大处理的策略,但这些方法因其各自领域的过度复杂性而受到限制,并且无法在传统的MLLM基准测试中表现良好。因此,这种情况引发了一个关键问题:作者如何增强MLLMs的能力,使其在详细视觉相关任务上表现出色,同时不损害其全局推理的专业能力?
为了回答这个问题,作者从三个方面探讨了潜力,即更高分辨率的扩展、多粒度视觉编码和模型训练方法。作者选择Ferrer(You等人,2023年)作为健壮的 Baseline ,因为它有两个优点:(i)指称和定位之间的相互受益,以及(ii)更灵活的指称能力(笔画、涂鸦或复杂多边形)。首先,作者对更高分辨率的扩展进行了仔细的研究,并评估了两种主流方法,“直接上采样”(Wang等人,2023年;Bai等人,2023年)和“任意分辨率”(Gao等人,2024年;Liu等人,2024年)在(i)视觉细节分析(ROC(You等人,2023年)& REC(Kazemzadeh等人,2014年)),(ii)分辨率关键的OCR任务(TextVQA(Singh等人,2019年)),以及(iii)推理MLLM基准测试(Ferret-Bench(You等人,2023年))上的性能。作者的分析表明,“任意分辨率”方法在利用图像细节的同时,保留预训练期间获得的知识以实现有效扩展,优于“直接上采样”。这使“任意分辨率”成为需要高级视觉理解任务的上佳策略。
通过采用“任意分辨率”方法,将图像划分为子块以供CLIP编码器处理,作者观察到将全局上下文和高分辨率块同时纳入视觉嵌入引入了细微的复杂性。这是因为这两种类型的图像表现出不同的特征。为了缓解这一差距,作者提出了DINov2编码器(Oquab等人,2023年)的整合。DINov2以其在描绘局部物体细节方面的专长而闻名,有望增强模型对细粒度方面的感知能力。此外,作者为每个视觉编码器使用单独的MLP投影仪,以促进对全局和细粒度视觉信息所呈现的不同上下文的更深入探索,旨在实现更全面的理解和表示。
此外,模型战略性地分三个阶段进行训练,以增强分辨率处理能力,同时以“从粗到细”的方式保持视觉语言的对齐。最初,模型在低分辨率图像上进行训练,以实现有效的图像-标题对齐。随后,作者认识到许多下游任务需要更准确和彻底的 spatial 理解,而不仅仅是广泛的语义,因此作者专门设计了第二阶段,以将图像中每一个可能的局部目标与详细的语义进行对齐,使用密集的指称和检测数据。最后,模型进行视觉指令微调,以更好地解释用户意图。
本文的贡献总结如下:
- 作者对更高分辨率的缩放进行了彻底分析,发现“任意分辨率”方法一致优于“直接上采样”。
- 基于“任意分辨率”,作者进一步提出了多粒度视觉编码,其中低分辨率图像通过CLIP进行编码,而高分辨率子块通过DINov2进行编码。这种策略促进了对全局和细粒度视觉语境的更深理解。
- Ferret-v2采用三阶段训练过程,其中在最终指令调整之前,提出了一个针对高分辨率密集对齐的附加阶段。在广泛的任务上进行的大量实验,包括指代和定位、视觉问答以及现代MLLM基准测试,都证明了Ferret-v2相对于现有工作的优越性(见图1)。
2 Background
粗粒度多模态LLM。受到LLM(OpenAI, 2022; Chowdhery et al., 2022; Touvron et al., 2023a,b; Zhang et al., 2022b; Wei et al., 2021)展示的高级推理能力的启发,人们越来越有兴趣将这些技能扩展到视觉理解,从而出现了多模态LLM。例如,Flamingo(Alayrac et al., 2022)利用跨注意力机制增强视觉上下文意识,使更复杂的上下文感知视觉学习成为可能。像LLaVA(Liu et al., 2023b,a)和MiniGPT-4(Zhu et al., 2023)这样的模型专注于在应用指令调整之前同步图像和文本特征。此外,BLIP-2(Li et al., 2023d)和mPLUG-OWL(Ye et al., 2023)提供了利用视觉编码器整合图像特征的方法,然后将其与LLM架构中的文本嵌入结合。然而,尽管它们取得了进展,包括最新的GPT-4V(OpenAI, 2023)在内的这些MLLM仍然局限于生成文本输出,这限制了它们在需要丰富的区域级视觉感知的场景中的应用。
区域级MLLM。在最近的研究中,人们越来越关注基础模型与密集视觉感知任务相结合的趋同性。例如,Li et al.(2023c); Zou et al.(2023); Koh et al.(2023)利用预训练的CLIP基础模型实现开放世界检测,但它们无法处理复杂的指令。与之不同,VisionLLM(Wang et al., 2023c)通过利用LLM的指令调整,结合了多种以视觉为中心的任务。然而,它可能在充分利用LLM处理复杂推理任务方面存在不足。在平行的研究努力中,Kosmos-2(Peng et al., 2023),Qwen-VL(Bai et al., 2023)和DetGPT(Pi et al., 2023)利用了定位能力和开放词汇检测器,实现了用户引导的检测。此外,GPT4RoI(Zhang et al., 2023b),Shikra(Chen et al., 2023b),LLaVA-G(Zhang et al., 2023a),和Ferret(You et al., 2023)引入了空间框作为输入,并使用区域文本对训练模型,提供了区域图像理解。然而,所有上述方法都使用了低分辨率的图像编码器,从而限制了感知更详细分析的能力。
3 Methods
作者首先在3.1节回顾Ferret的设计原则,并在3.2节介绍对更高分辨率缩放的研究。随后,在3.3节中,作者深入探讨模型架构的进展,包括在任何分辨率下进行定位和参照的技术,以及具有多粒度 Level 的视觉编码。最后,在3.4节中,作者介绍了一种改进的训练方法,旨在提高模型在全局和局部元素对齐方面的熟练度。
A Revisit of Ferret
近期,人们越来越关注模型融合(Zhang et al., 2023b; Chen et al., 2023b; Peng et al., 2023; Lai et al., 2023; Zhao et al., 2023; You et al., 2023)与视觉感知相关任务。Ferret(You et al., 2023)通过在多样化形状和细节 Level 的自然图像中擅长空间指代和定位,与其他多语言学习模型区分开来。
为了指代各种类型的区域,如点、框或自由形状,Ferret开发了一种混合区域表示方法,每个区域由离散坐标标记和连续区域特征的组合来指代,如果有的话,还包括区域名称。坐标被归一化到0到999的范围,点或形状分别由([])或([])表示。连续区域特征通过一个空间感知视觉采样器提取,该采样器采样并聚集该区域的特征。最终,一个区域由“(region_name) (coordinates) (continuous_fea)”表示,并输入模型进行指代,例如,“在区域100, 50, 200, 300中是什么?”。为了实现定位,Ferret在文本回复中相应区域/名词后立即生成框坐标,例如,“在图中有一个狗[100, 150, 300, 200]”。
Ferret使用预训练的视觉编码器(CLIP-ViT-L/14)(Radford et al., 2021)编码图像,并将图像特征作为附加标记与文本输入(如果有混合区域表示)一起输入到解码器-only语言模型(Vicuna(Zheng et al., 2023))。训练包含两个阶段,即图像-标题对齐和指令调优,使用下一个标记预测损失更新。
尽管Ferret具有灵活性和卓越的性能,但其受到预训练编码器固定分辨率的限制,这限制了它充分利用增强区域指代和定位精度优势的能力。受此启发,作者最初深入研究了最有效的高分辨率扩展方法。随后,作者揭开了Ferret-v2的面纱,这是Ferret系列的一个重大扩展,旨在探讨更广泛和包容的多模态学习框架。
Analysis of Higher Resolution Scaling
为了进一步分析,作者使用不同的高分辨率缩放方法进行了一系列对照实验,即“直接上采样”和“任意分辨率”(Liu等人,2024年)。整体架构和训练过程遵循Ferret (You等人,2023年)的做法,但将线性层改为两层多层感知机(MLP)。此外,为了使模型更好地处理简短回答并在更多基准测试中表现,作者遵循LLaVA 1.5 (Liu等人,2023b)的做法,并在现有的GRIT (You等人,2023年)中添加了面向任务的VQA (Antol等人,2015年)和OCR数据集,此前Ferret中曾使用过GRIT。为了简化作者的研究,作者选择了4个代表性任务:ROC (LVIS: box),REC (RefCOCOg),TextVQA和Ferret-Bench,并全面衡量训练后模型的能力。
直接上采样 与 任意分辨率。为了实验的统一性,作者选定了一个目标分辨率为4481,这是从336(视觉编码器的预训练分辨率)上采样得到的,两种缩放方法确保了相同的图像标记输入到LLM中。"直接上采样"时,应用位置嵌入插值,并在微调阶段将CLIP编码器调整到这个新分辨率。对于"任意分辨率",作者预先定义了一系列分辨率,最多支持六格2。给定一个图像,作者首先选择最佳分辨率,优先考虑尽可能接近原始图像的宽高比和大小,同时最小化浪费的分辨率,然后将输入图像调整到最佳分辨率并将其分成这些格子。所有图像块都由CLIP编码器分别编码,并将它们特征作为图像标记输入到LLM中。作者使用冻结和非冻结编码器配置训练了模型。如图2所示,作者的比较分析发现,"任意分辨率"缩放方法不仅在所有任务上都比普通Ferret有显著改进,而且还比"直接上采样"方法更胜一筹。另一个有趣的观察是,在"任意分辨率"中,更新视觉编码器总是比冻结它带来更大的提升,而在"直接上采样"中,冻结视觉编码器有时甚至更好(如TextVQA结果所示)。至于这些发现背后的原因,作者假设"直接上采样"迫使ViT适应更高的分辨率,这带来了与预训练数据偏离的更长标记长度。
图2:使用448448图像分辨率的“直接上采样”和“任意分辨率”在ROC、REC、TextVQA和Ferret-Bench中的表现。(表示在微调期间冻结编码器。表示使用336336图像分辨率的普通Ferret)。
支持大规模训练。作者实验中使用的 Baseline 模型基于GitHub仓库中发布的开源代码;作者感谢所有公开其代码的作者,这极大地加快了作者的项目进度。
参考
[1].Serret-v2: An Improved Baseline for Referring and Grounding with Large Language Models .