Multimodal Large Language Model —— MLLM多模态大语言模型
引言:当LLM“睁开双眼”
2023年初,多模态大模型(MLLM)领域迎来了一次集体爆发——LLaVA、BLIP-2、Flamingo几乎在同一时期涌现,它们共同回答了一个核心问题:如何让一个原本只会处理文本的大语言模型,具备理解图像的能力?
答案出奇地一致:给LLM配一双“眼睛”(视觉编码器),再修一座“桥”(模态连接器),让视觉信号能够跨越模态的鸿沟,流淌进语言模型的殿堂。
然而,从最初的“拼接式”方案到如今的“原生统一”架构,MLLM的技术路线经历了深刻的演变。本文将带你从模态连接器的三种经典方案出发,一路穿越训练范式的三阶段演进、数据工程的精细化探索、幻觉缓解的前沿方法,最终抵达原生统一架构的新边疆。
一、模态连接器:架设视觉与语言的桥梁
MLLM的基本架构可以概括为三个组件:视觉编码器(将图像转为特征)、模态连接器(将视觉特征映射到LLM的嵌入空间)、大语言模型(完成理解和生成)。其中,模态连接器的设计是决定模型性能的关键——它决定了视觉信息能以多大的保真度“翻译”成语言模型能理解的语言。
当前主流的连接器方案有三种。
1.1 LLaVA的MLP投影器:简单即力量
LLaVA(Large Language and Vision Assistant)采用了最直接的方案:一个简单的MLP(多层感知机)将每个图像patch的embedding映射到LLM的token嵌入空间。
具体来说,视觉编码器(如CLIP ViT-L/14)将一张224×224的图像编码为256个patch token,每个token的维度为1024。MLP投影器将这个1024维的向量映射到LLM的嵌入维度(如4096):
hvision=MLP(vpatch)∈RdLLM
LLaVA最初使用线性投影(单层全连接),后续版本升级为2层MLP(Linear → GELU → Linear) ,显著提升了多模态理解能力。
MLP投影器的优势在于:
- 参数效率极高:仅增加少量可训练参数
- 收敛速度快:简单的线性映射易于优化
- 可扩展性强:与数据规模和计算量正相关
1.2 BLIP-2的Q-Former:可学习查询的轻量级桥梁
BLIP-2提出了Q-Former(Querying Transformer),一个轻量级的Transformer模块。
Q-Former的核心设计包含三个关键要素:
- 可学习的查询向量(Learnable Query Tokens):一组固定数量的可训练向量(通常为32个或64个),作为视觉信息的“提问者”
- 双分支注意力:查询向量通过自注意力相互交互,再通过交叉注意力从冻结的图像编码器中“提取”视觉特征
- 信息瓶颈:Q-Former充当视觉编码器和LLM之间的信息瓶颈,只向LLM传递最有用的视觉特征
数学上,Q-Former的工作流程为:
q=SelfAttn(qlearnable) vextracted=CrossAttn(q,Vimage) h=FFN(vextracted)
其中 qlearnable∈R64×d 是可学习的查询向量,Vimage 是视觉编码器的输出。
Q-Former的训练分为两个阶段:
- 阶段一:冻结图像编码器,训练Q-Former学习图像-文本表征对齐
- 阶段二:冻结LLM,训练Q-Former学习图像到文本的生成能力
然而,Q-Former也有其局限性。随着数据规模和计算资源的增加,Q-Former(约188M参数)相对于简单的MLP投影器并未展现出明显的性能优势,且收敛更慢。因此,在最新的MLLM中,Q-Former正逐渐被更轻量的方案取代。
1.3 Flamingo的Perceiver Resampler:处理可变数量图像
DeepMind的Flamingo面对的是一个更具挑战性的场景:输入中可能包含任意数量的图像(从1张到多张,甚至视频帧序列)。
为此,Flamingo引入了 Perceiver Resampler——一个能够将可变数量的视觉特征转换为固定数量输出的模块。
Perceiver Resampler的核心机制:
- 预定义一组固定数量的可学习潜在查询向量(论文中默认为64个)
- 这些查询向量通过交叉注意力机制与视觉特征交互
- 输出固定数量的视觉token(64个),无论输入图像的数量和分辨率如何变化
1class PerceiverResampler(nn.Module):2 def __init__(self, dim, num_latents=64, num_heads=8):3 super().__init__()4 # 可学习的潜在查询向量5 self.latents = nn.Parameter(torch.randn(num_latents, dim))6 # 交叉注意力:查询→潜在向量,键/值→视觉特征7 self.cross_attn = nn.MultiheadAttention(dim, num_heads, batch_first=True)8
9 def forward(self, visual_features):10 # visual_features: [B, N, D],N可变(不同图像/帧产生不同数量)11 # 扩展潜在查询到batch维度12 latents = self.latents.unsqueeze(0).expand(B, -1, -1)13 # 交叉注意力:用潜在查询从视觉特征中提取信息14 output, _ = self.cross_attn(latents, visual_features, visual_features)15 return output # [B, 64, D] 固定输出这种设计的优势在于:
- 计算复杂度从“随分辨率和帧数爆炸”变为常数级
- 能够处理任意数量的图像输入(单图、多图、视频帧)
- 输出的固定长度token序列便于LLM处理
Perceiver Resampler随后被Flamingo的门控交叉注意力层(Gated Cross-Attention)注入到LLM的每一层中,实现视觉信息与文本信息的深度融合。
1.4 三种方案的对比与选择
| 方案 | 代表模型 | 参数量 | 特点 | 适用场景 |
|---|---|---|---|---|
| MLP投影器 | LLaVA | 极小 | 简单高效,易扩展 | 单图理解,数据充足 |
| Q-Former | BLIP-2 | 188M | 信息瓶颈,可训练查询 | 计算资源受限场景 |
| Perceiver Resampler | Flamingo | 中等 | 可变长度输入,固定输出 | 多图/视频理解 |
二、视觉编码器的解冻策略
视觉编码器(通常是ViT)在MLLM中扮演着“眼睛”的角色。关于是否在训练中解冻视觉编码器,业界形成了清晰的共识和策略。
2.1 冻结vs解冻
最先进的开源MLLM通常在所有训练阶段都冻结图像编码器,以保持预训练的视觉语义不被破坏。
然而,当需要提升输入分辨率时,情况就不同了。扩大MLLM输入分辨率的标准方法是:增大视觉编码器本身的输入分辨率(例如通过位置编码插值),并将视觉编码器设为可训练。
2.2 分阶段解冻策略
在实践中,MLLM训练通常采用渐进式解冻策略:
- 预训练阶段:冻结视觉编码器和LLM,只训练投影层,快速对齐视觉特征和文本特征
- 指令微调阶段:可以考虑解冻LLM甚至视觉编码器,但学习率要设得比投影层低,避免过拟合
这种策略的核心逻辑是:先用少量可训练参数完成模态对齐,再逐步释放更多参数进行精细化调优。
三、训练范式:从预训练到偏好优化
MLLM的训练通常分为三个阶段。
3.1 第一阶段:跨模态预训练与对齐
目标:学习多模态表征与跨模态对齐。
这一阶段通常冻结视觉编码器和LLM,只训练模态连接器。训练数据以粗粒度的图文对为主(如图像-描述对),通过对比学习或下一个token预测目标进行优化。
3.2 第二阶段:多任务指令微调
目标:建立模型“遵循人类意图”的能力。
在预训练基础上,使用多模态指令数据(如图文问答、视觉推理等任务)对模型进行微调。这一阶段通常解冻LLM(甚至部分解冻视觉编码器),让模型学会根据用户指令完成具体任务。
LLaVA系列通过在大规模视觉指令微调数据上训练,达到了多模态对话能力的新SOTA。
3.3 第三阶段:偏好优化(RLHF / DPO)
目标:将模型的输出与人类偏好对齐。
传统的RLHF(基于人类反馈的强化学习)需要训练一个奖励模型,再用PPO等算法优化策略。而DPO(Direct Preference Optimization) 直接使用偏好数据优化模型,跳过了奖励模型训练,大大简化了流程。
DPO的数学形式可以简化为:
LDPO(πθ,πref)=−E(x,yw,yl)∼D[logσ(βlogπref(yw∣x)πθ(yw∣x)−βlogπref(yl∣x)πθ(yl∣x))]
其中 yw 是偏好输出,yl 是不偏好输出,β 是控制偏离参考模型程度的温度参数。
四、数据工程:从粗粒度到细粒度
4.1 细粒度密集标注
早期的多模态数据以图像-描述对为主,描述通常是粗粒度的(如“一只猫坐在窗台上”)。然而,复杂的视觉推理任务需要细粒度的密集标注——不仅要知道“有什么”,还要知道“在哪里”和“是什么关系”。
密集接地描述(Dense Grounded Caption)要求模型对图像中的每个显著对象进行定位和描述。这类数据的构建成本极高,通常需要专家级标注。
4.2 图文交错数据
现实世界中的多模态数据往往不是孤立的图文对,而是图文交错的文档——网页、教科书、报告中的图像与文字相互穿插、相互解释。
图文交错数据(Interleaved Data)让模型学习如何在长上下文中理解多模态信息,对于提升MLLM的文档理解和推理能力至关重要。
4.3 幻觉缓解
幻觉(Hallucination)是MLLM面临的核心挑战之一——模型生成的内容与视觉证据不符,过度依赖语言先验而非视觉 grounding。
幻觉缓解的前沿方法包括:
- 注意力归因:分析模型在生成过程中的注意力模式,识别幻觉产生的根源
- 事实性核查:通过外部知识库或自我反思机制验证生成内容
- 多智能体辩论:利用多个模型实例相互校验
- 因果导向的策略优化(COPO):通过消除虚假的背景-答案相关性来缓解幻觉
五、评估基准:MMMU与MathVista
随着MLLM能力的提升,评估基准也在不断进化。
5.1 MMMU:多学科多模态推理
MMMU(Massive Multi-discipline Multimodal Understanding)是一个大规模基准,包含 11,550个问题,涵盖 6大学科和30个科目,题目来源于真实的大学考试和教材。
MMMU的进阶版本 MMMU-Pro 包含1,730个问题,对多模态推理能力提出了更严格的考验。
5.2 MathVista:数学视觉推理
MathVista 是一个整合了广泛数学与视觉任务挑战的基准。它包含 6,141个示例,来源于28个现有的多模态数学数据集和3个新创建的数据集。
MathVista被广泛用于评估MLLM在视觉上下文中的数学推理能力。
当前领先的模型在MathVista上已达到 85.2% 的准确率,在MMMU验证集上达到 76.0%。
六、原生统一架构:从“拼接”到“原生”
如果说前面的内容都属于“拼接式”多模态模型——视觉编码器、连接器、LLM是三个相对独立的模块——那么原生统一架构代表了一次更根本的范式转变。
6.1 核心思想:打破模态边界
原生统一架构的核心思想是:不再将不同模态视为需要“拼接”的独立实体,而是在统一的表示空间中原生地处理所有模态。
这意味着:
- 共享参数:理解与生成共用同一组模型参数
- 统一表示:所有模态映射到同一个语义空间
- 端到端优化:不再分阶段训练不同模块
6.2 Emu2:生成式多模态上下文学习
Emu2(智源研究院,2023)是一个拥有 370亿参数 的生成式多模态模型。其核心创新在于:
- 统一自回归建模:在多模态序列中,根据已生成的token预测下一个视觉或文本token
- 多模态上下文学习:展现出强大的少样本多模态理解能力
Emu2的架构包含三个组件:视觉编码器、多模态建模模块和视觉解码器。
6.3 Chameleon:早期融合的混合模态模型
Meta的 Chameleon(2024)采用了早期融合(Early-Fusion)策略。
与传统的后期融合不同,Chameleon:
- 将图像量化为离散token(类似于文本的分词)
- 在统一的Transformer架构中,对图像和文本token的混合序列应用自注意力
- 从零开始在混合模态数据上训练,同时捕获模态内和模态间的复杂关联
Chameleon能够生成和推理任意交错的文本和图像序列,以类似文本生成的方式处理图像。
6.4 Transfusion:离散token + 连续扩散的统一
Transfusion(2024)提出了一种更激进的方案:在同一个Transformer中同时处理离散数据(文本)和连续数据(图像) 。
Transfusion的核心设计:
- 文本:使用标准的语言建模损失(next token prediction)
- 图像:使用扩散损失(diffusion loss),而非将其量化为离散token
这种方法的关键优势在于:
- 无需离散化图像,避免了信息损失
- 单一Transformer架构端到端训练所有模态
- 在多模态生成任务上比传统方法更高效
Transfusion的实验表明,在图像上使用扩散损失比将其量化为离散token对文本性能的损害更小。
6.5 从“表征对齐”到“表征统一”
这三条技术路线——Emu2的自回归统一、Chameleon的离散token统一、Transfusion的混合损失统一——共同指向了一个更深层的趋势:
从“表征对齐”(Representation Alignment)走向“表征统一”(Representation Unification) 。
- 表征对齐(CLIP、LLaVA):不同模态保持各自的编码器,通过对比学习或投影层在表层对齐
- 表征统一(Emu2、Chameleon、Transfusion):不同模态在模型的底层共享同一个表示空间和同一组参数
表征统一的终极愿景是:理解与生成不再是两个独立的任务,而是同一智能过程的两个侧面——模型“看到”图像的方式和“画出”图像的方式,共享同一套认知机制。
七、总结
从LLaVA的MLP投影器到BLIP-2的Q-Former,从Flamingo的Perceiver Resampler到Emu2、Chameleon、Transfusion的原生统一架构,MLLM的技术路线经历了清晰的演进:
| 阶段 | 代表模型 | 核心特征 | 模态关系 |
|---|---|---|---|
| 模态连接器时代 | LLaVA, BLIP-2, Flamingo | 独立编码器 + 连接桥 | 拼接式 |
| 统一自回归时代 | Emu2 | 统一next-token预测 | 共享架构 |
| 离散统一时代 | Chameleon | 图像离散token化 | 早期融合 |
| 连续统一时代 | Transfusion | 文本LM + 图像扩散 | 混合损失 |
这条演进路线的终点,或许是一个真正“原生多模态”的智能系统——它不再需要区分“这是文本”和“这是图像”,而是在同一个连续的表示空间中流畅地感知、理解和生成所有模态的信息。
Some information may be outdated