MMBench

MMBench

全面评估多模态大模型能力的基准测试

MMBench是评估视觉语言模型多模态理解能力的基准测试集。它包含近3000道多项选择题,涵盖20个能力维度,采用循环评估和LLM选项提取等创新方法,提供可靠客观的评估。通过细粒度的能力测试和可重复的评价标准,MMBench为多模态模型开发提供了有价值的反馈。

MMBench多模态模型评估基准视觉语言模型循环评估Github开源项目

MMBench

评估

"MMBench: 你的多模态模型是全能选手吗?"的官方仓库

🔥 注意<br> MMBench 由 OpenCompass 社区 开发,欢迎关注 OpenCompass 获取更多最新的大模型评估技术。

下载:MMBench 是一系列用于评估大型视觉语言模型(LVLMs)多模态理解能力的基准测试集合。下表列出了 MMBench 包含的所有基准测试的信息及其下载链接。

"下载链接(VLMEvalKit)"和"下载链接(传统)"的区别:"下载链接(VLMEvalKit)"是我们官方评估框架 VLMEvalKit 使用的数据格式,它通过在循环评估的不同轮次中只保留图像的一个副本来减小文件大小。而"下载链接(传统)"为 N 选项的循环评估保留 N 个图像副本。这两个版本的其他内容完全相同。

对于不使用 VLMEvalKit 进行评估的之前的用户,请从"下载链接(传统)"下载!

名称分割语言问题数量说明下载链接(VLMEvalKit)下载链接(传统)
MMBench-Dev开发英文1164MMBench 的开发集下载下载
MMBench-Test测试英文1784MMBench 的测试集下载下载
MMBench-Dev (cn)开发中文1164MMBench-Dev 的中文版下载下载
MMBench-Test (cn)测试中文1784MMBench-Test 的中文版下载下载
CCBench开发中文510一个关于中国文化相关的基准测试下载下载

可视化:您可以在 可视化 中查看 MMBench 基准测试的数据样本。

评估:您可以使用 VLMEvalKit(我们用于 MMBench 排行榜的官方代码)来评估您的 VLM 在 MMBench 基准测试上的表现。要提交您对 MMBench 测试集的预测结果,您可以访问 MMBench 提交

新闻

  1. [2023/12/26] 我们更新了 CCBench,并移除了有噪声的测试样本,新版本可以在这里下载 下载。排行榜已相应更新。
  2. [2023/12/10] 我们提供了一个多模态评估工具包 VLMEvalKit,支持在 MMBench 和许多其他多模态基准测试上评估 VLM。
  3. [2023/10/23] 我们提供了一个名为 CCBench 的新基准测试,这是一个关于中国文化领域的多模态基准测试。
  4. [2023/10/03] 我们提供了一个经过验证的 MMBench 中文翻译版本。用户可以使用它来验证其 VLM 的中文能力。我们在下图中提供了一个说明。
<div align="center"> <img src="https://opencompass.oss-cn-shanghai.aliyuncs.com/omnimmbench/img/multi_lingual.png" width="60%"> </div>

关于 MMBench

近年来,视觉-语言(VL)模型的发展迅速,如 MiniGPT-4 和 LLaVA 等模型在处理以前具有挑战性的任务时展现出了令人瞩目的性能。然而,如何有效评估这些模型的性能已成为阻碍大型 VL 模型进一步发展的主要挑战。传统的基准测试如 VQAv2 和 COCO Caption 被广泛用于对 VL 模型进行定量评估,但存在几个缺点:

数据集构建:传统基准测试倾向于根据模型在各种任务(如图像描述和视觉问答)中的表现来评估模型。遗憾的是,这些任务无法完全捕捉模型所具备的细粒度能力,可能会阻碍未来的优化工作。

评估指标:现有的评估指标缺乏稳健性。例如,VQAv2 针对单个词或短语,而许多当前的 VL 模型生成句子作为输出。尽管这些句子可能正确回答了相应的问题,但由于无法精确匹配给定的答案,现有的评估指标会给出失败的分数。此外,最近提出的主观评估指标,如 mPLUG-Owl 中使用的指标,为 VL 模型提供了全面的评估。然而,由于评估需要大量人力,这些指标难以平稳扩展。另外,这些评估具有高度偏差性,难以复现。

