本文提出了一种参数空间对齐的多模态大模型范式,该范式将输入图像特征转换成 LoRA 权重并合并到 LLM 中,使 LLM 感知图像视觉信息。该范式避免了在 LLM 的输入序列中引入视觉标记,在训练和推理上都非常高效。论文已被 NeurIPS 2024 接收,论文链接和代码均已公开,欢迎交流。
https://arxiv.org/pdf/2405.20339 代码链接:
https://github.com/FeipengMa6/VLoRA 项目主页:
https://feipengma6.github.io/vlora/
输入空间对齐范式 1.1 介绍 在进入正题之前,我们先简单回顾一下当前主流的 MLLM 范式。以最具代表性的 LLaVA [1] 为例:
对于输入的图像 ,通过视觉编码器(Vision Encoder)和映射模块(Projection)提取特征,得到一个由视觉标记(Visual Tokens)组成的视觉序列,然后将视觉序列和文本在序列维度上拼接,一同输入到 LLM 中进行训练。在训练过程中,视觉序列是在对齐 LLM 的输入空间以让 LLM 能够理解视觉信息,我们称这种范式为输入空间对齐范式。 输入空间对齐范式有 2 个特点:
1. 视觉信息序列化,和文本信息具有相同的表现形式 图像经过视觉编码器之后会变成视觉标记,然后通过映射模块映射到和文本标记(Text Tokens)相同的特征维度,最后形成了和文本信息相同的表现形式,即序列。
2. MLLM 中视觉和文本的模态交互通过注意力机制进行 视觉信息序列化之后,会将视觉序列与文本序列在序列维度上拼接,然后同时输入给 LLM。在前向传播的过程中,视觉与文本通过注意力机制产生模态交互。
目前主流 MLLM 遵从输入空间对齐范式,比如 Qwen2-VL [2] ,DeepSeek-VL [3] ,和 InternVL2 [4] ,如 Figure 2 所示。
▲ Figure 2. 输入空间对齐范式:Qwen2-VL, DeepSeek-VL 和 InternVL2
1.2 问题 输入空间对齐范式使用 CLIP 可以很容易将视觉特征对齐到 LLM 输入空间,因为 CLIP 的视觉特征预先和文本对齐过,本身具备丰富的语义信息,但是在训练和推理时计算效率低。 在输入序列达到一定长度的情况下,LLM 的计算量集中在注意力机制部分,当输入序列长度为 n 时,计算复杂度为 ,也就是说 LLM 的计算量随着输入序列长度而平方增长。 LLaVA-v1.5 的视觉编码器为 ViT-L-14,对于单张图像,产生的视觉标记的数量为 576。而考虑到高分辨率图像输入,一些工作会将图像切分成多个子图,分别转换成视觉标记,最后产生非常长的视觉序列。比如,Sphinx-2k [5] 的视觉序列长度为 2890,InternLM-Xcomposer2-4KHD 的视觉序列长度甚至可以达到 8737。
然而,视觉序列长度的增长会导致 MLLM 的计算量急剧增加。特别是在预训练阶段,MLLM 通常在网络爬取的图像文本对上进行预训练,文本长度通常比较短,比如 LAION-2B 的文本平均长度为 10.95,视觉 token 的数量是文本的 20~50 倍,这意味着视觉标记引入了绝大部分的计算量,影响了训练效率。
参数空间对齐范式 2.1 TSD的定义 为了解决上面的问题,我们提出了参数空间对齐范式,将视觉信息表征为模型权重合并到 LLM 中,从而在不引入额外计算量的情况下使 LLM 能够感知视觉信息。 参数空间对齐范式的核心是将视觉信息表征为模型权重,并融合到 LLM 的参数中。整体流程如 Figure 3 所示。
LLM 中 Self-attention 包含 和 ,共 4 个权重矩阵,Feed-forward Network 包含 和 共 2 个权重矩阵。这里我们用 来表示 LLM 的权重矩阵, 为隐藏层维度。 对于输入图像 ,先使用视觉编码器 来提取图像视觉特征,得到 , 是 visual token 的数量, 是视觉特征的维度。 然后,我们设计了感知权重生成模块 来将视觉特征转化为感知权重 ,这里值得注意的是,为了尽可能保持 LLM 本身的语言能力, 是一个低秩矩阵,同时,这也有利于减少生成感知权重的计算开销。 得到感知权重 后,我们可以直接将其融合到 LLM 的权重中, 。 通过将从视觉特征转化来的权重整合到 LLM 的权重中,LLM 自然就具备了视觉感知能力。在合并权重后,不会给 LLM 带来额外的计算开销。对于 LLM 中每个解码层中的任意类型权重 (q, k, v, o, m),我们都可以生成相应的感知权重并将其整合到对应权重中。
感知权重生成模块 我们设计了感知权重生成模块来将视觉特征转化为感知权重,对于 LLM 中不同类型的权重,我们用不同的感知权重生成模块来生成对应的感知权重。以下是对单一类型的权重生成的介绍。 如 Figure 4(a) 所示,我们的感知权重生成模块是 Decoder-only 结构的,有 N 层解码层,每层由 self-attention 模块,cross-attention模块,和feed-forward network组成。首先,感知权重生成模块的self-attention模块的输入是 k 个感知查询标记(perceptual queries),感知查询标记的数量对应我们想要合并权重的 LLM 层数,即生成的感知权重的数量。 然后,在 cross-attention 模块中,视觉特征与感知查询标记交互,最后通过 feed-forward network,得到 个 ,其中 是感知权重模块的隐藏层维度,并且该特征维度远小于 LLM 的隐藏层维度 ( 比如 ) ,有 。 我们的目的是获得 个 ,而直接使用线性层将 的特征维度从 升维到 会引入极大的参数量,同时,这么一个高维矩阵直接合并到原始权重中可能会影响 LLM 本身的语言能力。 因此,我们先采用一个共享的线性层 ,将 个 分别升维到 的维度 ,其中 ,重整形状为 ,称为视觉参数。 接下来,对于 个视觉参数 ,我们采用 个不同的线性层 分别进行升维,得到感知权重 。 最后我们将感知权重合并到 LLM 权重中,有 ,考虑到 和 的低秩特性,我们可以观测到上式和 LoRA 具有相同的形式,如 Figure 4(b) 所示,其中 相当于 LoRA 中的 相当于 ,因此,我们的感知权重生成模块也可以视为 "LoRA 权重生成器"。
实验结果 我们采用和 LLaVA-v1.5 相同的设置,用 Vicuna-7b-v1.5 作为 LLM,CLIP-ViT-L-14 作为视觉编码器。我们对所有权重类型都生成 LoRA 权重,秩为 64,并且每隔 4 层合并到 LLM 权重中。预训练数据我们从 Capsfusion-120M 中采样 30M,微调数据我们采用和 LLaVA-v1.5 相同的数据。 4.1 和现有MLLM对比 ▲ Table 1. 主要实验结果
在 Table 1 中,我们在多个 MLLM 评测基准上进行了测试,包括 MMBench,MME,ScienceQA,HallusionBench MMMU 和 CCBench。由于我们的 VLoRA 不需要在 LLM 推理过程中引入额外的视觉标记,计算量相比其他方法显著减少。 在性能上,在 MMBench,ScienceQA 和 HallusionBench 上,可以达到和 LLaVA-v1.5 可比的结果,在 CCBench 上达到了 28.6,超过了 LLaVA-v1.5 的 27.5。在 MME 上 VLoRA 落后于 LLaVA-v1.5,这可能是因为我们的感知权重生成器是随机初始化的,预训练不够充分。 4.2 在相同数据下和LLaVA-v1.5对比 ▲ Table 2. 消融实验
为了更公平的对比,我们在不同的设置下复现 LLaVA-v1.5,包括使用 Capsfusion-30M 作为预训练数据,将 Projector 换成 QFormer(和我们的权重生成模块相似的结构)。 在 Table 2 中,第 2 行是将 LLaVA-v1.5 的预训练数据换成 Capsfusion-30M 的结果,可以看到,在使用了更多预训练数据的情况下,LLaVA-v1.5 的性能并没有进一步提升,甚至在 MME,HallusionBench,MMMU 和 CCBench 上有所下降,说明了在相同的预训练数据下,VLoRA 的性能是和 LLaVA-v1.5 可比的。 第 3 行是使用 QFormer 结构作为 LLaVA-v1.5 的映射模块的结果,我们可以发现该设置下 VLoRA 除了在 ScienceQA 和 HallusionBench 上略微低于 LLaVA-v1.5,在其他评测榜单上都超过了 LLaVA-v1.5。
VLoRA 在参数空间对齐上做了尝试,初步验证了这种范式的有效性,目前还处于一个初级阶段,还有很多值得探索的地方,包括更合适的视觉编码器,更大规模的预训练,扩展到多图,视频场景,扩展到更多的模态等。我们也在持续探索中,欢迎感兴趣的朋友关注并交流! [1] Visual Instruction Tuning. NeurIPS, 2023 [2] Qwen2-VL: Enhancing Vision-Language Model's Perception of the World at Any Resolution. arXiv, 2024 [3] DeepSeek-VL: Towards Real-World Vision-Language Understanding. arXiv, 2024 [4] InternVL2: Better than the Best—Expanding Performance Boundaries of Open-Source Multimodal Models with the Progressive Scaling Strategy. InternVL2, 2024 [5] SPHINX: The Joint Mixing of Weights, Tasks, and Visual Embeddings for Multi-modal Large Language Models. arXiv, 2023 [6] InternLM-XComposer2-4KHD: A Pioneering Large Vision-Language Model Handling Resolutions from 336 Pixels to 4K HD. arXiv, 2024 [7] Transformer Feed-Forward Layers Are Key-Value Memories. EMNLP, 2021 [8] Knowledge Neurons in Pretrained Transformers. ACL, 2022
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读 ,也可以是学术热点剖析 、科研心得 或竞赛经验讲解 等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品 ,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬 ,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱: [email protected]
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02 )快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」 也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」 订阅我们的专栏吧