Instruction-Guided Fusion of Multi-Layer Visual Features in Large Vision-Language Models
目录
Instruction-Guided Fusion of Multi-Layer Visual Features in Large Vision-Language Models
0. 摘要
大规模视觉-语言模型(LVLM)通过整合预训练的视觉编码器和大规模语言模型,在各种多模态任务中取得了显著成功。
然而,当前的 LVLM 主要依赖从视觉编码器最后几层提取的视觉特征,忽略了浅层层次中可用的互补信息。虽然最近的方法尝试在 LVLM 中利用多层视觉特征,但它们往往是任务无关的,未能深入探讨各层视觉特征在特定任务中的依赖关系。
为了解决这些问题,我们系统性地研究了 不同编码器层的视觉特征 对 18 个基准测试(涵盖 6 个任务类别)的贡献。我们的研究结果表明,多层特征在不同任务中提供了互补的优势,但均匀(uniform)融合会导致次优表现。在此基础上,我们提出了 指令引导的视觉聚合器(Instruction-Guided Vision Aggregator),这是一种基于文本指令动态整合多层视觉特征的模块,同时不增加视觉 token 的数量。
大量评估结果表明,我们的方法具有优越的性能。此外,对聚合器行为的深入分析表明,中高层特征在语义丰富的任务中占主导地位,而低层特征在细粒度感知任务中起关键作用。
据我们所知,尚无研究系统性地探讨视觉编码器不同层的特征如何影响 LVLM 在各种任务类别中的性能。为了解决这一问题,我们使用从视觉编码器不同层提取的特征训练了 LVLM。如图 1 所示,视觉特征层的选择直接影响模型对视觉内容的关注,从而塑造其处理任务相关信息的能力。
2. 相关工作
2.2. LVLM 中多层视觉特征的融合
近年来的研究强调了广泛采用的视觉编码器中不同层的独特作用。例如,
- [12] 指出,CLIP-ViT 的中高层在局部化任务中生成最有效的特征,而全局任务主要从最后几层提取的特征中获益。
- 同样,[13] 强调了CLIP-ViT 中特征提取的各层特性:浅层捕捉基本纹理,中间层表征更复杂的模式和物体部分,最深层编码完整的物体。
基于这些见解,一些方法尝试在 LVLM 中整合多层视觉特征。[14] 提出了 DenseConnector,包括三种多层特征融合策略:
- 稀疏标记整合(Sparse Token Integration):对预定义编码器层的特征进行降采样,并在序列维度上将其与最终层的特征拼接。
- 稀疏通道整合(Sparse Channel Integration):将预定义层的特征与最终层的特征在通道维度上拼接。
- 密集通道整合(Dense Channel Integration):对所有层的特征进行分组,在每组内应用降采样,然后在通道维度上拼接。
同时,[15]提出了 MMFuser,通过将深层语义对齐的特征作为 query,选择性地从浅层提取关键信息,丰富整体视觉表示,同时保持语义一致性。
然而,这些方法在特征融合时没有考虑任务特定的指令,缺乏根据具体任务需求动态调整融合策略的能力。这一局限性突显了需要更具适应性的融合方法,以根据任务特性优化特征整合。
2.3. LVLM 中文本引导的视觉特征动态融合
文本引导的特征融合已成为提升 LVLM 任务适应性的关键策略。
- [2] 提出了一种 指令感知机制,将指令 token 作为附加输入引入 Q-former,以便提取任务相关的图像特征。
- [16] 提出了 MoVE,采用基于指令的软路由器,动态聚合来自多个视觉编码器的特征。
- [17] 则提出了 MoVA,一种由粗到细的文本引导方法,选择性地整合来自互补视觉编码器的视觉特征。
相比之下,我们的方法利用单一视觉编码器,根据文本指令动态分配各层视觉特征的权重。该方法通过优先处理任务相关特征提升了视觉感知能力,同时避免了架构冗余。
3. 初步观察
近期研究强调了各层视觉特征在 LVLM 中的重要性,但对于视觉编码器不同层的特征如何影响 LVLM 在各种下游任务中的表现关注较少。这一空白可能导致各层视觉信息的次优利用。为弥补这一缺口,我们系统分析了编码器各层特征对 LVLM 在广泛任务基准上的表现贡献。
我们采用了 LLaVA-v1.5-7B [1] 的架构和训练流程,并使用了 [18] 的评估集,涵盖了四个主要任务类别:通用任务(General)、知识任务(Knowledge)、图表与 OCR(Chart & OCR)以及以视觉为中心的任务(Vision-Centric),共计 15 个基准测试。为扩大评估范围,我们引入了两个额外的任务类别:
- 细粒度任务(Fine-Grained):包括 V*-bench [19] 和 HR-bench [20],测试模型在高分辨率和复杂视觉场景中感知细粒度细节的能力。
- 对象幻觉任务(Object Hallucination):使用 POPE 基准测试 [21] 评估模型在对象存在幻觉方面的敏感性。
最终,评估集包括 6 个任务类别和 18 个基准测试。
3.1. 各层性能分析
我们训练了五种输入不同编码器层特征的模型:LLaVA-L6、LLaVA-L12、LLaVA-L18、LLaVA-L24 和 LLaVA-L23(LLaVA-v1.5 [1] 的复现版本),分别使用第 6、12、18、24 和第 23(倒数第二)编码器层的特征。这些模型在前述基准测试上进行了评估,以了解不同层特征对性能的影响。
如图 3 所示,各模型在不同任务类别上表现出显著的性能差异。除了 LLaVA-L6 外,所有模型在至少一个任务类别中表现优异。表 1 的详细结果显示:
- LLaVA-L23(倒数第二层特征)在整体表现上最佳,在 通用任务(General)和 视觉为中心的任务(Vision-Centric)上表现突出。这解释了为什么倒数第二层的特征通常在 LVLM 中更受青睐。
- LLaVA-L24(最后一层特征)在 知识任务(Knowledge)上表现最佳。
- LLaVA-L18 在 图表与 OCR(Chart & OCR)以及 对象幻觉任务(Object Hallucination)上超越其他模型。
- 值得注意的是,LLaVA-L12 尽管整体排名较低,但在 细粒度任务(Fine-Grained)上得分最高,表明低层特征在细粒度视觉感知任务中的重要性。
- 相比之下,LLaVA-L6 由于使用了相对较浅的编码器层,缺乏语义对齐能力,在所有任务上表现不佳。
这些结果表明:低层特征对于需要细节感知的任务至关重要,而高层特征更适合需要全局语义理解的任务。
3.2. 通过层组合增强性能
基于倒数第二层(23 层)特征的强大表现,我们进一步探讨将其与其他层的特征结合,是否能进一步提升任务特定的性能。为避免增加视觉 token 数量,我们采用简单的通道维度拼接方式,训练了以下四种模型:LLaVA-L23 & 24、LLaVA-L23 & 18、LLaVA-L23 & 12 和 LLaVA-L23 & 6,分别结合了第 23 层与第 24 层、第 18 层、第 12 层和第 6 层的特征。
表 2 中的结果表明,除 LLaVA-L23 & 24 外,所有组合模型在所有任务类别上都优于仅使用第 23 层特征的模型,表明从不同编码器层提取视觉特征具有互补性。然而,性能因组合而异,没有单一组合在所有任务中表现最佳。具体分析如下:
- LLaVA-L23 & 18:实现了最佳整体性能,尤其在 知识任务(Knowledge)和 以视觉为中心的任务(Vision-Centric)中表现突出。
- LLaVA-L23 & 12:综合排名第二,在通用任务(General)、图表与OCR(Chart & OCR)以及对象幻觉任务(Object Hallucination)中表现优异。
- LLaVA-L23 & 24:改善幅度最小,因为第 23 层和第 24 层的特征高度相似,提供的增量信息有限。
- LLaVA-L23 & 6:尽管第 6 层单独表现较差,但该组合在 细粒度任务(Fine-Grained)中表现最佳,突显了低层特征在感知复杂细节中的关键作用。
【注:第四条有点反直觉,因为低层特征包包含更多轮廓,高层特征包含更多纹理细节。
在我看来的解释可能是:高层不同层的纹理细节差别不大,且相似的纹理细节可能会出现在图像多处;低层的轮廓有助于定位与任务相关的纹理细节区域】
这些结果揭示了各层视觉特征在 LVLM 中的互补性,并表明任务特定需求是确定最有效特征组合的关键。
3.3. 为任务特定性能优化特征整合
为了进一步研究各层视觉特征的影响,我们探索了在倒数第二层特征的基础上整合来自所有编码器层的特征。将视觉编码器的 24 层划分为四个特征组:
- 低层(Low):第 1 至第 6 层
- 低到中层(Low-to-mid):第 7 至第 12 层
- 中到高层(Mid-to-high):第 13 至第 18 层
- 高层(High):第 19 至第 24 层
在每个组内应用平均池化生成组代表特征,并通过加权求和融合这些组特征。最终,将融合后的特征与第 23 层特征在通道维度上拼接,以避免增加视觉 token 数量。
权重分布策略。我们测试了五种组特征权重分布策略,分别是:
- 均匀分布(Uniform):权重为 (0.25, 0.25, 0.25, 0.25)。
- 单调递增(Monotonic increase):权重为 (0.1, 0.2, 0.3, 0.4)。
- 单调递减(Monotonic decrease):权重为 (0.4, 0.3, 0.2, 0.1)。
- 先增后降(Increase-then-decrease):权重为 (0.1, 0.4, 0.4, 0.1)。
- 先降后增(Decrease-then-increase):权重为 (0.4, 0.1, 0.1, 0.4)。
这些策略旨在考察不同特征组间的权重分配对任务特定性能的影响。
如表 3 所示,
- 将所有层特征整合的模型在所有任务中均优于单层模型(如表 1 所示)。
- 但单纯对特征 均匀加权(Uniform)的效果不佳,特别是在 知识任务(Knowledge)和 以视觉为中心的任务(Vision-Centric)中表现欠佳。
- 单调递增(Monotonic increase)整体表现最佳,表明高层特征的语义丰富性对任务性能具有重要作用。
尽管如此,在基准水平上仍然观察到了性能差异,每种配置在至少一个基准测试中表现优异。这些发现揭示了两个关键见解:
- 不同的任务依赖于不同的层次特征,需采用任务感知的融合方法;
- 静态加权策略不足以满足需求,强调了动态调整融合权重以优化模型性能的必要性。
4. 方法
基于第 3 节的见解,我们提出了一种 基于任务特定指令动态整合各层视觉特征 的新方法。该方法在 LVLM 框架中引入了 指令引导的视觉聚合器(Instruction-Guided Vision Aggregator,IGVA),解决了现有方法中静态或任务无关融合的局限性。
4.1. 总体框架
总体框架如图 4(a) 所示,包括四个主要模块:视觉编码器 V、指令引导的视觉聚合器 IGVA、视觉-语言适配器 ADP 和大型语言模型 LLM。为了演示,我们使用了广泛采用的 LLaVA-v1.5 [1] 作为实现框架。以下是对每个组件设计的详细介绍。
视觉编码器。我们使用 CLIP-ViT [8] 作为视觉编码器。该编码器将输入图像 I∈R^{C×H×W} 划分为小块,并通过卷积层嵌入这些小块。然后,将块嵌入(patch embeddings)通过一系列 transformer 层,以提取视觉特征。视觉编码器的各层输出为:
其中,L 表示 transformer 层的数量,N 表示图像划分的小块数量,D 表示隐藏状态的维度。每一层都会生成 N+1 个表示,因为 CLIP-ViT 在块嵌入中附加了一个特殊的 <cls> 标记,用于获取全局表示。
指令引导的视觉聚合器。我们方法的关键创新是视觉聚合器,该聚合器基于任务特定的指令动态整合各层视觉特征。我们将视觉编码器的 L 个 transformer 层划分为 K 个视觉组,每组包含 L/K 个连续的层。对于每个组,通过对各层的 <cls> 表示进行平均池化来获取组特定的全局特征:
其中,cls_{k_i} ∈ R^D 是第 k 组中第 i 层的 <cls> 特征。
聚合器包括一个句子嵌入模型和一个权重分配器。句子嵌入模型将输入指令编码为语义嵌入 s,权重分配器利用 s 计算每个视觉组的重要性权重:
对于每个组,我们对其块特征进行平均池化。然后,使用权重向量 w 对池化后的特征进行加权求和:
其中,F^patch_{k_i} ∈ R^{N×D} 表示第 k 组中第 i 层的块特征。最后,为了保留语义丰富性,将融合后的特征与倒数第二层的特征进行拼接,形成最终的视觉表示:
视觉-语言适配器 由一个包含 GELU 激活函数 [35] 的两层 MLP 组成。它用于将视觉特征对齐到 LLM 的输入空间:
其中,D_t 是 LLM 的隐藏维度。
大型语言模型(LLM)。大型语言模型将输入指令进行转化为 token,并计算每个 token 的嵌入(embedding)。这些嵌入与视觉特征在序列维度上进行拼接,形成一个组合序列。组合序列通过 LLM 的 transformer 层进行处理,以生成文本响应。
4.2. 指令引导的视觉聚合器的详细信息
指令引导的视觉聚合器由一个句子嵌入模型和一个权重分配器组成,这两个模块协同工作,以实现层次化视觉特征的动态、任务特定融合。
句子嵌入模型:句子嵌入模型使用预训练的 MPNet 模型 [36] 实现。该模型将任务特定的指令编码为语义向量 s,捕获指令与层级视觉特征之间的关键依赖关系,从而使权重分配器能够有效地优先处理视觉组。
权重分配器:权重分配器根据句子嵌入为每个视觉组计算动态权重。如图 4(b) 所示,它由两个线性投影、一堆 Transformer 块和一个 Softmax 网络组成。
- 每个 Transformer 块包括一个交叉注意力模块和一个前馈网络,并在每个模块后应用残差连接和层归一化。
- 句子嵌入和视觉组表示首先通过线性投影进行变换,以匹配 Transformer 块的隐藏维度。
- 投影后的句子嵌入作为 query,而投影后的视觉特征作为 key 和 value。
- Transformer 块的输出通过 Softmax 头生成权重向量 w,用于自适应地对视觉组中的特征进行加权求和。
5. 实验
表 7 展示了训练后的视觉聚合器在各种下游任务中分配给四个视觉组的平均权重分布。这些分布验证了任务对各层视觉特征的特定依赖性,并证明了指导机制的有效性。
- 对于 通用任务(General),中到高级视觉组的权重最大,同时低到中级和高级组也有适度的支持。这表明,通用 VQA 任务主要依赖中高级视觉特征。
- 在 知识任务(Knowledge)中,低到中级和中到高级组都获得了较高的权重,表明对不同级别视觉特征的依赖较为平衡。有趣的是,在这些偏重推理的任务中,高级组的权重相对较低,表明在此类场景中对全局特征的依赖较少。
- 对于 图表和 OCR 任务(Chart & OCR),中到高级组的影响最大,突出了其在提取结构化视觉信息中的作用。
- 在 以视觉为中心的任务(Vision-Centric)中,权重分布更为均衡,反映出对全局和局部视觉理解的需求。
- 在 细粒度任务(Fine-Grained)中,中到高级组再次占主导地位,但低级组的权重明显增加,这表明低级特征在捕获精细视觉细节方面的重要性。【注:和视觉为中心的任务差别不大】
- 对于 对象幻觉任务(Object Hallucination),中到高级组获得了最高的权重,展示了其在对象级感知中的重要性,而低到中级组则提供了补充支持以提高准确性。
综上所述,
- 中到高级特征 包含最通用且关键的视觉信息,特别是在需要语义理解和结构化信息处理的任务中表现出色。
- 尽管总体贡献较小,低级特征 在一些细粒度和以视觉为中心的任务中不可或缺,这些任务需要捕获精细的视觉细节。
- 低到中级特征 在知识基准等偏重推理的任务中发挥了关键作用,提供了重要的上下文信息。
- 高级特征 更多地作为辅助支持,主要帮助全局语义理解,例如以视觉为中心和通用基准的任务。
这些观察结果证明了我们动态融合策略在捕获任务特定依赖性和利用层次化视觉特征互补优势方面的有效性。
6. 结论
本文分析了 LVLM 在不同层视觉特征上的任务依赖性,并引入了指导聚合视觉模块,该模块可根据任务特定的指导信息自适应地融合层次化视觉特征。集成到 LLaVA-v1.5 框架中,我们的方法相较于基线取得了显著提升,超越了现有的融合方法和同等规模的 LVLMs。
尽管我们的方法显示出良好的效果,但仍存在一些局限性。它依赖于清晰且高质量的文本指导,在任务描述模糊或复杂的情况下可能面临挑战。此外,尽管该方法避免了增加视觉 token 的数量,但集成额外模块会带来轻微的计算开销。未来的工作将专注于解决这些局限性,以进一步增强方法的泛化能力和效率。
论文地址:https://arxiv.org/abs/2501.08443
进 Q 学术交流群:922230617