一句话定义

多模态模型,就是能同时理解、关联和处理多种信息形态的 AI 模型。这里的“多种信息形态”包括文本、图片、音频、视频、表格、传感器数据等。

这句话里最容易被忽略的是“关联”。如果一个系统只是分别接了 OCR、语音识别、图像分类三个模块,再把结果拼在一起,那更像多工具流水线;真正的多模态模型要解决的是:不同形态的信息如何落到同一套语义判断里。

多模态模型语义对齐结构图

什么是“模态”

模态(modality)指信息被承载和组织的形式。不同模态不只是文件格式不同,而是底层结构、统计规律、抽象路径都不同。

模态 例子 原始形态 典型结构
文本 文章、对话、代码 字符 / token 序列 一维离散序列
图像 照片、截图、图表 像素矩阵 二维空间结构
音频 语音、音乐、环境声 波形 / 频谱 时间序列
视频 短视频、监控画面 图像帧 + 音频 + 时间 时空序列
结构化数据 表格、指标、传感器读数 字段、行列、时间戳 schema 约束下的结构

所以,“模态”的核心不是“输入文件扩展名”,而是信息在进入模型之前,本来是以什么结构存在的。

单模态与多模态的区别

单模态模型只处理一种信息形态。早期语言模型只处理文本,早期图像识别模型只处理图片,语音识别模型只处理音频。

多模态模型要处理的是跨形态问题:

  • 看一张菜单照片,回答“这顿饭大概多少钱”。
  • 听一段录音,判断说话人情绪,并把关键内容整理成文字。
  • 看一段视频,回答“红衣服的人最后把东西放在哪里”。
  • 根据一段文字生成图片、视频或语音。

这类任务的共同点是:输入和输出不一定属于同一种模态,中间还要做语义对齐、推理、检索、生成。

文本语义真的“在表面”吗

可以把“文本的语义关系更贴近数据表面,图片、音频、视频的语义更多藏在数据内部”当成一个很好的直觉,但它需要稍微修正。

文本的表面符号本身已经是人类抽象后的结果。“一只金色的狗在草地上跑”这句话不是自然世界的原始采样,而是人类把视觉经验压缩成概念、词语和语法之后的产物。模型看到的虽然只是 token,但这些 token 已经携带了高层语义线索:狗、金色、草地、跑,都是概念级单位。

图片就不一样。一张狗的照片在数据表面是 RGB 像素矩阵。像素层面没有“狗”这个字段,也没有“正在跑”这个标签。模型需要从像素到边缘,从边缘到纹理,从纹理到局部部件,从局部部件到对象,再从对象关系到场景语义。音频也类似,原始波形里没有“这句话表达了不满”这个字段,只有振幅、频率、节奏、共振峰等物理信号。

因此,更准确的说法是:**文本是经过人类符号系统预抽象后的模态,图像、音频、视频更接近感知信号模态。**文本的语义不等于完全“摊在表面”,讽刺、隐喻、上下文、省略、指代依然需要深层理解;但相比像素和波形,文本表面符号离语义层更近。

这个差别确实是多模态里的关键差别之一,可以称为抽象层次差异。

为什么数据和文本是不同模态

结构化数据和文本都可以写成字符串,所以容易被误认为是同一种模态。例如一张表可以序列化成 CSV、JSON,也可以直接塞进 prompt。但从建模角度看,数据和文本依然是不同模态。

这里要拆开两层:编码形式语义组织方式

JSON 是文本编码格式,因为它由字符组成,可以用编辑器打开,也可以被 tokenizer 切成 token。但 JSON 承载的通常不是自然语言文本,而是结构化数据。它的含义主要来自 key、value、类型、层级、数组、对象和 schema,而不是自然语言的词序、语法和修辞。

1
2
3
4
5
6
{
"product_name": "apple",
"price": 12.5,
"currency": "CNY",
"date": "2026-05-17"
}

这段内容当然是“文本文件”,但模型真正要理解的不是一句话,而是一条结构化记录:product_name 是字段名,price 是价格,12.5 是数值,currency 规定单位,date 给出时间。如果去掉字段名,只剩 ["apple", 12.5, "CNY", "2026-05-17"],它仍然是文本编码,但语义会立刻变弱。

