Plot2Code
收藏arXiv2024-05-14 更新2024-06-21 收录
下载链接:
https://huggingface.co/datasets/TencentARC/Plot2Code
下载链接
链接失效反馈官方服务:
资源简介:
Plot2Code是由腾讯ARC实验室创建的一个综合视觉编码基准数据集,旨在评估多模态大型语言模型(MLLMs)在从科学图表生成代码方面的能力。该数据集包含132个精心挑选的高质量matplotlib图表,涵盖六种图表类型,每个图表都配有其源代码和由GPT-4总结的描述性指令。Plot2Code不仅评估MLLMs的代码生成能力,还提出了三种自动评估指标,包括代码通过率、文本匹配比率和GPT4V整体评分,以细致评估输出代码和渲染图像。数据集的应用领域主要集中在评估和提升MLLMs在视觉编码任务中的表现,特别是在处理文本密集型图表时的能力。
Plot2Code is a comprehensive visual coding benchmark dataset created by Tencent ARC Lab, which aims to evaluate the code generation capabilities of multimodal large language models (MLLMs) from scientific charts. This dataset contains 132 high-quality, carefully curated matplotlib charts spanning six chart types. Each chart is accompanied by its corresponding source code and descriptive instructions summarized by GPT-4. In addition to evaluating the code generation performance of MLLMs, Plot2Code also introduces three automatic evaluation metrics, namely code pass rate, text matching ratio, and GPT4V overall score, to conduct a fine-grained assessment of the output code and its rendered images. The primary application scenarios of this dataset focus on evaluating and enhancing the performance of MLLMs in visual coding tasks, particularly their ability to handle text-intensive charts.
提供机构:
腾讯ARC实验室
创建时间:
2024-05-14
搜集汇总
数据集介绍

构建方式
Plot2Code数据集的构建源自对Matplotlib官方画廊的深度挖掘与精细筛选。研究团队首先遍历画廊中所有链接,从每个HTML文件中提取代码块,获得841个原始代码片段。随后通过生成过滤,仅保留包含单一代码块且能独立生成图像的文件,得到529个有效图-码对。在此基础上进行类型过滤,剔除动画、交互式等复杂标签对应的图像,确保所有样本均为静态可渲染的科学图表。最后经过严格的人工筛选,依据无外部依赖、类型多样性、难度均衡三大标准,从529个候选中精选出132个高质量测试样本,涵盖6种主要图表类型,共计293个子图。
特点
Plot2Code数据集具有鲜明的多维评估特性。在内容层面,它覆盖了线条图、柱状图、饼图、极坐标图、等高线图、统计图等六类科学图表,每个样本均包含原始代码与GPT-4生成的描述性指令,形成了完整的图像-代码-文本三元组。在评估维度上,该数据集创新性地提出了三项自动评价指标:代码通过率衡量可执行性,文本匹配率评估图像中文字元素的精确再现,GPT-4V整体评分则从视觉相似度进行综合判断。值得注意的是,传统指标如MSE和SSIM在此任务中无法有效区分图像质量,而Plot2Code的评估体系与人类评价具有高度一致性,展现了其作为视觉编码基准的可靠性与先进性。
使用方法
Plot2Code的使用围绕两种评估设置展开。在直接询问模式下,多模态大语言模型仅接收参考图像作为输入,需生成能渲染出与之高度相似图像的Matplotlib代码。在条件询问模式下,模型同时接收图像与文本指令,指令由GPT-4从原始代码中提取,仅描述图表的关键特征而不泄露实现细节,从而检验模型在图文多模态条件下的代码生成能力。所有生成的代码需用特定标记包裹以便正则提取,评估时先计算代码通过率,仅对成功执行的代码进一步计算文本匹配率和GPT-4V评分。该数据集已开源在HuggingFace平台,支持对GPT-4V、Gemini-Pro等14种主流多模态模型的系统评测。
背景与挑战
背景概述
Plot2Code数据集由香港大学与腾讯ARC Lab的研究团队于2024年联合创建,旨在系统评估多模态大语言模型(MLLMs)从科学图表生成可执行代码的能力。该研究团队从公开的matplotlib图库中精心筛选了132个高质量图表样本,涵盖六种常见图表类型,并为每个样本提供源代码及GPT-4生成的描述性指令。Plot2Code的提出填补了现有基准测试在视觉编码评估上的空白,如HumanEval和MBPP专注于单模态代码任务,而Design2Code仅涉及图像输入。通过引入代码通过率、文本匹配率和GPT-4V总体评分三项自动评估指标,该数据集为MLLMs在视觉理解与代码生成领域的性能设立了新的标杆,揭示了当前模型在文本密集图表处理上的显著不足。
当前挑战
Plot2Code面临的核心挑战在于解决多模态视觉编码的领域难题:现有MLLMs在从图像生成代码时,对文本密集的科学图表理解能力薄弱,严重依赖文本指令而难以独立解析视觉元素,导致生成的图表在文本精度和细粒度细节上与原图存在显著差距。在数据集构建过程中,研究团队遭遇了多重困难:首先,从matplotlib图库爬取的841个代码块中,仅有529个能直接生成可执行图表,需通过自动过滤剔除动画、交互等复杂类型;其次,手动筛选阶段需确保样本无外部依赖、类型多样且难度分布均匀,最终仅保留132个高质量样本;此外,评估指标的设计需兼顾代码可执行性与图像相似性,传统低层指标如MSE和SSIM无法有效区分生成图像质量,必须引入GPT-4V评分等高层语义评估方法。
常用场景
经典使用场景
Plot2Code作为一项面向多模态大语言模型的视觉编码基准,其核心应用场景在于评估模型从科学图表中理解视觉信息并生成可执行代码的能力。该数据集精心收集了132幅涵盖六种常见类型的matplotlib图表,每一幅都配有原始代码与GPT-4生成的描述性指令。研究者可借此在直接询问与条件询问两种设定下,系统性地考察模型在仅凭图像或结合图像与文本指令时,能否准确复现图表中的视觉元素、布局与数据关系,从而全面衡量其多模态理解与代码生成的双重素养。
解决学术问题
Plot2Code填补了现有基准在视觉编码评估领域的显著空白。传统代码基准如HumanEval与MBPP仅关注纯文本输入,而Design2Code虽引入图像却局限于UI设计。Plot2Code直面多模态大语言模型在科学图表理解与代码生成中的核心挑战:模型需同时解析图表中的颜色、形状、文本标注等复杂视觉信号,并将其转化为精确的matplotlib代码。该数据集通过引入代码通过率、文本匹配率与GPT-4V综合评分等多维度自动评估指标,揭示了当前顶尖模型(如GPT-4V)在文本密集图表上的显著不足,为多模态推理与视觉编码研究提供了关键参照与前进方向。
衍生相关工作
Plot2Code的提出已催生了一系列相关研究工作。在其基础上,研究者进一步探索了多模态推理提示策略,如思维链与计划-求解方法,以增强模型对复杂图表的解析能力。同时,该基准推动了针对文本密集图像的高分辨率视觉编码器设计,例如Mini-Gemini等模型通过引入OCR令牌与高分辨率输入来提升图表细节捕捉能力。此外,Plot2Code的评估框架被借鉴至更广泛的视觉编码任务中,如SVGEditBench与MMCode等基准的构建,它们分别聚焦于SVG编辑与算法代码生成,共同丰富了多模态代码生成的研究生态,促进了开源模型与商业API之间的性能差距分析。
以上内容由遇见数据集搜集并总结生成



