8.1 视觉问答 VQA 与图像理解 视觉问答(Visual Question Answering, VQA)是多模态大模型最经典的应用——给定一张图像与一个自然语言问题,模型需要输出正确答案。VQA 看似简单,实际上考验了模型的感知、对齐、推理、生成全部能力。 一、VQA 任务定义 标准格式 VQA vs 图像分类 VQA 与传统图像分类的根本差异: 维度 | 图像分类 | VQA 输出 | 固定类别(如 1000 类) | 开放性自然语言 问题 | 固定("这是什么") | 任意自然语言问题 输入 | 仅图像 | 图像 + 问题 评估 | top-1 准确率 | 答案匹配(多种表达都算对) VQA 是真正的开放性任务——同一个图像可以问无限多种问题。
视觉问答(Visual Question Answering, VQA)是多模态大模型最经典的应用——给定一张图像与一个自然语言问题,模型需要输出正确答案。VQA 看似简单,实际上考验了模型的感知、对齐、推理、生成全部能力。
输入: 图像 + 自然语言问题 输出: 自然语言答案 示例: 图像: <一张餐厅照片> 问题: "图中有几张椅子?" 答案: "四张"
VQA 与传统图像分类的根本差异:
| 维度 | 图像分类 | VQA |
|---|---|---|
| 输出 | 固定类别(如 1000 类) | 开放性自然语言 |
| 问题 | 固定("这是什么") | 任意自然语言问题 |
| 输入 | 仅图像 | 图像 + 问题 |
| 评估 | top-1 准确率 | 答案匹配(多种表达都算对) |
VQA 是真正的开放性任务——同一个图像可以问无限多种问题。
VQA 问题可以分为多种推理类型,每种对模型能力要求不同:
直接从图像感知答案:
Q: "图中的猫是什么颜色?" A: "橘色"
只要求模型准确识别图像内容。
Q: "图中有几个人?" A: "三个"
要求模型准确定位物体并计数。这是 MLLM 的传统弱项。
Q: "桌子在窗户的左边还是右边?" A: "左边"
要求模型理解物体之间的空间关系。
Q: "这张图是用什么材料做的?" A: "木头"
要求模型识别物体的属性,可能需要常识推理。
Q: "图中的人在做什么? 为什么?" A: "他在打伞,因为正在下雨"
要求模型结合视觉与常识推理。
Q: "图中招牌上写的是什么?" A: "星巴克咖啡"
要求模型识别图像中的文字(OCR 能力)。
Q: "根据这份财报,公司今年的利润是多少?" A: "1.2 亿元"
要求模型理解文档结构、表格、图表。这是 DocVQA、ChartQA 等基准评估的能力。
Q: "如果图中的人都站起来,谁会先到门口?" A: "靠门最近的人,即左侧第二位"
要求多步推理:识别人 → 判断位置 → 推算距离 → 给出结论。
早期 VQA 模型是专用架构:
[图像] → CNN → 视觉特征 ↓ [问题] → LSTM → 问题特征 → 注意力融合 → 分类头 → 答案
代表:VQA-1/2 模型、MCAN、LXMERT。
特点:
ViLBERT、ALBEF、BLIP 等模型把 VQA 作为多任务之一:
[图像] + [问题] → 融合编码器 → 生成答案
特点:
LLaVA、GPT-4V、Qwen-VL 等:
[图像] + [问题] → MLLM → 自然语言答案(含推理过程)
特点:
当代 VQA 几乎都被 MLLM 取代——专用 VQA 模型只在论文基准里出现。
同一个问题可能有多种正确表达:
Q: "图中的猫是什么颜色?" 正确答案: "橘色" / "橙色" / "橘黄色" / "orange" / "ginger"
简单的字符串匹配会低估模型能力。
有些问题没有唯一正确答案:
Q: "这张图给人什么感觉?" A1: "宁静" / A2: "孤独" / A3: "平和"
这些主观问题难以客观评估。
模型可能给出流畅但错误的答案:
图: 一只猫 Q: "图中是什么动物?" 错误答案: "一只狗" (幻觉)
POPE 等基准专门评估这种幻觉。
主流 VQA 基准:
| 基准 | 任务类型 | 难度 | 特色 |
|---|---|---|---|
| VQAv2 | 通用 VQA | 中 | 经典基准,规模大 |
| GQA | 组合推理 | 中-高 | 强调场景图推理 |
| ScienceQA | 科学问答 | 中-高 | 含图科学题 |
| TextVQA | 文字 VQA | 中 | 测 OCR 能力 |
| DocVQA | 文档 VQA | 高 | 测文档理解 |
| ChartQA | 图表 VQA | 高 | 测图表理解 |
| OK-VQA | 常识 VQA | 高 | 需要外部常识 |
| MMBench | 综合 | 高 | 中英文多任务 |
| MMMU | 学科综合 | 极高 | 大学多学科 |
| MathVista | 数学视觉 | 极高 | 视觉数学推理 |
| MM-Vet | 综合 | 高 | 评估综合能力 |
MMMU、MathVista 等高难基准是区分顶级模型的关键。GPT-4o、Gemini 2.x 在这些基准上表现最好,开源模型仍有差距。
让模型先展示推理过程,再给出答案:
Q: "图中的猫比狗大吗?" 普通回答: "不,狗更大" CoT 回答: "首先,我需要识别图中的猫和狗。 其次,比较它们的大小。 从图中看,狗占据的画面更大,视觉上更高。 因此,狗比猫大。 答案: 不,狗更大。"
CoT 让模型把推理过程外显,有两个价值:
让模型学会 CoT 需要:
LLaVA-NeXT、Qwen2-VL 等都支持 CoT 推理,在 MMMU、MathVista 等推理基准上 CoT 显著提升效果。
VQA 的一个延伸任务是视觉定位(Visual Grounding)——不仅回答问题,还指出答案在图像中的位置:
Q: "图中的猫在哪里?" A: "[bounding box: (120, 80) - (300, 250)] 猫在这个区域"
这要求模型不仅能识别,还能输出精确的空间坐标。代表任务:
CogVLM、Shikra、Ferret 等模型在 grounding 上有独到之处。
VQA 在视频场景的扩展——给一段视频 + 问题,输出答案:
视频: <一段烹饪视频> Q: "视频里的人最后做了什么?" A: "把蛋糕放进烤箱"
视频问答额外要求时序理解——模型需要跟踪视频中事件的发展。代表基准:
LLaVA-OneVision、Qwen2-VL、Gemini 1.5 等支持视频问答,但精度仍远低于图像 VQA。
VQA 能力支撑了大量实际产品:
图: 用户上传图片 Q: "这张图是否包含暴力内容?" A: "是" / "否"
图: 视障人士拍摄的环境 Q: "前方有什么障碍物?" A: "前方 2 米处有一个垃圾桶"
Be My Eyes、Google Lookout 等产品使用 GPT-4V 等模型。
图: 学生的数学作业 Q: "这道题的解答是否正确?" A: "第二步计算有误,正确答案是..."
图: 用户拍摄的商品 Q: "这是什么牌子? 大概多少钱?" A: "这是 Nike Air Force 1,零售价约 800 元"
图: X 光片 Q: "图像中是否有异常?" A: "右下肺可见一片模糊阴影,建议进一步检查"
(注:医疗场景需要专业模型,不能用通用 MLLM 直接诊断)
当前模型多处理短视频(< 1 分钟),长视频(整部电影、整堂课)仍是挑战。Gemini 1.5 等支持百万 token 上下文,是这一方向的关键。
AR/VR、机器人等场景需要模型理解 3D 空间,而不仅是 2D 图像。这是具身智能的关键。
实时视频流(如机器人相机、视频通话)需要低延迟的 VQA,对模型推理效率要求高。
医疗、法律、金融等专业领域的 VQA 需要专业知识,通用 MLLM 需要领域适配。
让模型不仅给出答案,还能解释为什么——这是 CoT 的进一步发展。
VQA 是多模态大模型最经典的应用,从感知、计数到推理、文档理解,覆盖广泛能力。当代 MLLM(LLaVA、GPT-4V、Qwen-VL)几乎完全取代了专用 VQA 模型。CoT 推理让模型具备可解释性,grounding 让模型能定位区域。视频问答、3D 理解、专业知识是未来方向。
下一节(8.2)我们看多模态生成的核心——文生图模型,特别是 Stable Diffusion 如何把 Diffusion 与 LLM 结合。