因此,结构化数据不是自然语言文本模态,并不是因为它一定有“特殊的空间结构”。空间结构只是结构约束的一种。表格有二维行列结构,JSON 和 XML 有树形层级结构,图数据有节点和边,日志和事件流有时间序列结构,数据库记录有 schema、主键、外键、类型和约束。它们的共同点不是“都像图片一样有空间”,而是语义主要由显式结构决定。

文本的基本约束来自自然语言:词序、语法、语义搭配、上下文、省略、修辞。文本里的“苹果很甜”靠语言规则和世界知识来理解。

结构化数据的基本约束来自 schema:字段名、字段类型、主键、外键、单位、时间粒度、行列关系、统计口径。表格里的 apple, 12.5, 2026-05-17 如果没有列名和单位,几乎没有确定含义;一旦列名是 product_name, price, date,含义才稳定下来。

二者都能被 token 化,但 token 化以后丢不掉原来的结构差异:

对比项 文本 结构化数据
主要约束 语法和上下文 schema 和类型
顺序意义 词序通常强相关 行列顺序不一定等价于语义顺序
语义来源 词义、句法、语境、世界知识 字段定义、单位、口径、关系
错误类型 歧义、指代错误、语义误读 单位错、字段错、聚合口径错、关联错
典型任务 摘要、问答、翻译、推理 查询、聚合、预测、异常检测、关联分析

这也是为什么“把表格转成一段文字”能让 LLM 处理数据,但不是最理想的处理方式。序列化只是把数据包装成文本输入,数据原本的行列结构、类型约束、单位关系并不会自动消失。真正面向数据的模型或工具,通常还要显式利用 schema、统计分布、约束关系和计算工具。

所以,“数据”可以借文本通道进入 LLM,但它在语义组织方式上不同于自然语言文本。

三种核心能力

跨模态理解

输入是某种非文本模态,输出通常是文本判断。例如给模型一张菜单照片,问“这顿饭大概花多少钱”。模型需要识别图片里的文字和价格,理解问题意图,再做加总或估算。

跨模态生成

输入一种模态,输出另一种模态。DALL-E、Stable Diffusion 属于文本生成图片;Sora 属于文本生成视频;TTS 属于文本生成语音。

跨模态转换

转换强调信息形态变化,而不一定强调复杂推理:

  • 语音 → 文字:语音识别。
  • 文字 → 语音:TTS。
  • 图片 → 文字描述:image captioning。
  • 视频 → 事件摘要:视频理解和摘要。

理解、生成、转换常常混在一起。一个“看图写报告”的任务,既有视觉理解,也有语言生成。

技术原理

传统做法是每种模态各用一套系统:图像模型处理图片,语音模型处理音频,语言模型处理文本。它们之间通过工程 glue code 串起来。

多模态大模型的典型做法,是把不同模态先编码成向量表示,再把这些表示对齐到模型可以共同处理的空间。

1
2
3
图片 ──→ 视觉编码器 ──┐
文字 ──→ 文本编码器 ──┼──→ 表示空间 / 语言模型上下文 ──→ 推理或生成
音频 ──→ 音频编码器 ──┘

关键不是“所有原始数据都变成同一种东西”,而是“不同来源的表示能在同一个任务目标下发生关系”。图片向量、文字向量、音频向量不需要在数学上完全同质,但它们需要能被同一个模型解释、比较、融合或生成。

为什么“映射到同一空间”很难

直觉上可能觉得,各自编码然后对齐就行了。难点不在于文件格式不同,而在于语义形成路径不同。

数据结构差异

模态 结构 特征
文本 一维离散序列 有词序、语法、篇章结构
图片 二维像素矩阵 有空间局部相关性,没有天然阅读顺序
视频 图像帧 + 时间轴 空间结构和时间结构同时存在,信息高度冗余
音频 高采样率时间序列 物理本质是波,语义藏在频谱和时序变化里
表格数据 行列 + schema 字段类型、单位、口径比自然顺序更重要

这些结构不能简单拼在一起。把图片像素、音频采样点、文本 token 直接串成一个超长序列,理论上可以,实际训练成本和泛化难度都很高。

抽象层次不同

文本通常已经在概念层。图片、音频、视频更靠近感知层。结构化数据则处在另一条路径上:它不是自然感知信号,而是人类或系统按 schema 记录后的抽象结果。

