LAVE:在 Docmatix 上使用 LLM 进行零样本 VQA 评估——我们还需要微调吗?
在开发 Docmatix 的过程中,我们注意到在 Docmatix 上微调 Florence-2 在 DocVQA 上表现出色,但在基准测试中得分较低。为了提高性能,我们不得不进一步在 DocVQA 上微调模型,以学习基准测试所需的语法。有趣的是,这种额外的微调在人类评估者看来表现更差,这就是为什么我们主要将其用于消融研究,并发布了仅在 Docmatix 上训练的模型以供更广泛的使用。
尽管生成的答案在语义上与参考答案一致,如图 1 所示,但它们仍然得分很低。这引发了这些问题:我们应该微调模型以改进这些指标,还是应该开发更符合人类感知的新指标?

图 1:Docmatix 数据集中零样本生成和参考答案的 t-SNE 可视化
引言
我们社区最近专注于分布外 (OOD) 评估,利用零样本迁移到未见的 VQA 任务或在一个 VQA 数据集上进行微调并在另一个数据集上进行评估等方法。随着 Docmatix、SciGraphQA、SimVQA 等用于微调视觉语言模型 (VLM) 的合成数据集的兴起,这种转变变得越来越重要。
传统上,VQA 准确性一直是评估模型性能的主要指标。它依赖于模型的预测答案与人类标注的一组参考答案之间的精确字符串匹配。该指标效果良好,因为 VQA 评估遵循独立同分布 (IID) 范式,其中训练和测试数据分布相似,允许模型有效适应详细信息请参见此处。
在 OOD 设置中,生成的答案可能与参考答案不匹配,尽管由于格式、特异性或解释的差异,它们可能是正确的。图 1 完美地说明了这种范式,其中我们比较了合成数据集中的零样本生成标题与参考标题。对于指令生成的K数据集及其人工策展的对应数据集来说,情况尤其如此。一些方法试图使答案格式与参考文献对齐,但这只解决了症状,而不是评估指标有缺陷的根本原因。虽然人工评估是可靠的,但它成本高昂且不可扩展,这凸显了需要更好地与人类判断对齐的指标。
方法
Docmatix是最大的合成 DocVQA 数据集,从人工整理的文档数据集PDFA生成。它比以前可用的数据集大 100 倍。人工整理的对应数据集是 DocVQA,它作为文档理解 VQA 模型的评估基准。在这篇文章中,我们将使用 Docmatix 的子集,其中包含大约 200 个测试样本,可在此处下载:Docmatix-zero-shot-exp。


图 2:Docmatix 和 DocVQA 测试集中的问答对示例。注意:此处未显示相应的图像。
虽然 Docmatix 和 DocVQA 中的问答对内容相似,但它们的风格却大相径庭。传统的指标,如 CIDER、ANLS 和 BLEU,在这种语境下的零样本评估中可能过于严格。受 t-SNE 中观察到的嵌入相似性(图 1)的启发,我们决定使用不同的评估指标。在这篇文章中,我们考虑使用 LAVE(LLM 辅助 VQA 评估)指标,以更好地评估这个未见但语义相似的数据集上的泛化能力。



图 3:Docmatix 和 DocVQA 数据集中问题、答案和图像特征的 t-SNE 可视化



