中山大学 & 华为诺亚实验室提出 HiRes-LLaVA 框架,解决切片的高分辨率LVLM引起的输入碎片化问题 !
共 31711字,需浏览 64分钟
·
2024-07-21 09:00
备注好友:方向-学校/公司-姓名/昵称
【AIGC 先锋科技】交流群
高分辨率输入使大型视觉-语言模型(LVLMs)能够辨别更精细的视觉细节,增强了它们的理解能力。
为了减少由高分辨率输入引起的训练和计算成本,一个有前景的方向是使用滑动窗口将输入切成均匀的块,每个块与训练有素的视觉编码器的输入大小相匹配。尽管这种切分策略高效,但它导致了原始输入的碎片化,即,在块之间的上下文信息和空间几何的连续性丢失,这不利于跨块上下文感知和位置特定任务的表现。
为了克服这些缺点,作者引入了HiRes-LLaVA,这是一个新颖的框架,旨在高效处理任何大小的高分辨率输入,而不改变原始的上下文和几何信息。
HiRes-LLaVA包括两个创新组件:
(i)一个SliceRestore Adapter ,它将切分的块恢复到它们原始的形式,通过下采样-上采样和卷积层高效提取全局和局部特征;
(ii)一个Self-Mining Sampler,基于视觉标记自身压缩视觉标记,在减少训练开销的同时保留原始上下文和位置信息。
为了评估处理上下文碎片化的能力,作者构建了一个新的基准测试EntityGrid-QA,它包括边缘相关和位置相关的任务。
作者的综合实验表明,HiRes-LLaVA在现有公开基准测试和EntityGrid-QA上的表现均优于其他方法,特别是在面向文档的任务上,为处理高分辨率输入设立了新的标准。
1 Introduction
近期在大型视觉-语言模型(LVLMs)方面的进展显著提高了视觉-语言任务的能力,促进了理解、推理和交互的改进。早期的LVLMs[34; 82; 44]以低分辨率处理图像,通常是 ,这限制了它们捕捉详细视觉信息的能力。这种局限性常常导致对图像中物体及其上下文关系的识别不准确[17; 41]。
提高LVLMs的高分辨率能力面临重大挑战,即训练视觉编码器以处理高分辨率输入需要大量的计算资源,同时还要应对任意图像尺寸的问题[3; 11]。近期进展引入了资源高效的方法来提高LVLMs的输入分辨率。一种有效的策略是使用滑动窗口技术[41; 73; 49]将高分辨率图像分割成较小的块。然后,这些块由在低分辨率输入上训练的视觉编码器处理,在保持计算效率的同时增强细节捕捉。
尽管这种方法有效,但切片方法会导致原始输入的碎片化,引发如下问题:
(i) 上下文破坏。切片整个图像可能会改变原始上下文,特别是当物体位于两个切片边缘时;
(ii) 空间几何损伤。切片破坏了固有的空间几何,使依赖于位置关系的任务复杂化,例如识别特定区域的相邻物体;细节见图1(a)。此外,现有方法[73, 49]通常使用如Q-Former[35]的采样器来减少由高分辨率输入引起的长上下文。然而,这种Q-Former式的采样器使用固定数量的 Query 通过交叉注意力机制压缩和捕捉视觉特征,存在诸如缺少位置信息和训练开销高等问题。
在本文中,作者提出了HiRes-LLaVA,一种将高分辨率数据高效集成到LVLMs中的方法,而不会破坏原始上下文和空间几何。如图1(b)所示,作者的方法即使物体位于不同的切片上也能保持一致的准确性。HiRes-LLaVA使用一个新的SliceRestore Adapter 将切片的低分辨率块特征组合成高分辨率特征图,保持了图像的完整上下文和信息。这个图通过双重并行融合模块处理,捕捉全局和局部信息。增强后的高分辨率图再被分割回小块。SliceRestore Adapter 是一个轻量级模块,可以无缝集成到低分辨率视觉编码器的任何注意力层中,实现无需改变预训练参数的高效微调。此外,作者引入了一种自挖掘采样器,使用平均池化的切片块作为 Query 。与基于固定可学习 Query 的方法不同,作者的自挖掘采样器在优化高效的同时保留了原始上下文和位置信息。
为了评估作者提出的方法,除了11个公开基准测试外,作者还引入了一个名为EntityGrid-QA的新基准测试。这个基准测试特别设计包括了识别、位置和计数任务,这对于进一步评估VLMs处理由切片方法引起的上下文碎片化能力至关重要。综合实验表明,作者的HiRes-LLaVA不仅在现有的公开基准测试上取得了优越性能,而且在新建的EntityGrid-QA上显著优于现有最先进的LVLMs。
2 Related Works
Large Vision-Language Model
利用预训练的大型语言模型(LLM),如LLaMA[71]和Vicuna[13],大型视觉-语言模型(LVLM)在包括通用图像/视频理解、医疗分析[34]和自动驾驶[17, 74]在内的各个领域都展示了重大进展。这些模型主要通过工具如CLIP-ViT[18, 61]进行预训练,通过对比学习与大量的图像-文本对[63]来对齐视觉嵌入与语言,主要将视觉特征编码为可以被LLM理解的形式。随后,视觉嵌入通过视觉投影仪转换以匹配LLM的维度,分为:(i) 学习的 Query ,如perceiver重采样器[1]或Q-Former[35; 82],它们使用固定 Query 通过交叉注意力捕捉特征,以及(ii) MLP模块,以LLaVA系列[46]为例。最近的工作探索了将来自DINO-V2[60]和SAM[28]等源的多样化视觉特征与CLIP-ViT结合,以丰富视觉表示[62; 42]。然而,依赖于需要固定分辨率图像(例如, )的CLIP-ViT,限制了处理更高分辨率或不同宽高比的能力,因此在细粒度任务中限制了性能。
High Resolution Large Vision-Language Model
为了从高分辨率输入中辨别细微的视觉细节,一种直观的方法是将图像分割成块,并使用线性层进行投射,将这些块视为一个序列输入到大型视觉语言模型(LVLMs)[4; 32]中。虽然这种方法省去了图像编码器的需要,但它常常导致视觉表示不充分,从而增加了训练成本,性能也不理想。另外,如Qwen-VL [3]这样的上采样调整方法适配了视觉 Transformer (ViT)的位置嵌入,从 调整到 ,并包含一个额外的训练阶段以微调ViT。然而,这种适配可能会改变来自CLIP-ViT [61]的原始视觉位置编码,潜在地降低视觉表示的质量。双分支方法引入了一个高分辨率分支,使用轻量级的卷积网络来处理高分辨率输入,但这需要额外的训练数据和参数[22; 17; 52; 38]。基于切片的方法提供了一个折中方案,通过使用切片窗口将高分辨率图像分割成与预训练视觉编码器输入大小相匹配的块,在保持参数使用效率和训练数据的同时,仍然实现了具有竞争力的性能。然而,它们存在“上下文碎片化”的问题,即块之间的上下文信息的连续性被破坏,影响到需要跨块上下文和空间关系的任务。在本文中,作者提出了HiRes-LLaVA,一种新颖的技术,旨在无缝地将全局-局部高分辨率细节整合到LVLMs中,同时不破坏原始上下文或空间几何,有效地解决了上下文碎片化的问题。
3 Method
HiRes-LLaVA的总体框架如图2(a)所示。首先,原始图像被调整大小并填充到低分辨率(通常是 ),然后由预训练的CLIP-ViT[61]处理,产生全局特征。为了捕捉高分辨率细节,图像被分割成与CLIP-ViT输入大小相匹配的切片。这些切片由提出的SliceRestore Adapter (第3.1节)共享处理,产生切片特征。切片特征随后被送入共享的自挖掘采样器以减少标记长度,从而得到压缩特征。这些压缩特征连同文本指令嵌入一起被连接,并送入LLM以生成响应。重要的是,作者保持视觉编码器(CLIP-ViT)和LLM参数冻结,只训练提出的SliceRestore Adapter 、自挖掘采样器和LoRA。
SliceRestore Adapter
如图2(b)所示,SliceRestore Adapter 被集成到CLIP-ViT的自我注意力层中。作者将ViT在第 层的切片特征表示为 ,其中 , 是切片的数量, 是标记长度, 是特征维度。每个切片特征都由自我注意力层单独处理, ,这可能会破坏上下文并扰乱图像几何(见图1(a))。尽管低分辨率输入包含整体信息,但切片中的小物体仍然难以感知。一个简单的方法是将切片特征进行连接以进行自注意力处理,但这会导致二次计算成本。
在本文中,作者提出了SliceRestore Adapter 以有效地从高分辨率输入捕获完整信息。这可以表述为:
其中:
SRA表示作者提出的SliceRestore Adapter 。
SliceRestore Adapter 有三个主要步骤,从切片特征中恢复完整的语义:
1. 合并:首先将每个切片特征 Reshape 为 。这些 Reshape 的切片特征 然后被合并以形成原始输入的特征 。 和 分别表示切片的行数和列数。 等于 。
2. 捕获:作者使用两个融合模块从 中提取局部和全局信息。局部融合模块使用单个层深度卷积与 Kernel 以有效地捕捉局部细节并保留图像相关偏差。全局融合模块采用自注意力来捕获全局上下文。考虑到自注意力的二次计算成本,作者首先将 下采样到较小的尺寸, ($W_{1}<w$和$h_{1}<h$),执行自注意力,然后再上采样回原始尺寸。通过局部和全局融合模块输出的逐元素相加,获得增强的全特征$\overline{\mathbf{f}}$:< p=""></w$和$h_{1}<h$),执行自注意力,然后再上采样回原始尺寸。通过局部和全局融合模块输出的逐元素相加,获得增强的全特征$\overline{\mathbf{f}}$:<>
3. 切片:最后,增强的全特征 被切回原始的切片格式,得到 ,其中 。
这个过程允许模型在保持计算效率的同时,从高分辨率输入捕获完整的语义。
Self-Mining Sampler
高分辨率图像需要处理显著更多的视觉标记,这构成了计算负载的重要组成部分。现有的解决方案,如Q-Former [35],利用固定数量的 Query 通过交叉注意力机制压缩并捕获视觉特征。尽管这种方法在计算上经济高效地捕捉视觉信息,而不管图像分辨率如何,但它存在几个局限性:**(i) 缺乏位置信息。学到的 Query 失去了位置信息,这在需要空间关系和精确定位的任务中降低了性能。(ii) 高训练开销。**训练类似Q-Former的重采样器需要更多的数据和更长的训练时间将视觉特征转换为可学习的 Query ,这在数据稀缺的领域提出了挑战。
为了解决这些问题,作者提出了一个自挖掘采样器,如图2(c)所示。具体来说,作者将视觉编码器(例如,CLIP-ViT)的一维输出视觉标记 Reshape 为二维形式 ,其中 。在应用大小为 的average-pooling之后,作者得到 ,其中$W_{2}<w$且$h_{2}<h$。接下来,作者使用交叉注意力计算最终的压缩标记,cross-attn$(\mathbf{p}^{c},\mathbf{p})$,其中$\mathbf{p}^{c}$作为 query="" ,$\mathbf{p}$作为键和值。与基于固定可学习="" 的方法相比,作者的自挖掘采样器基于自身压缩视觉标记,在减少训练开销的同时保留了原始上下文和位置信息。<="" p="">
Dynamic High Resolution Slicing
预训练的视觉编码器,在监督学习、自监督学习和视觉-语言预训练中广泛应用,主要通过裁剪或填充将图像 Reshape 为正方形。然而,这种方法在处理现实世界中普遍存在的非方形图像时存在困难,尤其是在保留具有极端宽高比的图像细节或信息时会失败。当前大型视觉-语言模型处理高分辨率图像输入的解决方案,是将这些图像根据预定义的宽高比候选切片成与预训练模型兼容的切片,这并不能有效地适应现实世界图像的多样性[45; 76; 41]。
相比之下,HiRes-LLaVA 无需预定义宽高比候选,动态地切片高分辨率图像,从而能够处理任何宽高比的图像输入。作者设定了一个最大切片数 ,允许图像通过计算基于预训练视觉编码器中的基础分辨率的必要 行和 列来自动选择最佳边界框:
其中 是预训练视觉编码器中的基础分辨率。 表示 的向上取整函数,如果 是小数,将其四舍五入到大于 的最小整数。
这种方法适应图像的宽高比,仅通过将 和 缩放 来四倍增加切片数量(如果 " " 不超过 ),确保在不压倒模型的情况下保留细节。作者输入到语言模型的内容包括一个低分辨率概览和多个高分辨率切片,这些切片通过三种类型的分隔符来保持清晰性:(1) 低分辨率图像与高分辨率切片之间;(2) 高分辨率切片之间;(3) 每个切片行末尾。
EntityGrid-QA Benchmark
图3:作者提出的EntityGrid-QA基准构建过程。该过程分为三个步骤:(a)实体采样。从预定义的实体集中选择一个或两个实体;(b)图像生成。将选定的实体放置在空白图像的九个预定义位置中采样的一个位置上,作者可以获得生成的图像。注意,(b)中的虚线和实线仅用于说明,不会呈现给模型。(c)QA对生成。基于生成的图像、实体类别和位置,作者可以自动生成问题-答案对(QAs)。作者总共构建了三个不同的任务,即识别、位置和计数。
现有的基准,特别是与文档相关的数据集,可以评估LVLMs的细粒度理解。然而,这些基准不足以评估处理碎片化输入的能力,因为筛选与切片相关的问题既费时又费力。因此,作者引入了一个名为EntityGrid-QA的新基准,以更好地评估LVLMs处理碎片化的能力。【构建过程】。如图3所示,EntityGrid-QA的构建过程主要包括三个步骤:实体采样、图像生成和QA对生成。每个步骤如下:
(a)实体采样。作者首先构建一个实体集,包括各种类型,如文本(例如,“苹果”)、数字(例如,“0.596”)、物体(例如,泰迪熊)、形状(例如,三角形、圆形)和相对位置(例如,交通灯、停车标志),如图3 (a)所示。然后,作者从预定义的实体集中选择几个实体,可以表示为 ,其中 是第 个实体, 是选择的实体总数。
(b) 图像生成。选定的实体集 在空白图像 内部通过3x3网格布局放置在九个预定义的位置(标记为1至9),如图3 (b)所示。空白图像的分辨率设置为 ,其中 是现有LVLMs的基础分辨率,例如 。这样,每个 在推理过程中会被划分为四个切片,每个切片都与训练良好的视觉编码器的输入大小相匹配,无需进行额外的操作,例如调整大小和填充。请注意,作者的HiRes-LLaVA可以处理任意数量的切片,然而一些现有的LVLMs,即LLaVA-1.6 [44],只能接收四个切片作为输入。因此,为了公平比较,作者只生成固定分辨率 的图像。作者将选定的位置表示为 ,其中 是 的位置。
(c) QA对生成。为了更全面的评估,作者定义了三个不同的任务,即识别、位置和计数,每个任务都有特定的提问提示,即 , 和 ,如下所示: "图片中的物体是什么?", "在图片中, 在 的哪里?" 和 "图片中有多少个 ?"。基于生成的图像 以及其对应的实体 和问题提示 ,作者可以自动生成问题,答案可以通过位置 获取,例如,两个物体 和 的相对位置可以通过它们的位置 和 来计算。如图3 (c)所示,生成的问答对采用多项选择题的格式。作者基准的例子在附录中提供。
评估指标。为了评估处理碎片化的能力,作者引入了一个新指标,衡量位于边缘位置( )的实体与其他位置( )之间的精确度差异,定义如下:
其中 是位于位置 的实体在三个任务上的平均准确度, 是集合中的元素数量。
4 Experiment
Implementation Details
作者使用CLIP-ViT-L/14-224px和CLIP-ViT-L/14-336px作为视觉编码器,Vicuna-7B-v1.5作为大型语言模型(LLM)。作者遵循LLaVA [47]的两阶段训练方法,包括预训练阶段和指令调整阶段。在预训练阶段,仅可训练自我挖掘采样器。批处理大小为256,学习率为1e-3。在指令调整阶段,训练SliceRestore Adapter 、自我挖掘采样器以及LLM中的LoRA参数[23]。四个SliceRestore Adapter 应用于视觉编码器的第19至22层。指令调整阶段的批处理大小为128。LoRA的秩为128,alpha值为256。LoRA参数的学习率为2e-4,其余可训练参数,包括SliceRestore Adapter ,的学习率为2e-5。作者采用AdamW [50]作为优化器, 和 ,以稳定指令调整阶段的训练。在这两个阶段中,学习率在最初的0.03个周期内进行预热,然后在剩余的训练中通过余弦调度器进行调整。在训练过程中不应用任何权重衰减。最大分片数 设置为16。所有模型在64个NVIDIA V100 GPU上以FP16精度训练两天。关于训练数据,作者收集公共数据集以增强原始LLaVA数据集。在预训练阶段,作者收集了1.6M数据,包括1.2M标题数据和0.4M OCR数据。为了构建一个覆盖广泛任务的大型指令调整数据集,作者还从开源数据集中收集了1.5M数据。更多细节请参考附录。
Experimental Setting
作者介绍了实验设置,包括基准测试和所比较的LVLM模型。
基准测试。 作者采用了11个流行的基准测试来评估作者的模型在五个与文档相关的VQA基准测试上的表现,包括VQA-text[67],ChartQA测试集[55],DocVQA测试集[57],InfoVQA测试集[56],STVQA测试集[5],两个通用VQA基准[26;51],包括AI2D[26],ScienceQA[51],以及四个综合基准,包括LLaVA-in-the-wild(LLaVA-W)[47],MMbench[48],POPE[40]和HallusionBench[21]。
LVLM模型。 作者将作者的模型与SOTA LVLM模型进行了比较。(1)通用 Baseline ,即InstructBLIP[15],Owen-VL[3],LLaVA-1.5[44],mPLUG-Owl2[77],Monkey[41],Mini-Gemini[39],LLaVA-UHD[73]和LLaVA-NeXT[45],作为代表性的通用 Baseline 。(2)文档LVLM,即Donut[27],DocPedia[19],UReader[76],mPLUG-Docowl[75],TextMonkey[49]。
State-of-the-art Comparison
通用基准测试. 表1报告了作者的方法与最先进的方法在11个基准测试上的性能比较。出人意料的是,作者利用LoRA微调[23]的方法超越了需要大量数据和广泛的全量微调的成熟LVLMs,突显了作者模型的效率和有效性。值得注意的是,尽管作者的模型和Monkey[41]都采用了LoRA,但Monkey是从预训练的Qwen模型[2]初始化的,而作者的模型是
从零开始训练的,这进一步证明了作者模型的效率。此外,作者的方法在与专注于文档的LVLMs如TextMonkey[49]的竞争性表现中证明了其有效管理文档相关任务的能力。
图4显示了由LLaVA-1.6[44],Monkey[41]和作者的方法生成的结果的视觉比较,突显了作者卓越的性能,尤其是在感兴趣区域跨越多个切片时。例如,图4(b)中的数字 被分成两个切片,导致Monkey将其误识别为 。此外,切片操作将年份和百分比值分隔到不同的切片中,导致LLaVA-1.6由于缺乏全局信息而错误地将2017年的百分比与2014年关联起来。作者的方法,通过SliceRestore Adapter 捕捉完整的全局高分辨率信息,正确预测了答案。
EntityGrid-QA. 为了评估处理输入碎片化的能力,作者将四种基于切片的SOTA LVLMs与作者的HiRes-LLaVA进行了比较,并将结果展示在表2中。
从表2中,作者观察到两个关键发现:(i)作者的方法在处理 位置实体的任务上表现出竞争力。例如,作者的方法在准确度 上得分为 ,在Accuracy 上得分为 ,而之前的最佳SOTA得分分别为 和 。(ii)作者的方法在处理 位置的实体时显著优于SOTAs。例如,先前的SOTA,Xcomposer[80],在Accuracy 和Accuracy 之间显示出显著的差异,分别为 和 。相比之下,作者的方法实现了较小的差异,在accuracy 上为 ,在Accuracy 上为 。此外,Discrepancy 和Discrepancy 的值进一步反映了作者方法在边缘和中心情况下的稳定性能,超越了现有的SOTAs。总之,作者的HiRes-LLaVA在处理输入碎片化的同时,在中心情况下保持了有竞争力的性能。
Ablation Study
在本节中,作者进行了消融研究以评估作者所提出模块的效果。在消融研究中,作者在指令调整阶段对LLaVA 1.2M数据[44]进行了实验,并额外增加了79K面向文档的数据,即DocVQA [57],ChartQA [55]和InfoVQA [56]。
不同提出模块的效果。 作者对HiRes-LLaVA的两个主要组成部分进行了消融,具体是SliceRestore Adapter (SRA)和自挖掘采样器(SMS),如表3所示。作者的发现如下:与其它采样器相比,作者的SMS显示出更优越的性能。自挖掘采样器中不同核尺寸的消融研究。 在此处,作者对自挖掘采样器进行了消融研究。在表4中,作者比较了不同核尺寸的平均池化性能,即第3.2节中的 。结果显示,随着核尺寸的增加,即视觉标记减少,性能会下降,因为信息丢失。
数据效率分析。 作者通过以下比例对训练数据混合进行子采样来评估作者方法HiRes-LLaVA的数据效率:20%,60%,和100%。图5(a)的结果显示,使用整个数据集可以达到最佳性能。值得注意的是,即使只有60%的数据,性能仍保持在全数据集水平的90%以上,突显了提高数据效率的潜力。此外,作者将自挖掘采样器的效率与LVLMs中常用的Q-former进行了比较。如图5(b)所示,即使只有20%的数据,作者的方法也能与Q-former竞争,证明了其有效性和效率。
5 Conclusion
在本文中,作者介绍了HiRes-LLaVA,这是一个大型视觉-语言模型(LVLM),旨在有效地解决当前基于切片的高分辨率LVLM引起的输入碎片化问题。
为了评估这一能力,作者引入了一个新的基准测试,EntityGrid-QA,它包括识别、位置和计数任务。
在11个流行的现有基准测试和EntityGrid-QA上的综合实验结果表明了HiRes-LLaVA的有效性。作者提供了分析评估和可视化结果,以更深入地理解模型的性能。局限性。 作者构建的EntityGrid-QA中的样本过于简单,缺乏复杂的背景,且实体类别和任务有限。
将来,作者旨在创建一个更多样化的数据集,以更好地评估LVLM在处理碎片化输入方面的性能。
参考
[1].HiRes-LLaVA: Restoring Fragmentation Input in High-Resolution Large Vision-Language Models.