这就形成了三类常见输入:

  • 文本:符号抽象后的自然语言。
  • 感知信号:图片、音频、视频。
  • 结构记录:表格、日志、指标、传感器数据。

它们都能变成向量,但向量背后的“生成机制”不同。

统计规律来源不同

文本的规律来自语法、语义搭配、人类概念系统和语料中的共现关系。“苹果”附近常出现“水果”“甜”“吃”。

图片的规律来自光学和物理世界。相邻像素往往颜色接近,同一物体在不同光线、角度、遮挡下像素值差异很大。

音频的规律来自声学和发音机制。语义要通过频率、共振峰、时序包络、停顿等信号恢复出来。

结构化数据的规律来自业务过程和采集口径。同一个数字在不同字段里含义完全不同,100 可以是价格、库存、延迟、温度或错误码。

对齐本身有模糊性

即便知道要把向量拉近,具体该对齐什么也不清楚。

“狗”这个词可以对应无数张狗的图片。不同品种、角度、光线、动作都可以叫狗。一张狗的图片也可以被描述成“一只狗”“一只金毛”“草地上的宠物”“一张户外照片”。词和图不是一一对应。

粒度也不匹配。一个词对应整张图,还是图中某个区域?“红色杯子在桌子左边”这句话里,“红色”“杯子”“桌子”“左边”分别对应不同视觉区域和关系。

信息还不对称。图片里有背景颜色、光照、构图,文字可能没写;文字里有“昨天”“可能”“如果”等抽象关系,图片未必能直接表达。

1
2
3
4
5
6
7
8
9
数据结构不同

统计规律来源不同

抽象层次不同

对齐粒度模糊

没有天然唯一的共享空间

所谓多模态训练,就是用大量配对数据、任务目标和损失函数,把这些原本不在同一层面的表示拉到可以协同工作的空间里。

向量化、embedding、翻译函数分别是什么

“模态变成 LLM 输入”确实包含向量化,但不能把向量化、embedding、投影层、翻译函数完全画等号。

向量化是大类

向量化(vectorization)泛指把某种对象表示成数字向量。对象可以是词、句子、图片、音频片段、用户、商品、表格行、图节点。传统机器学习里的 one-hot、TF-IDF、统计特征,也都算向量化。

向量化这个词很宽,只要结果是向量,就可以叫向量化。

embedding 是学出来的稠密语义向量

embedding 通常指模型学出来的稠密向量表示。它不只是“把东西编号成数字”,而是希望向量空间里的距离、方向、组合关系能反映某种语义或任务关系。

文本 embedding 可以让“猫”和“狗”比“猫”和“数据库”更近。图像 embedding 可以让两张语义相近的图片更近。用户 embedding、商品 embedding 则可以表达偏好和匹配关系。

所以,embedding 是向量化的一种,而且通常是更语义化、更可学习的一种。

1
2
3
4
5
向量化 vectorization
├── one-hot
├── TF-IDF
├── 手工统计特征
└── embedding(学出来的稠密表示)

投影层不是“向量化的向量化”

多模态大模型里的 projector,经常被说成“翻译函数”。这个说法可以保留,但要注意它翻译的不是原始数据,而是已经被编码器处理过的特征向量。

以视觉语言模型为例:

1
2
3
4
5
6
7
图片像素
↓ 视觉编码器
视觉特征 / 视觉 tokens
↓ projector
语言模型可接收的伪词元 / embedding 序列
↓ LLM
回答问题或生成文本

第一步“图片像素 → 视觉特征”才是从原始图像到向量表示的主要抽象过程。第二步“视觉特征 → 语言模型可读的伪词元”更像空间变换或接口适配:把视觉编码器产出的向量,变成 LLM 词嵌入空间附近的表示。

因此,projector 不太适合叫“向量化的向量化”。更准确的说法是:projector 是跨表示空间的映射层,负责把一种 embedding 空间里的向量变换到另一种 embedding 空间能理解的形式。

“翻译函数”是一个比喻。它类似把视觉语言翻译成 LLM 的内部语言,但这不是自然语言翻译,而是向量空间之间的对齐和适配。

三个概念的包含关系

可以用这张图记:

