[论文解读] VIGC: Visual Instruction Generation and Correction
本文提出 VIGC 框架,使多模态大语言模型能够自主生成并迭代修正高质量的视觉语言指令数据,显著减少幻觉现象。通过结合视觉指令生成(VIG)以生成多样化数据,以及采用迭代 Q-Former 更新策略的视觉指令修正(VIC),VIGC 提升了下游模型性能,在 OKVQA 和 A-OKVQA 上取得最先进结果,准确率提升 1.6%。
The integration of visual encoders and large language models (LLMs) has driven recent progress in multimodal large language models (MLLMs). However, the scarcity of high-quality instruction-tuning data for vision-language tasks remains a challenge. The current leading paradigm, such as LLaVA, relies on language-only GPT-4 to generate data, which requires pre-annotated image captions and detection bounding boxes, suffering from understanding image details. A practical solution to this problem would be to utilize the available multimodal large language models (MLLMs) to generate instruction data for vision-language tasks. However, it's worth noting that the currently accessible MLLMs are not as powerful as their LLM counterparts, as they tend to produce inadequate responses and generate false information. As a solution for addressing the current issue, this paper proposes the Visual Instruction Generation and Correction (VIGC) framework that enables multimodal large language models to generate instruction-tuning data and progressively enhance its quality on-the-fly. Specifically, Visual Instruction Generation (VIG) guides the vision-language model to generate diverse instruction-tuning data. To ensure generation quality, Visual Instruction Correction (VIC) adopts an iterative update mechanism to correct any inaccuracies in data produced by VIG, effectively reducing the risk of hallucination. Leveraging the diverse, high-quality data generated by VIGC, we finetune mainstream models and validate data quality based on various evaluations. Experimental results demonstrate that VIGC not only compensates for the shortcomings of language-only data generation methods, but also effectively enhances the benchmark performance. The models, datasets, and code are available at https://opendatalab.github.io/VIGC.
研究动机与目标
- 为解决高质量视觉语言指令微调数据稀缺的问题,特别是当依赖仅语言模型(如 GPT-4)时。
- 克服现有数据生成方法依赖昂贵人工标注且损失视觉细节的局限性。
- 开发一种自监督框架,使多模态模型能够生成并优化自身指令数据,同时减少幻觉现象。
- 通过在多个基准和模型规模上的全面评估,验证 VIGC 生成数据的有效性。
提出的方法
- VIGC 采用两阶段框架:视觉指令生成(VIG)利用视觉语言模型生成多样化的图像-问题-答案三元组。
- 视觉指令修正(VIC)采用迭代 Q-Former(IQF)更新机制,以修正 VIG 生成的幻觉或不准确回答。
- VIC 模块通过利用模型自一致性与知识对齐,实施迭代优化,以提升答案精确度。
- 该框架在 COCO 和 Objects365 数据集上进行训练,生成 36,781 个 VIGC-LLaVA-COCO 样本和约 180 万个 VIGC-LLaVA-Objects365 样本。
- 生成的数据用于微调 LLaVA 和 InstructBLIP 等模型,并在 MMBench、LLaVA、OKVQA 和 A-OKVQA 上评估性能。
- 探索闭环训练策略,即自生成数据提升模型性能,进而反向提升未来数据质量。
实验结果
研究问题
- RQ1多模态大语言模型是否能在不依赖仅语言模型的情况下,自主生成多样化且高质量的视觉语言指令数据?
- RQ2迭代修正机制是否能有效减少自生成多模态指令数据中的幻觉现象?
- RQ3VIGC 生成的数据是否在提升下游模型性能方面优于传统指令微调数据?
- RQ4VIGC 生成的数据是否能增强模型在需要外部知识的零样本和少样本基准上的表现?
- RQ5数据生成与模型微调的自我改进闭环是否能在多轮迭代中持续带来性能提升?
主要发现
- 使用 VIGC 生成数据进行微调的模型,在 MMBench、LLaVA 和 OKVQA 上分别取得 84.0%、85.8% 和 83.3% 的性能表现,展现出强大的泛化能力。
- 加入 VIC 修正后的数据使 A-OKVQA 准确率提升 1.6%,OKVQA 提升 0.7%,在同规模模型中达到最先进水平。
- 在 LLaVA 与 VIGC 生成数据的混合数据集上微调的模型,表现优于仅使用 LLaVA 数据训练的模型,即使数据总量保持不变。
- 性能提升在不同模型规模(包括 LLaVA-13B)上均被观察到,证实了 VIGC 方法的可扩展性。
- 使用 VIGC 生成数据进行自迭代训练,显著提升了 MMBench 和 LLaVA 上的模型性能,表明具备闭环自我增强的潜力。
- VIC 模块显著减少了幻觉现象,表现为原始 VIG 数据带来的收益微乎其微,而 VIC 优化后数据则带来显著性能增益。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。