图 5:Docmatix 和 DocVQA 数据集中问题、答案和图像特征的 t-SNE 可视化
在我们的评估中,我们选择 MPLUGDocOwl1.5 作为基线模型。该模型在原始 DocVQA 数据集的测试子集上取得了 84% 的 ANLS 分数。然后,我们对 Docmatix 的子集(包含 200 张图像)进行了零样本生成。我们使用 Llama-2-Chat-7b 对答案进行评分。
关于 LAVE
我们遵循了论文中概述的程序。VQA 评估被框定为一种答案评级任务,适用于 LLM 的上下文学习。我们使用 1 到 3 的评级量表来考虑模棱两可的问题或不完整的答案。提示符包括任务描述、几个输入/输出演示以及测试示例的输入。
我们对任务描述进行了结构化,并加入了“评分前给出理由”的指令,以展示所分配评分的理由。每个演示都包含一个问题、一组参考答案、候选答案、答案评分以及评分的解释。我们还加入了“只提供一个评分”的指令,以避免逐句分析,这有时会导致多个评分。
task_description = """You are given a question, a set of gold-standard reference answers written by
experts, and a candidate answer. Please rate the accuracy of the candidate answer for the question
considering the reference answers. Use a scale of 1-3, with 1 indicating an incorrect or irrelevant
answer, 2 indicating an ambiguous or incomplete answer, and 3 indicating a correct answer.
Give the rationale before rating. Provide only one rating.
THIS IS VERY IMPORTANT:
A binary question should only be answered with 'yes' or 'no',
otherwise the candidate answer is incorrect."""
demonstrations = [
{
"question": "What's the weather like?",
"reference_answer": ["sunny", "clear", "bright", "sunny", "sunny"],
"generated_answer": "cloudy"
}
]
评分函数
给定 LLM 为测试示例生成的文本,我们从最后一个字符(1、2 或 3)中提取评分,并将其映射到 [0, 1] 范围内的分数:[ s = \frac{r - 1}{2} ]
结果表
我们的评估结果总结如下表
指标 | CIDER | BLEU | ANLS | LAVE |
---|---|---|---|---|
分数 | 0.1411 | 0.0032 | 0.002 | 0.58 |
定性示例

图 4:Llama 对 Docmatix 测试子集中生成和参考答案的评分和理由。

图 5:Llama 对 Docmatix 测试子集中生成和参考答案的评分和理由。
我们对 VQA 系统的评估是否过于严格,以及我们是否需要微调?
当我们使用 LLM 评估响应时,准确率提高了大约 50%,这表明即使答案不严格遵守格式,它们也可能是正确的。这表明我们当前的评估指标可能过于严格。需要注意的是,这并非一篇全面的研究论文,需要更多的消融研究才能充分理解不同指标在合成数据集零样本性能评估中的有效性。我们希望这项工作能作为一个起点,拓宽当前对改进合成数据集背景下零样本视觉语言模型评估的研究重点,并探索除提示学习之外的更有效方法。
参考文献
@inproceedings{cascante2022simvqa,
title={Simvqa: Exploring simulated environments for visual question answering},
author={Cascante-Bonilla, Paola and Wu, Hui and Wang, Letao and Feris, Rogerio S and Ordonez, Vicente},
booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
pages={5056--5066},
year={2022}
}
@article{hu2024mplug,
title={mplug-docowl 1.5: Unified structure learning for ocr-free document understanding},
author={Hu, Anwen and Xu, Haiyang and Ye, Jiabo and Yan, Ming and Zhang, Liang and Zhang, Bo and Li, Chen and Zhang, Ji and Jin, Qin and Huang, Fei and others},
journal={arXiv preprint arXiv:2403.12895},
year={2024}
}
@article{agrawal2022reassessing,
title={Reassessing evaluation practices in visual question answering: A case study on out-of-distribution generalization},
author={Agrawal, Aishwarya and Kaji{\'c}, Ivana and Bugliarello, Emanuele and Davoodi, Elnaz and Gergely, Anita and Blunsom, Phil and Nematzadeh, Aida},
journal={arXiv preprint arXiv:2205.12191},
year={2022}
}
@inproceedings{li2023blip,
title={Blip-2: Bootstrapping language-image pre-training with frozen image encoders and large language models},
author={Li, Junnan and Li, Dongxu and Savarese, Silvio and Hoi, Steven},
booktitle={International conference on machine learning},
pages={19730--19742},
year={2023},
organization={PMLR}
}
@inproceedings{manas2024improving,
title={Improving automatic vqa evaluation using large language models},
author={Ma{\~n}as, Oscar and Krojer, Benno and Agrawal, Aishwarya},
booktitle={Proceedings of the AAAI Conference on Artificial Intelligence},
volume={38},
number={5},
pages={4171--4179},
year={2024}
}
@article{li2023scigraphqa,
title={Scigraphqa: A large-scale synthetic multi-turn question-answering dataset for scientific graphs},
author={Li, Shengzhi and Tajbakhsh, Nima},
journal={arXiv preprint arXiv:2308.03349},
year={2023}
}