1
2
3
4
5
6
7
8
9
向量化:把对象变成向量的所有方法
└── embedding:学出来的稠密语义向量
├── 文本 embedding
├── 图像 embedding
├── 音频 embedding
└── 数据 / 用户 / 商品 embedding

翻译 / projector:不是 embedding 的上位概念
它是把一种表示空间映射到另一种表示空间的函数

所以,关系不是“翻译包含 embedding”或“embedding 包含翻译”,而是:embedding 是表示,projector 是变换;向量化是更大的表示方法集合。

主流解决方案

CLIP:对比学习

CLIP 的核心思路是用图文配对数据训练图像编码器和文本编码器。OpenAI 的 CLIP 论文使用的是 4 亿个图文对,而不是 400 万个。

训练目标很直接:同一批样本里,真正匹配的图片和文字向量要更近,不匹配的图片和文字向量要更远。

  • 匹配对:狗的图片 + “一只狗” → 向量距离拉近。
  • 不匹配对:狗的图片 + “一辆车” → 向量距离拉远。

这不是让像素等于词,而是让图像空间和文本空间在语义层面对齐。CLIP 训练好以后,可以用文字描述去检索图片,也可以用文本标签做零样本图像分类。

多模态大模型:编码器 + 投影层 + LLM

很多视觉语言模型采用类似结构:

1
2
3
视觉编码器输出              LLM 词嵌入空间
[图片特征向量] → [投影层] → [伪词元 pseudo-tokens]
视觉空间 语言空间

视觉编码器负责从图片里提取视觉特征。投影层负责把视觉特征适配到语言模型可接收的向量空间。LLM 再把这些伪词元当作上下文的一部分,与文本问题一起做推理。

这条路线的优势是可以复用强大的语言模型能力。它的代价是:视觉、音频、视频等模态必须先被压缩成 LLM 能接收的上下文表示,细节可能在压缩过程中丢失。

端到端多模态模型

另一类思路是从训练目标上更早地融合多模态,让模型内部直接学习文本、图像、音频、视频之间的统一表示。这类模型通常成本更高,对数据和训练系统要求也更高,但长期看更接近“原生多模态”。

现实中的模型经常混合使用这些方法:预训练编码器、对比学习、投影层、指令微调、跨模态生成模型会组合在一套系统里。

典型代表

模型 / 系统 支持的典型模态 主要能力
GPT-4V / GPT-4o 文本、图片、语音等 视觉问答、语音交互、通用推理
Claude 系列 文本、图片 文档理解、图像理解、推理问答
Gemini 系列 文本、图片、音频、视频 多模态理解和长上下文处理
DALL-E 3 文本 → 图片 文生图
Stable Diffusion 文本 / 图像 → 图片 图像生成与编辑
Sora 文本 / 图像 → 视频 视频生成
Whisper 语音 → 文本 语音识别

这里的“支持模态”还要区分理解和生成。一个模型能理解图片,不代表它能生成图片;能输入音频,不代表它能输出高质量音频。

为什么多模态重要

现实世界不是按单一通道组织的。人类判断一件事,常常同时依赖语言、视觉、声音、时间和结构化记录:看到火焰,听到爆裂声,闻到烟味,结合环境位置,才判断出危险。

AI 走向多模态,不只是多接几个输入端口,而是从“处理符号”走向“处理感知和结构”。文本擅长表达抽象概念,图像和视频保留空间与场景细节,音频保留语气和时间变化,结构化数据保留精确口径和可计算关系。单一模态总会丢掉一部分世界。

多模态模型真正要解决的问题,是让这些不同来源的信息在同一个语义任务里互相补足。

小结

本文原来的主线基本正确,但有三点需要更精确:

  • 文本不是“天然等于语义”,而是经过人类符号系统预抽象,离语义层更近。
  • 数据即使能序列化成文本,也因为 schema、类型、单位、关系和统计口径不同,仍然可以作为不同模态看待。
  • 向量化是大类,embedding 是学出来的稠密语义向量,projector 是跨 embedding 空间的映射层,不是“向量化的向量化”。

多模态的难点不是把所有输入变成数字。所有计算机输入最终都会变成数字。真正难的是:不同模态背后的结构、抽象层次和统计规律不同,模型必须学会把它们放到可以共同推理的语义关系里。

参考资料