为了解决这些局限性,我们提出了一种新方法,定义了一组细粒度能力并收集了与每种能力相关的问题。我们还引入了创新的评估策略,以确保对模型预测进行更稳健的评估。这个新的基准测试称为 MMBench,具有以下特点:

数据收集:到目前为止,我们已收集了约 3000 个问题,涵盖 20 个能力维度。每个问题都是单选题格式,只有一个正确答案。

评估:为了更可靠的评估,我们使用 ChatGPT 将模型的预测与问题的选项匹配,然后输出相应的标签(A、B、C、D)作为最终预测。

数据集

MMBench 从多个来源收集,包括公开数据集和互联网,目前包含 2974 个多选题,涵盖 20 个能力维度。我们将现有的 20 个能力维度构建成 3 个能力维度层级,从 L-1 到 L-3。我们在我们的能力分类中将感知和推理作为顶级能力维度,称为 L-1 能力维度。对于 L-2 能力,我们从 L-1 感知中衍生出:1. 粗糙感知,2. 细粒度单实例感知,3. 细粒度跨实例感知;从 L-1 推理中衍生出:1. 属性推理,2. 关系推理,3. 逻辑推理。为了使我们的基准测试尽可能细粒度,以便为多模态模型的开发提供有信息的反馈,我们进一步从 L-2 能力维度衍生出 L-3 能力维度。据我们所知,MMBench 是第一个涵盖如此多能力维度的大规模多模态评估数据集。

与之前的数据集相比,MMBench 具有以下优势:

与之前的公开客观数据集相比:MMBench 不是评估 VL 模型在特定任务上的表现,而是评估一组细粒度能力。这使我们能够在更细粒度的层面上评估模型的表现,并为模型开发提供更有信息的反馈。

与之前的主观数据集相比:MMBench 是一个客观数据集,评估结果较少偏差。此外,MMBench 上的结果保证可重现,这在主观数据集中是无法做到的。

<div align="center"> <img src="https://opencompass.oss-cn-shanghai.aliyuncs.com/omnimmbench/img/taxonomy2.png" width="50%"> </div>

评估

在 MMBench 中,我们提出了一种新的评估协议,以较低的成本产生稳健的评估结果。我们使用循环评估策略来测试视觉语言模型是否能成功解决每个单独的问题。这种策略比普通的评估策略产生更可靠的结果。为了处理 VLM 的自由文本输出,我们提出使用基于 LLM 的选项提取器将自由文本转换为特定选项(A、B、C 等)。

循环评估策略:为了呈现更稳健的评估结果并减轻噪声的负面影响,我们提出了一种新的评估协议,称为循环评估,用于测试视觉语言模型是否能一致地成功解决每个单独的问题。具体来说,对于一个有 N 个选项的单选题,我们用 VLM 推理 N 次。在每次推理中,我们对选项和相应的答案进行循环移位,为 VLM 推理生成一个新的提示(如下图所示)。在循环评估中,只有当 VLM 在所有 N 次推理中都成功时,我们才认为 VLM 成功解决了这个问题。循环评估设置比传统的单次评估更具挑战性。对于大多数现有的 VLM,应用循环评估策略后,Top-1 准确率通常会下降 10% 到 20%。

<div align="center"> <img src="https://opencompass.oss-cn-shanghai.aliyuncs.com/omnimmbench/img/circular_eval.jpg" width="100%"> </div> **基于LLM的选项提取器**。由于视觉语言模型的指令遵循能力差异很大,我们在评估过程中经常需要处理这些模型的自由形式文本输出。传统的基于规则的匹配方法难以从自由形式文本中提取选项,因此我们求助于大型语言模型。给定一个视觉语言模型的输出,我们首先尝试使用基于规则的匹配来将输出与选项进行匹配,以节省推理成本。如果失败,我们会尝试使用ChatGPT来提取选项。我们向ChatGPT提供问题、选项和模型预测,格式化使用下面的提示模板。获得ChatGPT输出后,我们尝试使用精确匹配(上一步)从GPT输出中提取选项。我们最多尝试3次来提取选项。基于ChatGPT的选项提取器展示了完美的成功率(>99.9%)并与人类专家有合理的一致性。 <div align="center"> <img src="https://opencompass.oss-cn-shanghai.aliyuncs.com/omnimmbench/img/gpt_prompt.png" width="70%"> </div>

