AB
AiBoss
Wiki

什么是视觉指令微调(Visual Instruction Tuning)?——让多模态模型学会听懂图像指令的训练方法

视觉指令微调是一种把「指令微调」从纯文本扩展到图像—语言多模态场景的训练方法:用机器生成的多模态指令跟随数据训练模型,使其能按自然语言指令理解图像并作答。该方法由 Haotian Liu 等人在论文《Visual Instruction Tuning》中提出,并由此得到 LLaVA 模型;后续工作《Improved Baselines with Visual Instruction Tuning》进一步给出了更强的基线配置。

视觉指令微调(Visual Instruction Tuning)是一种把指令微调(instruction tuning)从纯文本领域扩展到图像—语言多模态领域的训练方法:它用大量「图像 + 自然语言指令 + 期望回答」形式的数据去训练一个多模态模型,使模型能够按照用户的文字指令理解图像内容并给出回答。它要解决的问题是:在它出现之前,指令微调主要作用于纯语言模型,多模态模型如何获得通用的、跟随指令的视觉问答能力,探索得还很少。

为什么重要

论文《Visual Instruction Tuning》的摘要指出,用机器生成的指令跟随数据对大型语言模型(Large Language Model, LLM)做指令微调,已经能提升模型在新任务上的零样本(zero-shot)能力,但这一思路在多模态领域「较少被探索」。换言之,纯文本模型可以通过指令数据获得通用的任务跟随能力,而视觉—语言模型当时更多依赖针对特定任务分别构造的数据与训练流程,缺少一种统一的方式来教会模型「听懂」关于图像的自由形式指令。

这一方法的重要性体现在两个层面。第一,它把「指令跟随」这一训练范式带进了多模态理解,使同一个模型可以处理多种以图像为输入的开放式请求,而不是为每类视觉任务单独设计接口。第二,它给出了一条可复制的数据构造路径:用只处理语言的 GPT-4 来生成多模态的指令跟随数据,从而绕开人工标注多模态指令数据的高成本。论文作者称这是首次尝试用纯语言的 GPT-4 生成多模态语言—图像指令跟随数据。

工作机制

按照论文的描述,视觉指令微调的核心做法可以拆成以下几个要点。

  • 用语言模型生成多模态指令数据。论文使用只处理语言的 GPT-4 来生成多模态的语言—图像指令跟随数据。也就是说,指令与回答的文本部分由语言模型产出,再与图像配对,形成训练样本。
  • 端到端训练一个连接视觉编码器与语言模型的多模态模型。论文由此提出 LLaVA(Large Language and Vision Assistant),它是一个端到端训练的大型多模态模型,把视觉编码器(vision encoder)与 LLM 连接起来,用于通用的视觉与语言理解。
  • 在生成的数据上做指令微调。模型在上述生成的指令跟随数据上进行指令微调,从而获得对未见过的图像与指令作出回应的能力。
  • 跨模态连接器的设计。后续论文《Improved Baselines with Visual Instruction Tuning》指出,LLaVA 中全连接(fully-connected)的视觉—语言跨模态连接器「出乎意料地强大且数据高效」。该文对 LLaVA 做了简单修改:使用 CLIP-ViT-L-336px 配合 MLP 投影(MLP projection),并加入面向学术任务的 VQA 数据以及简单的回答格式提示(response formatting prompts)。

需要强调的是,上述关于连接器「强大且数据高效」的判断出自《Improved Baselines with Visual Instruction Tuning》这篇论文,是作者对其实验配置的评价,而非整个领域的定论。

典型例子

素材中出现的最直接例子是 LLaVA 本身。论文《Visual Instruction Tuning》称,早期实验显示 LLaVA 表现出令人印象深刻的多模态对话能力,在未见过的图像与指令上有时会展现出多模态 GPT-4 的行为;在一个合成的多模态指令跟随数据集上,它相对 GPT-4 取得了 85.1% 的相对分数。论文还报告,在 Science QA 上微调时,LLaVA 与 GPT-4 的协同达到了 92.53% 的新最先进准确率。论文同时公开了 GPT-4 生成的视觉指令微调数据、模型与代码库。

第二个例子来自后续工作《Improved Baselines with Visual Instruction Tuning》。该文称,经过上述简单修改后建立的更强基线在 11 个基准上达到最先进水平;其最终的 13B 检查点仅使用 120 万条公开数据,并在单个 8 卡 A100 节点上约 1 天完成完整训练。作者表示,希望这能让最先进的大型多模态模型研究更易开展。这些数字均为该论文自述的实验结果。

边界与常见误解

首先,视觉指令微调不等于「模型天然具备视觉推理能力」。它是一套训练数据的构造与训练流程,模型的能力上限仍受视觉编码器、语言模型以及数据质量约束。论文中报告的对比分数与准确率,都是在特定数据集与特定设置下得到的,不能直接外推到任意图像与任意任务。

其次,容易被误解为「指令数据必须由人工精细标注」。恰恰相反,原始论文的出发点之一就是用只处理语言的 GPT-4 自动生成多模态指令数据,以降低数据获取成本;但这也意味着数据分布受生成模型影响,其覆盖范围与偏差需要单独评估。

第三,关于「全连接连接器足够强大且数据高效」这一说法,应理解为《Improved Baselines with Visual Instruction Tuning》作者在其修改配置下得到的结论,而不是说任何连接器设计都能取得同样效果。该文的改进还包括更换视觉编码器规格、加入学术任务 VQA 数据与格式提示,这些改动是作为一个组合被报告的。

最后,视觉指令微调针对的是图像—语言的多模态理解与对话,素材并未涉及它在视频、音频或其他模态上的适用性,也不涉及它在具体产品中的部署情况,因此不宜把这些外推当作该方法的已知结论。

参考资料