跳到主要内容

MLLM 多模态大语言模型

内容

本篇集中讨论多模态理解模型的基本概念、结构、训练与推理知识。

1. 多模态模型是什么

多模态模型(Multimodal Model) 指能够处理多种类型信息的模型。这里的"模态"可以理解为信息的表现形式,如文本、图像、视频、音频等。

例如:

  • 给模型一张菜品照片,它能判断里面大概有哪些食物;
  • 上传一张图表,它能解释图表表达了什么;
  • 给它一段视频,它能描述发生了什么;
  • 对着它说话,它能听懂语音并用文字或语音回答;
  • 让它根据文字生成图片、视频或音乐。

多模态模型的目标,就是让 AI 不再只处理单一文本,而是能综合多种信息来源进行理解、推理或生成。

这里我们讨论的是多模态模型与 LLM 结合的产物,MLLM(Mltimodal Large Language Model) 即 多模态大语言模型

2. 基本概念

在进行更深入地讨论之前,我们先来了解一些关于多模态模型的基本概念。

2.1 编码:将模态表示为向量

模态是信息存在的形式。

多模态模型的核心问题在于,如何让模型把不同模态的信息放到同一个语义空间里理解。

与文本 LLM 类似,不同模态的信息首先需要被转换成模型能计算的形式,也就是将不同模态的原始数据编码成向量。

比如,将一句文本转换为一串 token 向量,一张图转换为一组图像 patch 向量,一段语音转换为一组音频帧向量,而一段视频则表示为多帧图像 + 时间信息向量。

这部分工作一般由 Encoder 编码器 来完成:把某种模态的输入变成向量表示。

2.2 投影:连接视觉与语言

很多多模态大模型不是从零训练出来的,而是把已有的视觉模型和语言模型连接起来。

现代多模态模型的典型结构如:图片 → 视觉编码器 → 投影层 → 大语言模型 → 文本回答,其中的 Projector/Adapter 投影层 把视觉编码器输出的图像向量转换成语言模型可以接收的向量格式。

投影层可以类比为一个"翻译器":视觉编码器说的是"图像特征语言",大语言模型懂的是"文本 token 语言",投影层负责把图像特征翻译成 LLM 能处理的表示。

很多视觉语言模型,比如 LLaVA 类架构,就有类似思想。

2.3 对齐:让不同模态表达同一个语义

Alignment 对齐 是多模态模型中非常核心的概念。

它指的是:让图片、文字、音频、视频等不同模态中表达相同含义的内容,在模型内部具有相近的表示。

比如,模型需要学会:

  • 图片里的物体对应哪些词;
  • 图表里的趋势对应哪些描述;
  • 语音里的声音对应哪些文本;
  • 视频里的动作对应哪些语言表达。

2.4 融合:让不同模态的信息结合

Fusion 模态融合 指的是模型如何把不同模态的信息结合起来。

例如用户问"这张图里的菜适合减脂吗?"

模型要同时理解:

  • 文本问题:"适合减脂吗?"
  • 图片内容:菜品种类、分量、油脂、主食、蛋白质等;
  • 背景知识:减脂饮食通常关注热量、蛋白质、油脂、碳水结构。

实际工作中,实现融合的一类关键机制是跨模态交互,Cross-Attention 就是一种典型方式。

2.5 区别与联系 - 投影、对齐、融合

投影、对齐、融合三者都在处理表示,但它们要解决的核心问题和层面不同:

概念核心问题典型作用层面
投影 Projection/Adapter怎么接入?把视觉/音频特征转成 LLM 可处理的向量改变表示的格式
对齐 Alignment怎么对应?让图片、文本、语音中的同一语义互相匹配改变表示的语义关系
融合 Fusion怎么一起推理?让多模态信息共同参与理解和回答改变表示之间的交互方式

用一个具体例子来说明:假设用户上传一张猫的图片,并问:"这张图里是什么动物?"

实际模型的处理过程可以抽象为:

1. 输入:图片 + 文本问题
2. 视觉编码:图片 → 视觉编码器 → 图像特征
3. 投影:图像特征 → 投影层 → LLM 能处理的视觉 token
4. 对齐:某些视觉特征 ≈ “猫”
5. 融合:
文本问题:“这张图里是什么动物?”
图像信息:猫的视觉特征
推理:用户问的是动物类别
5. 输出:这是一只猫

这里为了例子的通俗易懂,将三者拆成了各自独立的部分,但在真实模型里它们经常是交织在一起的。


3. 典型结构

3.1 架构

多模态模型的架构变化丰富,但典型架构的主线是基本相同的:

不同模态输入: 图像 / 音频 / 视频

各自的模态编码器:各自编码成 token / 向量

模态连接层 / 投影层:投影或适配到统一表示空间

进行跨模态融合 / 交互

由语言模型或任务头输出结果:文本回答 / 工具调用 / 多模态输出

也就是 : 编码 → 投影 / 对齐 → 融合 → 推理 / 输出

再详细一些:多模态模型是用专门的模态编码器提取图像、音频、视频等特征,再通过投影或适配模块接入语言模型,在融合机制中完成跨模态推理,最后输出结果。

比如常见的 VLM 视觉语言模型

