ChartNet: A Million-Scale, High-Quality Multimodal Dataset for Robust Chart Understanding¶
会议: CVPR 2026
arXiv: 2603.27064
代码: HuggingFace
领域: 信号通信
关键词: 图表理解、多模态数据集、代码引导合成、视觉语言模型、数据可视化
一句话总结¶
提出 ChartNet,一个包含 150 万条高质量多模态对齐样本的百万级图表理解数据集,通过代码引导的合成管线生成涵盖 24 种图表类型、6 种绘图库的五元组数据(代码、图像、数据表、文本描述、带推理的 QA),在 ChartNet 上微调的 2B 模型可超越 GPT-4o 和 72B 开源模型。
研究背景与动机¶
图表理解要求模型同时推理几何视觉模式、结构化数值数据和自然语言,这是当前视觉语言模型(VLM)的薄弱环节:
- 数据瓶颈严重:现有数据集在规模、范围或多模态覆盖度上存在明显不足。许多只关注单一任务(如 QA 或生成描述),缺乏绘图代码、接地标注或推理轨迹等关键模态
- 图表类型单一:ChartQA 等广泛使用的 benchmark 仅涵盖 3 种图表类型(柱状图、折线图、饼图),且偏向基础数据提取问题
- 规模不足:大多数数据集在数万到数十万级别,不足以训练前沿大模型
- 多模态对齐缺失:少有数据集能同时提供图表图像、可执行代码、底层数据表、文本描述和推理链的完整对齐
ChartNet 的核心洞察:图表是程序化生成的——可执行的绘图代码可作为数据可视化的结构化中间表示,让数据生成和增强在代码空间而非图像空间进行。
方法详解¶
整体框架¶
ChartNet 的数据生成管线包含五个阶段: 1. 图表到代码重建:VLM 将种子图表图像转化为可执行绘图代码 2. 代码引导图表增强:LLM 迭代重写代码生成多样变体 3. 图表渲染:执行代码生成图表图像 4. 质量过滤:VLM 检测视觉缺陷并移除不合格样本 5. 代码引导属性生成:结合视觉和代码上下文提取数据表和文本描述
关键设计¶
-
代码引导的合成管线:从 TinyChart 数据集选取 15 万张种子图表图像,用 pixtral-large-instruct-2411 将图像转化为 Python 绘图代码(Chart-to-Code Reconstruction),再用 gpt-oss-120b 迭代重写代码以生成多样变体。数据值和标签在保持上下文相关性的同时进行转换,从单张种子图像可产生任意数量的变体。代码执行成功率约 77%,经视觉质量过滤后约 36.5% 的图像因视觉缺陷被移除。人工评估显示质量过滤后仅 5.9% 的图表包含影响可读性的问题(过滤前为 14.9%)。
-
带 CoT 推理的 QA 生成:基于 Vision-R1 框架,使用 pixtral-large-instruct-2411 为每张图像生成复杂多阶段推理问题,然后构建四步 "Pseudo-CoT" 序列(Summary → Caption → Reasoning → Conclusion)。通过模态桥接让语言模型在无直接视觉输入的情况下有效推理,最终由 gpt-oss-120b 生成详细推理轨迹(
<think>和<answer>标签)。 -
专项子集覆盖全谱:
- 人工标注子集(96,643 条):经严格人工验证和标注的高质量对齐数据
- 真实世界图表(30K 条):来自世界银行、Pew Research 等权威来源,涵盖经济、科技、环境等主题
- 接地 QA 对:从绘图代码提取几何感知标注,生成模板化接地 QA
- 安全对齐数据(7,600 条):针对敏感主题生成对抗性问题和安全/不安全响应对,用于 DPO
损失函数 / 训练策略¶
使用标准监督微调(SFT)训练 VLM: - 训练数据涵盖四个任务:Chart-to-Code、Chart-to-Table、Chart-to-Text、Chart QA with CoT Reasoning - 各模型使用 TRL 框架的默认超参数 - 评估在独立的 2,000 条 held-out 评估集上进行 - 自动评估使用 GPT-4o 作为评判器(QA 任务除外,使用 RapidFuzz 模糊匹配)
实验关键数据¶
主实验 - ChartNet 评估集¶
| 模型 | Chart Recon (Exec/Code-D/Code-S/Img) | Data Extract | Summary | QA w/CoT |
|---|---|---|---|---|
| granite-vision-2B | 63.4/60.7/67.0/77.2 | 53.8 | 64.0 | 59.9 |
| + ChartNet | 90.4/72.8/90.0/92.8 | 70.3 | 83.9 | 65.0 |
| llava-7B | 45.3/27.0/52.9/59.6 | 17.0 | 51.2 | 55.1 |
| + ChartNet | 83.9/69.4/88.6/91.5 | 58.8 | 80.3 | 70.3 |
| GPT-4o | 95.9/48.8/77.2/88.2 | 46.7 | 77.1 | 61.1 |
微调后的 2B 模型超越 GPT-4o(数据提取 70.3 vs 46.7,摘要 83.9 vs 77.1)。
与更大模型对比(off-the-shelf):
| 模型 | Data Extract | Summary | QA w/CoT |
|---|---|---|---|
| Qwen2-VL-72B | 50.3 | 75.9 | 60.3 |
| Mistral-24B | 53.2 | 79.8 | 60.0 |
| granite-2B + ChartNet | 70.3 | 83.9 | 65.0 |
消融实验 / 公开 Benchmark¶
ChartCap 摘要(granite-vision-2B): - 基线:BLEU_4=1.6, METEOR=6.4, ROUGE_L=9.6 - +ChartNet:BLEU_4=12.4, METEOR=30.1, ROUGE_L=24.9
ChartMimic-v2 代码生成(granite-vision-2B): - 基线:v2-direct=30.84 - +ChartNet:v2-direct=58.42(+27.58)
超紧凑模型也获得显著能力:SmolVLM-256M 和 Granite-Docling-258M 从零能力变为可用。
关键发现¶
- 数据质量 > 模型规模:在图表理解这类视觉/数值/语言紧密耦合的领域,提供高质量代码对齐的多模态监督far比单纯扩大模型规模更有效
- 跨规模一致提升:从 256M 到 7B 的所有模型在所有任务上都获得显著提升,且提升幅度与模型大小无关
- 代码作为中间表示的价值:Chart-to-Code 的代码对齐训练为模型提供了程序化理解图表的结构性监督
- 数据提取任务提升最大:GPT-4o 仅 46.7%,但 ChartNet 微调的 2B 模型达 70.3%,体现了紧密的代码-数据-图像对齐的价值
- 合成数据能力泛化到真实世界:在 ChartCap 和 ChartMimic-v2 等真实 benchmark 上同样有效
亮点与洞察¶
- 在代码空间而非图像空间进行数据增强是一个优雅的设计——代码天然提供了结构化的数据表示,使得多模态对齐更精确
- 五元组对齐(代码、图像、数据表、文本、推理QA)比任何已有数据集都更完整
- 2B 模型超越 GPT-4o 和 72B 模型的结果强有力地证明了领域特定高质量数据的价值
- 安全对齐子集的设计为图表领域的 AI 安全提供了基础设施
局限与展望¶
- 合成数据为主,虽有真实世界子集但占比较小,可能存在领域偏移
- 种子图表来源单一(TinyChart),可能限制初始多样性
- 代码执行成功率 77% 意味着约 23% 的生成被浪费
- 视觉过滤后仍有 5.9% 的图表有质量问题
- 评估依赖 GPT-4o 作为 judge,可能存在系统性偏差
- 缺少对图表中数学推理、统计分析等深度理解能力的评估
相关工作与启发¶
- UniChart/TinyChart:先驱性的多任务图表数据集,但规模和模态覆盖不如 ChartNet
- ChartQA:广泛使用但仅 3 种图表类型、14K 样本,已接近性能饱和
- CoSyn:同样使用代码引导合成,但限于 3 种绘图库和更少的图表类型
- 启发:代码引导的数据合成范式可推广到其他"程序化生成"的视觉理解任务(如 3D 场景理解、UI 理解等)
评分¶
- 新颖性: 7/10 — 代码引导合成管线的思路不算全新,但系统化和规模化执行做得出色
- 实验充分度: 9/10 — 多模型、多规模、多任务、多 benchmark 的全面评估
- 写作质量: 8/10 — 结构清晰,对比表格详尽,贡献明确
- 价值: 9/10 — 作为最大的开源图表理解数据集,对社区价值极高,"2B > GPT-4o" 的结果令人印象深刻