
视觉指令调优 原创
摘要
使用机器生成的指令跟随数据对大型语言模型(LLMs)进行指令调优已被证明可以提高其在新任务上的零样本(zero-shot)能力,但在多模态领域,这一想法尚未得到充分探索。我们首次尝试使用纯语言的 GPT-4 生成多模态语言-图像指令跟随数据,并通过在这些生成数据上进行指令调优,引入了 LLaVA:一个连接视觉编码器和语言模型的端到端训练的大型多模态模型,用于通用视觉和语言理解。为了促进未来对视觉指令跟随的研究,我们构建了两个具有多样性和挑战性的应用导向任务的评估基准。我们的实验表明,LLaVA 展示了令人印象深刻的多模态聊天能力,有时在未见图像/指令上表现出与多模态 GPT-4 类似的多模态行为,并在合成多模态指令跟随数据集上取得了 85.1% 的相对分数。当在科学问答(Science QA)数据集上进行微调时,LLaVA 与 GPT-4 的协同作用达到了 92.53% 的新最高准确率。我们公开了 GPT-4 生成的视觉指令调优数据、模型和代码。
1、引言
人类通过多种渠道(如视觉和语言)与世界互动,因为每个渠道在表示和传达某些概念时都有独特的优势,从而有助于更好地理解世界。人工智能的一个核心目标是开发一个通用助手,能够有效地遵循多模态视觉和语言指令,以完成各种现实世界中的任务。
为了实现这一目标,社区见证了语言增强基础视觉模型的新兴兴趣,这些模型在开放世界视觉理解方面表现出强大能力,例如分类、检测、分割和描述,以及视觉生成和编辑。我们建议读者查阅计算机视觉在野外(Computer Vision in the Wild)阅读列表,以获取更最新的文献汇编。在这项工作中,每个任务都由一个单一的大型视觉模型独立解决,任务指令隐含在模型设计中。此外,语言仅用于描述图像内容。虽然这使得语言在将视觉信号映射到语言语义(人类交流的通用渠道)方面发挥了重要作用,但它导致模型通常具有固定的接口,对用户指令的交互性和适应性有限。
另一方面,大型语言模型(LLM)已经证明语言可以发挥更广泛的作用:作为通用接口的通用助手,各种任务指令可以通过语言明确表示,并指导端到端训练的神经助手切换到感兴趣的特定任务以解决它。例如,最近 ChatGPT和 GPT-4的成功展示了对齐 LLMs 在遵循人类指令方面的力量,并激发了对开发开源 LLMs 的极大兴趣。其中,LLaMA是一个开源 LLM,其性能与 GPT-3 相当。Alpaca、Vicuna和 GPT-4-LLM利用各种机器生成的高质量指令跟随样本来提高 LLM 的对齐能力,与专有 LLMs 相比报告了令人印象深刻的性能。重要的是,这一系列工作仅限于文本。
在本文中,我们提出了视觉指令调优,这是首次尝试将指令调优扩展到语言-图像多模态空间,为构建通用视觉助手铺平道路。具体来说,本文的贡献如下:
- 多模态指令跟随数据:一个关键挑战是缺乏视觉-语言指令跟随数据。我们提出了一个数据改革视角和流程,将图像-文本对转换为适当的指令跟随格式,使用 ChatGPT/GPT-4。
- 大型多模态模型:我们通过连接 CLIP的开放集视觉编码器和语言解码器 Vicuna,并基于我们生成的指令视觉-语言数据进行端到端微调,开发了一个大型多模态模型(LMM)。我们的实证研究表明,使用生成数据进行 LMM 指令调优的有效性,并为构建通用指令跟随视觉代理提供了实用建议。当与 GPT-4 组合时,我们的方法在科学问答(Science QA)多模态推理数据集上达到了新的最高水平。
- 多模态指令跟随基准:我们提出了 LLaVA-Bench,包含两个具有挑战性的基准,涵盖了多样化的配对图像、指令和详细的标注。
- 开源:我们向公众公开以下资产:生成的多模态指令数据、代码库、模型检查点和视觉聊天演示。
2、相关工作
多模态指令跟随代理。在计算机视觉中,现有的构建指令跟随代理的工作可以大致分为两类:(i)端到端训练模型,这些模型分别针对每个特定研究主题进行探索。例如,视觉语言导航任务和 Habitat要求具身人工智能代理遵循自然语言指令,并在视觉环境中采取一系列行动以完成目标。在图像编辑领域,给定输入图像和书面指令,告诉代理要做什么,InstructPix2Pix通过遵循人类指令来编辑图像。(ii)一个通过 LangChain/LLMs协调各种模型的系统,例如 Visual ChatGPT、X-GPT、MM-REACT、VisProg和 ViperGPT。尽管这些工作共享构建指令跟随代理的相同目标,但我们专注于开发一个用于多任务的端到端训练的语言-视觉多模态模型。
指令调优。在自然语言处理(NLP)社区中,为了使 LLMs(如 GPT-3、T5、PaLM和 OPT)能够遵循自然语言指令并完成现实世界任务,研究人员探索了 LLM 指令调优的方法,分别导致了 InstructGPT/ChatGPT、FLAN-T5、FLAN-PaLM和 OPT-IML等指令调优的对应版本。事实证明,这种简单的方法可以有效提高 LLMs 的零样本和少样本泛化能力。因此,从 NLP 借鉴这一想法到计算机视觉是很自然的。更广泛地,教师-学生蒸馏思想与基础模型在其他主题(如图像分类)中也得到了研究。Flamingo可以被视为多模态领域的 GPT-3 时刻,因其在零样本任务迁移和上下文学习中的出色表现。其他在图像-文本对上训练的 LMMs 包括 BLIP-2、FROMAGe和 KOSMOS-1。PaLM-E是一个用于具身人工智能的 LMM。基于最近“最佳”开源 LLM LLaMA,OpenFlamingo和 LLaMA-Adapter是开源努力,使 LLaMA 能够使用图像输入,为构建开源多模态 LLMs 铺平了道路。尽管这些模型展现了有希望的任务迁移泛化性能,但它们并未明确使用视觉-语言指令数据进行调优,其在多模态任务中的表现通常不如语言任务。在本文中,我们旨在填补这一空白并研究其有效性。最后,需要注意的是,视觉指令调优与视觉提示调优不同:前者旨在提高模型的指令跟随能力,而后者旨在提高模型适应中的参数效率。
3、GPT 辅助视觉指令数据生成
社区见证了大量公共多模态数据(如图像-文本对)的涌现,从 CC 到 LAION。然而,当涉及到多模态指令跟随数据时,可用的数量有限,部分原因是创建此类数据的过程耗时且不够明确,尤其是当考虑人工众包时。受最近 GPT 模型在文本标注任务中成功的启发,我们提出利用 ChatGPT/GPT-4 为多模态指令跟随数据收集提供支持,基于广泛存在的图像-对数据。
对于一张图像 Xv 及其相关的标题 Xc,自然会生成一组问题 Xq,意图是让助手描述图像内容。我们提示 GPT-4 生成这样的问题列表(详细信息见附录)。因此,将图像-文本对扩展为指令跟随版本的简单方法是:Human: Xq XvAssistant: Xc。尽管构建成本较低,但这种简单的扩展版本在指令和回答中缺乏多样性和深入推理。
为缓解这一问题,我们利用纯语言的 GPT-4 或 ChatGPT 作为强大的“教师”(两者仅接受文本输入),创建涉及视觉内容的指令跟随数据。具体而言,为了将图像编码为其视觉特征以提示纯文本 GPT,我们使用两种类型的符号表示:(i)标题通常从不同角度描述视觉场景;(ii)边界框通常定位场景中的对象,并且每个框编码对象概念及其空间位置。表 1 的上半部分展示了一个例子。
表1:一个用于说明指令遵循数据的示例。上半部分展示了用于提示GPT的上下文,例如标题和方框,下半部分展示了三种类型的回答。请注意,视觉图像并未用于提示GPT,我们在此仅将其作为参考展示。
这种符号表示允许我们将图像编码为 LLM 可识别的序列。我们使用 COCO 图像并生成三种类型的指令跟随数据。表 1 的下半部分每种类型各展示了一个例子。对于每种类型,我们首先手动设计几个例子。这些是我们数据收集过程中唯一的人工标注,并作为上下文学习中的种子示例,用于查询 GPT-4。
- 对话:我们设计了一个助手与询问照片内容的人之间的对话。回答的语气就好像助手正在观看图像并回答问题一样。我们询问了关于图像视觉内容的多样化问题,包括对象类型、对象计数、对象动作、对象位置以及对象之间的相对位置。只考虑有明确答案的问题。详细提示见附录。
- 详细描述:为了包含丰富且全面的图像描述,我们创建了一个问题列表,并提示 GPT-4 进行整理(详细提示和整理过程见附录)。对于每张图像,我们从列表中随机抽取一个问题,让 GPT-4 生成详细描述。
- 复杂推理:上述两种类型专注于视觉内容本身,在此基础上,我们进一步创建了深入推理问题。答案通常需要通过遵循严格逻辑的逐步推理过程来得出。
我们总共收集了 158K 个独特的语言-图像指令跟随样本,包括 58K 个对话、23K 个详细描述和 77K 个复杂推理。我们在早期实验中对 ChatGPT 和 GPT-4 进行了消融实验,发现 GPT-4 在提供高质量指令跟随数据(如空间推理)方面表现更为一致。
4、视觉指令调优
我们在两种主要的实验设置中评估了 LLaVA 在指令跟随和视觉推理能力上的表现:多模态聊天机器人和科学问答(ScienceQA)数据集。我们使用 8× A100 GPU 进行所有模型的训练,并遵循 Vicuna 的超参数设置。我们在经过筛选的 CC-595K 子集上对模型进行预训练,持续 1 个 epoch,学习率为 2e-3,批量大小为 128;然后在提出的 LLaVA-Instruct-158K 数据集上进行微调,持续 3 个 epoch,学习率为 2e-5,批量大小为 32。更多训练细节请参考附录。
表 3:GPT-4 论文中的示例提示,用于比较视觉推理和聊天能力。与 BLIP-2和 OpenFlamingo相比,LLaVA 准确地遵循用户指令,而不是简单地描述场景。LLaVA 的回答比 GPT-4 更全面。即使仅仅被要求描述图像,LLaVA 也能识别图像中的不寻常之处。
| 用户:这张图片有什么不寻常之处?| LLaVA:这张图片的不寻常之处在于,一个人正在一辆面包车或货车的后部熨烫衣服。这不是进行这种活动的典型场所,因为人们通常会在更固定且安全的地方(例如家中)使用普通的熨烫板来熨烫衣服。图中这种在不稳定环境中进行熨烫的临时设置既不安全也不常见。此外,也不清楚这个人是如何在这种不稳定的环境中保持平衡和稳定的。 [开始新对话并清除历史记录] 用户:场景中发生了什么?| LLaVA:图中描绘的是一个人站在繁忙城市街道上的黄色 SUV 车顶上。他手持一个便携式梯子,似乎正在车顶上熨烫衣服。周围场景中还有其他车辆、交通灯和消防栓。此外,附近还有另外两个人,一个人靠近车上的那个人,另一个人则离得更远。站在梯子上的人似乎因为他在移动车辆上熨烫衣服这一不同寻常的选择而吸引了周围人的注意。周围的街道熙熙攘攘,增添了场景的独特性。|
| 用户:这张图片有什么不寻常之处?| GPT-4:这张图片的不寻常之处在于,一个人正在熨烫板上熨烫衣服,而熨烫板被安装在一辆正在行驶的出租车的车顶上。|
| 用户:这张图片有什么不寻常之处?| BLIP-2:一个人坐在黄色出租车的后部。|
| 用户:这张图片有什么不寻常之处?| OpenFlamingo:那个人正在汽车引擎盖上晾干他的衣服。|
5.1 多模态聊天机器人
我们开发了一个聊天机器人演示,以展示 LLaVA 的图像理解和对话能力,并研究 LLaVA 在消化视觉输入和展现指令跟随能力方面的表现。我们首先使用 GPT-4 论文中的示例(见表 3),这些示例需要深入的图像理解。为了进行比较,我们引用了 GPT-4 论文中的提示(prompt)和回答,并查询了 BLIP-2 和 OpenFlamingo 模型检查点以获取它们的回答。
令人惊讶的是,尽管 LLaVA 是在一个较小的多模态指令跟随数据集(约 80K 张独特图像)上训练的,但它在这些示例上展示了与多模态 GPT-4 相似的推理结果。需要注意的是,这些图像对于 LLaVA 来说是领域外的,但 LLaVA 仍然能够理解场景并按照问题指令给出合理的回答。相比之下,BLIP-2 和 OpenFlamingo 更多地集中在描述图像上,而不是按照用户指令以适当的方式回答问题。
定量评估
为了系统地了解 LLaVA 的性能,我们提出了一个定量指标来衡量模型在多模态数据上的指令跟随能力。受的启发,我们利用 GPT-4 来衡量生成回答的质量。具体来说,我们创建了由图像、真实文本描述和问题组成的三元组。候选模型(例如 LLaVA)根据问题和图像预测答案。为了提供理论上限的近似值,我们使用文本形式的真实描述和问题,通过文本版 GPT-4 创建参考预测。在获得候选模型的输出后,我们将问题、视觉信息(以文本描述的形式)以及两个助手生成的回答一起输入到评估器(即文本版 GPT-4)中。它会评估助手回答的相关性、准确性、帮助程度和详细程度,并在 1 到 10 的量表上给出总体评分,更高的分数表示更好的表现。我们还要求它提供全面的解释,以便我们更好地理解模型。我们报告相对于使用真实文本描述作为视觉输入的文本版 GPT-4 模型的相对分数。我们创建了两个基准来评估模型的性能。
LLaVA-Bench (COCO)
我们从 COCO-Val-2014 中随机选择 30 张图像,并使用第 3 节中提出的数据生成流程为每张图像生成三种类型的问题(对话、详细描述、复杂推理),总共 90 个问题。该基准研究模型在视觉输入一致时的行为和能力。我们改变训练数据集以研究不同类型的指令跟随数据的有效性,并在表 4 中展示了结果。首先,与没有指令调优的模型相比,经过指令调优的模型在遵循用户指令方面的能力显著提升了超过 50 个百分点。其次,加入少量详细描述和复杂推理问题可以显著提升模型的整体能力,达到 7 个百分点的提升。此外,它还提升了模型在对话问题上的表现,这表明推理能力的提升可以补充对话能力。最后,我们发现使用所有三种类型的数据可以达到最佳性能,相对分数为 85.1%。
LLaVA-Bench (In-the-Wild)
为了评估模型在更具挑战性的任务和对新领域的泛化能力,我们收集了一组多样化的图像,包括室内和室外场景、表情包、绘画、素描等,总共 24 张图像和 60 个问题,并为每张图像关联了详细的描述和适当的问题。我们在表 5 中比较了 LLaVA、BLIP 和 OpenFlamingo 的表现。得益于视觉指令调优,LLaVA 的表现显著优于 BLIP-2(+29%)和 OpenFlamingo(+48%)。与可以访问真实标签的文本版 GPT-4 相比,LLaVA 在复杂推理问题上达到了令人印象深刻的 81.7% 的表现,总体得分为 67.3%。
局限性
LLaVA-Bench (In-the-Wild) 被设计为具有挑战性,以揭示模型的弱点。我们在表 6 中提供了两个具有关联描述和问题的示例。对于拉面示例(左侧),正确回答餐厅名称需要模型具备广泛的知识覆盖和多语言理解能力;而正确描述配菜则需要模型能够从互联网检索相关的多模态信息。对于冰箱示例(右侧),识别酸奶的品牌需要模型能够处理高分辨率图像并具备广泛的知识覆盖。我们还观察到 LLaVA 的一个有趣失败:当被问及冰箱中是否有草莓味酸奶时,尽管冰箱中只有酸奶和草莓,LLaVA 却回答“是”。这表明,有时 LLaVA 会将图像视为“一组补丁”,而无法把握图像内的复杂语义。我们希望 LLaVA 能作为基准上的一个坚实基线,我们的发现能够启发未来的研究,开发出更强大的多模态模型。
5.2 ScienceQA
ScienceQA 包含 21k 个多模态多项选择题,涵盖了 3 个学科、26 个主题、127 个类别和 379 项技能的丰富领域多样性。该基准数据集分为训练集、验证集和测试集,分别包含 12726、4241 和 4241 个样本。我们考虑了两种代表性方法,包括 GPT-3.5 模型(text-davinci-002)以及是否使用链式思维(Chain-of-Thought, CoT),LLaMA-Adapter,以及当前该数据集上的最佳方法——多模态链式思维(Multimodal Chain-of-Thought, MM-CoT)。更多基线结果请参考。
表 7:ScienceQA 数据集上的准确率(%)。问题类别:NAT = 自然科学,SOC = 社会科学,LAN = 语言科学,TXT = 文本上下文,IMG = 图像上下文,NO = 无上下文,G1-6 = 1-6 年级,G7-12 = 7-12 年级。† 文本版 GPT-4,我们的评估。我们的新模型组合文本版 GPT-4 在所有类别上都显著提升了性能,达到了新的最佳水平。
对于 LLaVA,我们使用 CLIP 视觉编码器的最后一层之前的特征,让模型先预测推理过程,然后预测答案,并训练了 12 个 epoch。它达到了 90.92% 的准确率,非常接近当前的最佳水平 91.68%。为了探索 LLM 的极限,我们还使用 2-shot 上下文学习提示 GPT-4,并达到了 82.69% 的准确率,与 75.17% 的 GPT-3.5 相比,绝对提升了 7.52%。对于大量问题,我们注意到 GPT-4 仅仅因为报告没有足够的上下文(如图像或图表)而失败。我们考虑了两种方案来组合我们的模型和 GPT-4 的结果。(i)GPT-4 补全。每当 GPT-4 无法提供答案时,我们使用我们方法的预测。这种方案达到了 90.97% 的准确率,几乎与单独应用我们的方法相同。(ii)GPT-4 作为裁判。每当 GPT-4 和 LLaVA 产生不同答案时,我们再次提示 GPT-4,要求它根据问题和两个结果提供最终答案。这种方案的精神与 CoT 类似,但结合了另一个模型的外部知识。令人惊讶的是,这种方案在所有问题类别上都能提供一致的改进,并达到了新的最佳准确率 92.53%。有趣的是,文本版 GPT-4(无法处理图像)通过这种方式提升了模型在以图像为上下文的问题上的整体性能。这是因为这些问题中的一些实际上并不需要图像上下文来得出正确答案。GPT-4 裁判能够识别这些情况,并纠正 LLaVA 一些错误。附录中给出了示例。据我们所知,这是首次使用 GPT-4 进行模型组合。我们希望这一发现能够鼓励未来的研究探索更有效的方法,以利用 LLM 进行模型组合。
表 8:ScienceQA 上的设计选择消融实验(%)。与最佳变体的差异以红色文本显示。
视觉特征:我们尝试使用 CLIP 视觉编码器的最后一层特征,结果准确率为 89.96%,比最后一层之前的特征低 0.96%。我们推测这是因为 CLIP 的最后一层特征可能更关注图像的全局和抽象属性,而最后一层之前的特征可以更关注局部属性,这些局部属性对于理解特定图像细节很有用。
链式思维:为了决定模型预测中答案和推理过程的顺序,我们运行了两种变体,发现先预测答案的变体在 12 个 epoch 后达到了 89.77% 的最佳准确率,而先进行推理的变体可以在 6 个 epoch 内快速达到 89.77% 的准确率,但后续训练没有进一步提升。训练 24 个 epoch 也没有提升性能。我们得出结论,类似 CoT 的推理优先策略可以显著提升收敛速度,但对最终性能的贡献相对较小。
预训练:我们跳过预训练阶段,直接从头开始在 ScienceQA 上训练——性能下降到 85.81% 的准确率。5.11% 的绝对下降表明预训练阶段的重要性,它在对齐多模态特征的同时保留了大量预训练知识。
模型大小:我们保持所有配置与最佳的 13B 模型相同,训练了一个 7B 模型。结果准确率为 89.84%,比 90.92% 低 1.08%,这表明模型规模的重要性。
6、结论
本文展示了视觉指令调优的有效性。我们提出了一个基于 GPT-4 的自动流程,用于创建语言-图像指令跟随数据,并基于这些数据训练了 LLaVA,一个多模态模型,能够按照人类意图完成视觉任务。它在 ScienceQA 上微调后达到了新的最佳准确率,并在多模态聊天数据上微调后展现出卓越的视觉聊天能力。此外,我们提出了第一个用于研究多模态指令跟随能力的基准。本文是视觉指令调优的初步尝试,主要关注现实任务。对于 LLaVA 在学术基准测试上的更多定量结果,请参考。我们希望我们的工作能够激发未来在构建更强大的多模态模型方面的研究。
本文转载自公众号AIRoobt ,作者:HT Liu et al
原文链接:https://mp.weixin.qq.com/s/-TJtD2pB0sJu0FJ44Szb4A