图片   +   用户问题
↓ ↓
视觉编码器 文本 tokenizer
↓ ↓
视觉 token 文本 token
↓ ↓
投影层 文本 embedding
↓ ↓
拼接 / 交互 / 融合

LLM

回答

3.2 结构

更具体一些的模型结构如下:

架构融合程度优点局限
双塔结构快,适合检索和匹配不擅长复杂推理
单流 Transformer图文深度交互计算成本高
双流 Transformer中到强保留模态独立性,又能交互结构复杂
Encoder-Decoder中到强适合从多模态输入生成文本依赖解码器能力
Vision Encoder + Projector + LLM易接入大语言模型,适合对话视觉细节能力受限
Vision Encoder + Resampler + LLM能压缩大量视觉 token中间模块训练复杂

实际上,如果讨论"多模态模型的整体系统架构",确实还没有像 LLM 中 decoder-only Transformer 那样高度统一的范式。

多模态领域仍然是双塔、Encoder-Decoder、Encoder + Projector + LLM、扩散模型、自回归生成模型等多条路线并存。

但如果讨论“底层组件”,Transformer 仍然非常主流,并没有退出中心位置。


4. 训练

4.1 视觉-语言对齐预训练

多模态模型通常不会从零同时训练所有能力,而是在已有视觉模型和语言模型基础上进行跨模态对齐。

常见训练阶段是:

视觉-语言对齐预训练 -> 多模态指令微调 -> 偏好优化 / 强化学习 -> 任务专项微调

视觉-语言对齐预训练使用图文对、图片标题、视频字幕等数据,让模型学习视觉特征与语言描述之间的对应关系。目标不是让模型学会所有任务,而是让视觉信息能进入 LLM 的表示空间,并被后续生成过程读取。

4.2 多模态指令微调

多模态指令微调让模型学会按用户任务使用视觉、音频或视频信息,而不只是描述输入内容。

典型数据形式为:

image / video / audio + user instruction -> assistant answer

任务可以包括 OCR、VQA、图表问答、多图对比、视频摘要、空间推理、拒答和安全判断。

高质量指令数据会决定模型是否能“基于证据完成任务”,而不是生成泛泛描述。

4.3 偏好优化与安全对齐

多模态模型同样需要偏好优化或强化学习,尤其是降低视觉幻觉、过度推断和不当识别。

例如,对于模糊图片,可靠回答应该区分:

  • 图中能直接观察到的信息。
  • 基于上下文可以合理推测的信息。
  • 由于分辨率、遮挡或证据不足而无法确认的信息。
  • 偏好数据应鼓励模型在证据不足时表达不确定,而不是补全看起来合理但不可验证的细节。涉及人脸、身份、年龄、健康、隐私和敏感场景时,还需要更严格的安全策略。

5. 推理

多模态输入通常会在消息中使用图片占位符,例如:

<image>
请解释这张图中的异常。

也可能使用结构化消息:

[
{"type": "image_url", "image_url": {"url": "..."}},
{"type": "text", "text": "请解释这张图中的异常。"}
]

需要注意的是,<image> 这类占位符本身并不是图像特征,它只是提示模型:当前位置需要插入或关联一段视觉输入。真正的图像内容还需要经过图像预处理和视觉编码。

典型推理流程可以概括为:

结构化消息 / 文本 + 图片

chat template 将消息序列化为模型提示词

tokenizer 将文本部分转换为 input_ids

processor / image processor 将图片转换为 pixel_values 等张量

vision encoder 提取视觉特征

projector / adapter 将视觉特征映射到 LLM 可接收的表示空间

在 <image> 等占位符对应位置接入视觉表示

LLM 结合文本 token 和视觉 token 进行自回归生成

5. 多模态生成模型

上面讨论的主要围绕的是 多模态理解模型 ,即可以接收多种模态的输入而输出的是文字。

多模态生成模型 更关注"生成非文本模态内容",即模型不仅理解输入,还能够生成图像、音频、视频等内容。典型任务包括文生图、图生图、文生视频、图生视频、文生语音、语音转换等。

需要注意的是,多模态生成模型不一定要求输入本身也是多模态。例如文生图只有文本输入,但输出是图像,仍属于跨模态生成任务。

更广义地说,只要模型涉及不同模态之间的生成转换,就可以归入多模态生成范畴。

从架构上看,多模态生成模型和以 LLM 为核心的多模态理解模型并不完全相同。

文生图、文生视频等任务中常见的技术路线包括扩散模型、自回归视觉 token 生成、DiT(Diffusion Transformer)以及多阶段生成管线等。它们的核心目标不是预测下一个文本 token,而是生成图像像素、潜空间表示、音频波形、视频帧或对应的离散 token。


总结

多模态理解模型的核心是将图像、视频、音频等非文本信息接入语言模型上下文:

  • 多模态理解模型仍然遵循 next token prediction 的自回归生成机制。
  • 模型通常由 Encoder、Projector/ Adapter 等连接模块、tokenizer/ processor、special tokens、chat template 和 LLM 共同组成。
  • 图像、音频、视频等非文本输入通常需要先经过对应的模态编码器,被转换为视觉特征、音频特征或视频特征。

文生图、文生视频等生成模型可能采用扩散模型、自回归视觉 token 生成或其他架构。