多模态大模型 · 原理交互图解
多模态大模型如何"看懂"图片
它既不会"看",也没有眼睛。所谓识别图片,本质是把图像变成一串"视觉词",塞进本来只会处理文字的大语言模型里,让它"读图说话"。下面用多张可交互图解拆开看。
01一句话原理
大模型原本只认文字(Token)。要让它认图,关键是加一个"翻译官":把图片切成小块、编码成一串向量(视觉 Token),再投影到大模型能理解的"词向量空间",最后和文字一起喂给 LLM 去理解和回答。
核心类比:对 LLM 来说,一张图 ≈ 一段特殊的"外语句子"。视觉编码器负责把图"翻译"成这种外语,投影层负责把它"转写"成 LLM 母语(词向量),LLM 再像读文章一样读它、并用中文回答你。
02图片是怎么被"切开"的(互动)
图像本质是一个由像素组成的矩阵(比如 224×224 个格子,每个格子有 RGB 颜色)。Transformer 不擅长直接吃像素,所以先把它切成规则的小方块——Patch(图像块)。每个 Patch 会被压成一个向量,成为后续处理的"视觉词"。
👉 点击下面的按钮改变切块粒度,再点一下任意小块,看它如何变成一串向量(示意):
图像尺寸
224 × 224
切块粒度(Patch 数/边)
4 × 4
→ 视觉 Token 数量
16 个
每个 Token 是一个 768 维(示意)向量,而非一个字。
选中 Patch 的向量(点击图中方块):
未选中 — 点图中任意一块试试
为什么是向量而不是像素?一个 224×224×3 的像素块有 15 万个数字,又冗余又难学。切成十几个 Patch、再压缩成少量"语义向量",既降维又保留"这块大概是什么"(边缘、纹理、颜色、形状),这正是 Transformer 擅长处理的序列形式。
03三大核心部件(点击查看)
一个能看图的多模态大模型,通常由三部分拼起来。点下面的卡片看每部分干什么:
🔗
对齐投影层
Projector / Adapter
04视觉 Token 是怎么"进"LLM 的
投影之后,每个视觉 Token 就是一个和文字词向量同维度、同空间的向量。于是 LLM 的输入序列里,可以像插文字一样插入一串"图像占位符",例如:
输入序列 = [ <image> 🟦🟦🟦…(N个视觉Token) </image> ] + [ 这张图里有什么? ]
LLM 完全不知道这些是"图像",它只看到一串特殊 Token,和文字 Token 一样参与自注意力计算——每个词都能"看到"每个视觉 Token,从而把图上的信息和问题关联到一起。最终自回归地吐出答案。
关键一步——投影层:如果缺了它,视觉向量和文字向量"语言不通",LLM 读不懂。投影层(如 LLaVA 的一个小 MLP,或 BLIP-2 的 Q-Former)就是那个"同声传译",把"图像语"翻译成"文字语"。很多方案里视觉编码器和 LLM 都冻结不动,只训练这薄薄一层就能获得看图能力。
05CLIP:让"图"和"文"说同一种语言(互动)
很多多模态模型的根基是 CLIP:它用"对比学习"把图像和文字塞进同一个向量空间——匹配的图文靠得近,不匹配的推远。这样模型就学会了"图义"和"词义"的对齐,也就能零样本认图。
👉 选一个你认为和左边图片最匹配的文字描述,看相似度条:
🐱 一只趴着的橘猫
🌳 有太阳和树的风景
🚗 一辆红色汽车
当前:🌳 有太阳和树的风景(高匹配)
为什么重要:CLIP 训练时看了 4 亿对"图+说明文字",学会的不是"这是树",而是"树的画面"和"'树'这个词"在向量上靠近。于是你给它没见过的图,它也能靠"最近的文字"判断类别——这就是零样本识别,也是后续 VLM 的"视觉常识"来源。
06训练两阶段
🧊冻结主干,只练"翻译"
视觉编码器(ViT)和 LLM 通常保持冻结(不更新参数),只用海量"图+文"对训练中间的投影层,把视觉特征对齐到 LLM 的词空间。便宜、稳定、不易遗忘。
💬教它"按指令看图答问"
用多模态对话数据(问题+图+答案)做指令微调,让模型学会"描述、计数、推理、对比"等具体能力,从"能对齐"变成"会对话"。这一步常用 GPT-4 生成的高质量问答对来蒸馏。
| 阶段 | 训练对象 | 数据 | 目标 |
| 对齐预训练 | 仅投影层(其余冻结) | 大规模图-文对 | 视觉↔语言同空间 |
| 视觉指令微调 | 投影层 + LLM(轻量) | 多模态对话/QA | 听懂指令、会答问 |
07一次"看图问答"的完整流程(分步)
点下面步骤,看从你发图到出答案,中间发生了什么:
08它到底为什么能"看懂"
🎯编码器学到语义
ViT 在海量图文上预训练,每个 Patch 向量已携带"边缘/物体/场景"等语义,而非裸像素。
🌉投影打通两种语言
投影层让"图像语"和"文字语"落在同一空间,LLM 才能读懂视觉 Token。
🧩LLM 提供常识与推理
LLM 本身的世界知识 + 注意力关联,把"图上的内容"和"你的问题"连起来,生成答案。
一句话:"看懂"= 编码器提取语义特征 + 投影做语言翻译 + LLM 用常识推理回答。它不是"看见"了画面,而是"读到"了画面被翻译成的一串向量,再结合自己学过的知识作答。
09局限与误区
误区:它有眼睛:其实全程是向量计算,没有"看见"的主观体验。
空间/细节弱:数清几个物体、读准小字 OCR、精确定位常被搞错。
会幻觉:图里没有的东西也可能被自信地编出来。
不真正理解因果:能描述"猫在桌上",未必理解"为什么/会怎样"。
对抗脆弱:人眼无感的小扰动可能让它判错。
依赖训练分布:罕见物体、新组合容易翻车。
实用建议:高精度的"看图数数/读小字/定位"别只信多模态模型,配合专用 OCR / 检测模型更稳;关键场景要求它给出依据(引用区域)并人工复核。
10一张图总结
所以,多模态大模型识别图片的秘密不在于"看",而在于把图翻译成 LLM 读得懂的语言。