如何使用?

请使用我们的官方评估工具包VLMEvalKit进行MMBench评估。这里我们展示了一些用于加载和浏览MMBench的脚本(你需要先安装VLMEvalKit)。

from vlmeval.utils import TSVDataset from vlmeval.smp import mmqa_display # 加载MMBench_DEV_EN dataset = TSVDataset('MMBench_DEV_EN') # 可视化数据集中的样本(通过索引) dataset.display(0) """ 输出将会是: <image> 问题。确定Madelyn和Tucker的实验最能回答哪个问题。 提示。下面的段落描述了一个实验。阅读段落,然后按照以下指示进行。 Madelyn在她的滑雪板底部涂了一层薄薄的蜡,然后直接滑下山坡。然后,她去掉蜡,再次直接滑下山坡。她又重复了四次滑行,交替使用涂有薄层蜡的滑雪板和没有蜡的滑雪板。她的朋友Tucker为每次滑行计时。Madelyn和Tucker计算了涂蜡的滑雪板与未涂蜡的滑雪板直接滑下山坡的平均时间。 图:在山坡上滑雪。 A. 当Madelyn的滑雪板涂有薄层蜡还是厚层蜡时,它滑下山坡的时间更短? B. 当Madelyn的滑雪板涂有一层蜡还是没有涂蜡时,它滑下山坡的时间更短? 答案。B 类别。身份推理 来源。scienceqa 二级类别。属性推理 分割。开发集 """ # 为数据集中的样本构建多模态提示(通过索引) item = dataset.build_prompt(0) print(item) """ 输出将会是: [ {'type': 'image', 'value': '/root/LMUData/images/MMBench/241.jpg'}, # 图像将自动保存在~/LMUData/下 {'type': 'text', 'value': "提示:下面的段落描述了一个实验。阅读段落,然后按照以下指示进行。\n\nMadelyn在她的滑雪板底部涂了一层薄薄的蜡,然后直接滑下山坡。然后,她去掉蜡,再次直接滑下山坡。她又重复了四次滑行,交替使用涂有薄层蜡的滑雪板和没有蜡的滑雪板。她的朋友Tucker为每次滑行计时。Madelyn和Tucker计算了涂蜡的滑雪板与未涂蜡的滑雪板直接滑下山坡的平均时间。\n图:在山坡上滑雪。\n问题:确定Madelyn和Tucker的实验最能回答哪个问题。\n选项:\nA. 当Madelyn的滑雪板涂有薄层蜡还是厚层蜡时,它滑下山坡的时间更短?\nB. 当Madelyn的滑雪板涂有一层蜡还是没有涂蜡时,它滑下山坡的时间更短?\n请从以上选项中选择正确答案。\n"} ] """

进行推理:

# 以llava_v1.5_7b为例 # 要评估你自己的模型,请将`llava_v1.5_7b`替换为你实现的模型名称 python run.py --model llava_v1.5_7b --data MMBench_TEST_EN --mode infer

该命令将输出一个Excel文件:{model_name}/{model_name}_{dataset_name}.xlsx。对于MMBench-TEST-CN/EN,你可以将文件提交到https://mmbench.opencompass.org.cn/mmbench-submission 以获得评估准确率。

引用

@article{MMBench, author = {Yuan Liu, Haodong Duan, Yuanhan Zhang, Bo Li, Songyang Zhang, Wangbo Zhao, Yike Yuan, Jiaqi Wang, Conghui He, Ziwei Liu, Kai Chen, Dahua Lin}, journal = {arXiv:2307.06281}, title = {MMBench: Is Your Multi-modal Model an All-around Player?}, year = {2023}, }

编辑推荐精选

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

热门AI开发模型训练AI工具讯飞星火大模型智能问答内容创作多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

下拉加载更多