《Q-Instruct: Improving Low-level Visual Abilities for Multi-modality Foundation Models》
CVPR2024,arxiv:2023.11
正如开篇之作Q-bench的limitations中作者写道,打算进一步扩展LLDescribe 和 LLVisionQA 数据集,以最终实现可靠的低级可视化指令调整过程,从而进一步提高 MLLM 的低级能力,本研究正是建立了一个指令微调数据集。
0摘要
本文建立了第一个由人类自然语言对低级视觉的反馈组成的数据集Q-pathway。每一个反馈都是对图像低级视觉属性的描述,最终形成一个整体的质量评估。(通过这个描述可以看出feedback由两部分组成:描述+整体质量评估)。Q-pathway数据集包括58K的反馈对应于18793张多源影像。进一步,建立了一个200k的指令数据集Q-instruct,将Q-pathway中的反馈通过GPT转换为不同的查询和响应对(instrcution-response pairs)。
1 介绍
Motivation:尽管已经证实了MLLMs是具有感知和理解图像低级视觉特性的能力,但是在相应这些关于底层视觉的问题时准确率没有很高,为了提升MLLMs对底层视觉感知的准确性,就势必需要一个关注底层视觉信息的大型指令微调数据集来提升大模型的底层视觉感知和评估的能力。
Q-instruct的构建步骤:
step1:Collect human feedbacQ-ks for low-level vision.这对应着Q-pathway的建立过程。让人类详细地描述图像的底层特性,包括blurs、noises、clarity、brightness、position、content等,然后需要基于这个描述对图像质量进行总结(这是一个reasoning的过程)。Q-pathway数据集的18,973 multi-sourced images,每一张至少有3个反馈,平均一个由47个词。
Step2:Convert these feedbacks for instruction tuning. 指令微调数据集的组成部分:①以形容词或名词为答案的question-answer pairs;②yes-or-no question-answer pairs,具有平衡的正答案和负答案;③语义相关的questin-answer pairs;④abcd多选题⑤direct answer⑥通过GPT生成了长对话(与reasoning相关的长对话,例如分析失真的形成等)
2 Related Works
主要讲述了图像质量评价关注的图像底层特性,不再赘述。(以往的特别关注底层视觉特性而不从语义角度评估图像质量评价的方法性能比较一般。近些年的深度学习方法主要从提取深层语义特征的层面来完成IQA任务)
3 the Q-Pathway
3.1 Preparation of Images
图像来源:和Q-bench相似但不相同,Q-bench来自十个源,包括inthewild IQA、Artificial IQA和AI generated,这里去掉了几个人工失真的图像质量评价数据集保留了人工生成失真的COCO衍生数据集。进行了重采样以调整MOS分布到均分50。
3.2 Task Definition: the pathway Feedbacks
讲述了pathway的feedback的设定,详细描述+结论,不再赘述。
3.3. The subjective study process.
主观实验有39名被训练过的被试者,训练材料有:整体质量的较准、描述的较准、图像的MOS,描述的参考属性集,每30张图像被试会强制休息。
3.4. Analysis
下图中有Q-pathway的描述示例。
4 the Q-Instruct
Instruct主要由三个部分组成。
- pathway reasioning:因为pathway数据集中的每个pathway feedback可以作为一个general prompt指令的响应,所以这个58k的Q-pathway数据集可以作为Q-instruct数据集的一个部分。(这里的prompt指令可能并不是构建pathway数据集时使用的真实prompt,但是含义差不多,包括描述+评估?例如:Investigate the image's low-level attributes, and rate an overall opinion about the image quality.)
- VQA:通过GPT将feedbacks转换成76k的Q&A,包括了how question(质量相关的e.g. good/poor, high/low)、what question(语义相关或者底层特性相关的e.g.left/the peacock/the background),以及Yes-or-no question
- Extended Conversations:12k对话。包括失真原因、如何改进摄影技术、向消费者推荐以及其他扩展对话。
5 Low-level Visual Instruction Tuning
本研究验证了两种finetune的效果。一般的MLLM的训练过程分为两个阶段,第一阶段用web data来align visual encoder和LLM,第二阶段用instruct数据集进行微调。这里作者提出两种fine策略,第一种是将Q-instruct加入第二阶段的instruct一起微调,第二种是Q-instruct作为第三阶段单独的微调数据。
6实验
自然而然地,这里对MLLMs微调后的低级视觉感知能力是通过前一篇文章中提出的benchmark的三个数据集进行评估的。而且这也解释了为什么benchmark中有10个源,但是这里只有7个源,因为要在未见过的图像上评估MLLMs的泛化能力。
Baseline models:
Results:
在percption和description能力上的评估结果如下。
一个是在公开数据集上的结果,另一个是在私有数据集上的结果。在所有维度中,我们注意到 Yes-or-No 问题类型的准确性得到了最显著的提高(平均超过 10%)。此外,对失真的改进比其他低级属性(美学、摄影技术)更显着,这表明人类在 Q 通路中提出的主要问题仍然与失真有关。(这也和前文Q-instruct的发现一致,即大模型本身倾向于回答yes,而测试数据集中yes和no的答案是均衡的,所以经过微调后的MLLMs在回答此类问题时准确率上升。)微调后综合效果最好的是InternLMXComposer-VL,提升最大的是LLaVA-v1.5 (7B)。
在相关性 (+0.31) 上,所有调优变体的平均分都超过 1.5/2。相比之下,完整性 (+0.17) 和精度 (+0.04) 的改进不太显著,这意味着类似字幕的指令格式可能不足以满足需要更长响应的低级描述任务。
在IQA上的性能如下表所示。注意到,MLLMs训练的instruct数据并没有IQA数据集中的MOS分,但是仍然取得了很好的性能在mostly seen,在barely或者never中也有一定提升。(这几个数据集seen的比例可以参考Q-pathway从这几个源中采样的比例)
消融实验:
#1:Q-instruct的数据集参与微调的比例越多效果会越好。
#2:作者将多种不同子集组合在一起训练,与传统的任务分离微调进行了比较,发现Q-pathway和 VQAsubset 一起训练效果更好。
#3:如果直接替换第二阶段微调的highlevel数据集效果会不如现在的两种微调方式。
局限性与未来展望:①尽管质量评估和改进和低水平视觉感知能力,但 Q-Instruct 调整的模型在通用任务上的表现有所下降,尤其是以语言为中心的任务,或需要大量推理能力的任务。因此,如果应用于低级视觉感知和理解以外的任务,它们可能会产生不需要的输出。②尽管准确性有所提高,但 Q-Instruct 调整模型的性能仍然比普通人(约 74%)差(LLVisionQA 测试的准确率为 68%-71%),并且可能还不能直接替代人类完成低级相关任务。