讲解稿 · 第 10 章 第 02 节 · 视觉语言模型 VLM¶
口播时长: 约 12 分钟|建议语速: 中速, 公式处停两拍|字数: 约 2600 字
承 Ch10 §01 多模态表征 / CLIP → Ch10 §02 视觉语言模型 (VLM) → Ch10 §03 视觉分词 (下游章节预告)
导语 (约 70 秒)¶
CLIP 是双塔结构, 图像和文本各自编码、比较相似度——只能检索, 不能对话。用户想"看图说话", "把图翻译成中文", "图里有多少只猫"——这些 CLIP 做不到。
需要把视觉信息喂给 LLM。这就是视觉语言模型 (Vision-Language Model, VLM)。这一节讲 4 件事: ① 为什么要把视觉接到 LLM;② 三种主流投影方案对比;③ 视觉指令微调;④ 评测。听 12 分钟。
一 · 为什么要做 VLM (约 2 分钟)¶
CLIP 出现后, 一个问题浮出水面: 能不能让 LLM 看图说话。
GPT-3 是纯文本 LLM, 看不了图。如果扩展成"看图 + 文本 → 文本", 就能: - 看图写文章 - VQA (Visual Question Answering) - Image Captioning - DocVQA (文档问答) - 多模态推理
这需要把视觉编码器 (CLIP / ViT) 的输出, 桥接到 LLM 的输入嵌入空间。关键挑战: 视觉 patch 数 256, 每个 1024 维; LLM 输入嵌入维度可能只有 4096 (LLaMA-7B); LLM 上下文长度有限 (4K / 8K / 32K)。所以不能直接拼。
二 · 三种主流投影方案 (约 5 分钟)¶
2.1 LLaVA 风格: 线性投影¶
最简单粗暴: 一层线性层把视觉 patch 嵌入 (1024 维) 投到 LLM 维度 (4096 维)。 - 公式: \(z_v' = W \cdot z_v, \quad W \in \mathbb{R}^{1024 \times 4096}\) - 视觉 256 个 patch 就变 256 个 LLM token 拼到 prompt - 优点: 几乎无延迟损失, 工程简单, 可以端到端微调 - 缺点: 视觉序列长, 占用 LLM 上下文; 显存压力
2.2 BLIP-2 风格: Q-Former¶
Salesforce 2023 年的 BLIP-2 用更精巧的设计——Q-Former: - 32 个 learnable query token (32 × 768 维) - 与 ViT 输出做 cross-attention (多轮 32 层) - 最终输出压缩成 32 个 token 给 LLM - 训练用三任务: ITC (对比) + ITM (匹配) + ITG (生成) - 优点: 视觉 token 压缩到 32 个, 节省 LLM 上下文 - 缺点: 引入了有损压缩, 训练复杂
2.3 Flamingo 风格: Perceiver Resampler¶
DeepMind 2022 年的 Flamingo 用 Perceiver Resampler: - 跨 transformer 块压缩视觉信息 - 输出 64 个 token - 支持 few-shot: 给几张示例图 + 文 → 模型学会 - 优点: few-shot 能力最强 - 缺点: 训练最复杂, 推理慢
2.4 选型对比¶
| 方案 | 视觉 token | 训练难度 | 延迟 | few-shot |
|---|---|---|---|---|
| LLaVA 线性 | 256 | 低 | 50-100ms | 弱 |
| BLIP-2 Q-Former | 32 | 中高 | 80-150ms | 中 |
| Flamingo Perceiver | 64 | 高 | 150-250ms | 强 |
主流选择: LLaVA 系列 (LLaVA-1.5, LLaVA-NeXT, LLaVA-OneVision)。简单有效, 工业首选。
三 · 视觉指令微调 (Visual Instruction Tuning) (约 3 分钟)¶
VLM 训完只是 "图文对齐", 还没学会"看图回答任意问题"。
需要视觉指令微调: 1. 用 GPT-4V (或 GPT-4o) 看图, 生成 158K 个 (Q, A) 对——这是 synthetic instruction 2. 例: 图中画了什么? → A: 图中是一只趴在窗台上的橙色虎斑猫 3. 用这 158K 微调 LLaVA (基于 Vicuna) 4. 学到 "看图回答问题" 能力, 还能 follow 中文 prompt
LLaVA 中文版: 字节的 Qwen-VL / 上海 AI Lab 的 InternVL / 智谱的 CogVLM。中文 prompt 工程是另一个独立话题。
四 · 评测基准 (约 2 分钟)¶
VQAv2 (闭集 4 选 1 VQA): - test-dev, GPT-4o 85%, LLaVA-1.5-13B 80%, 人类 95%
MMMU (大学级图文): - 30 学科 11.5K 题, GPT-4o 69%, 人类 88% - 显著体现: 多模态推理 仍远落后人类
MMHal-Bench (多模态幻觉): - 96 张图, 8 类幻觉问题 - 模型声称"图里有 X", 但 X 不在图里 → 错 - GPT-4o (with mitigation) 7%, 没缓解 14%
ChartQA / DocVQA: - 图表和文档问答, 工业关注 - LLaVA 60%, GPT-4V 80%+
跨章衔接 (60 秒)¶
VLM 把视觉送进 LLM 让其看图说话。§03 视觉分词走另一条路: 把图像编码成离散的 token 序列, 像文本 token 一样喂给 transformer 自回归生成。两条路殊途同归——都把"图像"变成"类似文本的东西"给 decoder 类模型处理。这正是 GPT-4o 这种统一架构的核心思路: 所有模态都先 token 化再处理, 不管是文本字符、音频波形还是图像 patch。