← 返回 2026-04-08

基于双自一致性强化学习的科学图形程序合成 Scientific Graphics Program Synthesis via Dual Self-Consistency Reinforcement Learning

Juekai Lin, Yun Zhu, Honglin Lin, Sijing Li, Tianwei Lin, Zheng Liu, Xiaoyang Wang, Wenqiao Zhang, Lijun Wu 📅 2026-04-07 👍 7 2026-07-13 08:36
TikZ/LaTeX 代码生成 图像到代码 多模态大模型 强化学习 科学可视化

提出 SciTikZer 模型与 Dual Self-Consistency 强化学习框架,从图像生成可编译的 TikZ 代码,在 8B 体量上超越 Gemini-2.5-Pro 与 Qwen3-VL-235B。

前置知识

TikZ / LaTeX 声明式绘图

TikZ 是 LaTeX 中用于绘制科学示意图的声明式矢量图形语言,通过显式坐标、节点和路径命令描述图形(如电路、流程图、几何证明),而非 matplotlib 那种命令式统计绘图。TikZ 要求严格的精确坐标和拓扑连接,代码与渲染结果强绑定,编译失败即无输出。

本文的核心任务是把图片反向工程为 TikZ 代码,必须理解 TikZ 对坐标精度、依赖包和拓扑结构的严格要求,才能明白数据清洗、编译反馈和双自一致性奖励的设计动机。

Group Relative Policy Optimization (GRPO)

GRPO 是一种无需 critic 的强化学习算法,对同一 prompt 采样一组 G 个候选输出,以组内奖励均值与标准差做归一化得到优势 $\hat{A}_i = (R_i - \mu_R)/\sigma_R$,再用 PPO 风格的 clip 目标优化策略 $\pi_\theta$,目标函数为 $J_{\text{GRPO}}(\theta) = \mathbb{E}[\sum_i \min(\rho_i \hat{A}_i, \text{clip}(\rho_i, 1-\epsilon, 1+\epsilon)\hat{A}_i)] - \beta D_{KL}(\pi_\theta\|\pi_{\text{ref}})$。

本文所有 RL 阶段都基于 GRPO 实现可验证奖励驱动的策略优化,是理解 Dual Self-Consistency 算法中组采样、KL 约束与优势估计的基础。

MLLM-as-a-Judge 与可验证奖励

用多模态大模型作为自动裁判,从 Correctness、Layout、Readability、Scientific Plausibility、Visual Complexity 等维度对生成结果打 0–5 分;可验证奖励则依赖编译器执行这类外部确定性反馈(如 pdflatex 是否成功生成 PDF)给出二元信号。

数据引擎的精筛、评估基准的构建以及 RL 中 LPIPS/SigLIP/编译奖励都依赖这一范式,是本文工程闭环的关键。

SigLIP 与 LPIPS 视觉奖励

SigLIP 通过大规模图文对比预训练提供高层语义余弦相似度 $\text{Sim}_{\text{SigLIP}} = f_{gt}\cdot f_{pr}/\|f_{gt}\|\|f_{pr}\|$,衡量概念对齐;LPIPS 用预训练 CNN(如 AlexNet)提取深度特征后算感知距离 $d_{\text{LPIPS}}$,对像素级几何与风格敏感。

本文把 SigLIP(语义)和 LPIPS(结构)通过 hinge 缩放与指数核映射融合为多粒度视觉奖励 $r_{\text{vis}} = \lambda_1 s_{\text{sem}} + \lambda_2 s_{\text{struct}}$,是 Stage 1 阶段优化的核心信号。

研究动机

科学示意图(如电路、几何证明、流程图)通常以光栅图像形式流传,作者难以再编辑或复用。TikZ 作为科学绘图的 de facto 标准,要求严格坐标与显式拓扑,但当前多模态大模型在这类任务上普遍表现欠佳:从 Figure 1 可以看到 InternVL3-8B 生成的电路图使用 \documentclass{article} 而非 standalone,且缺少 circuitikz 包,导致语法幻觉、依赖遗漏和几何失准。作者统计现有数据集 AutomatikZ、MathCoder 等多由网络爬取或简单合成,存在非可执行、视觉-代码错位、片段不完整三大问题;而评估方面,Image2Struct 等基准仅覆盖公式与简单图表,无法系统衡量多学科科学图形的结构保真度。方法论上,TikZero、DeTikZify 仅依赖 CLIP 对齐或 MCTS 搜索,采用单向生成,无法利用 TikZ 可执行的天然优势做闭环训练,因此 SFT 过度惩罚语法变体、视觉 RL 又易于 reward hacking 生成退化图像。

本文的目标是本文提出一个端到端闭环框架,覆盖数据、评估、算法三个层面:在数据上构建执行中心的数据引擎,产出 230K 严格可编译的图像-TikZ 对 SciTikZ-230K;在评估上推出 611 题的多维基准 SciTikZ-Bench,覆盖 11 个学科、Easy/Medium/Hard 三档难度;在算法上提出 Dual Self-Consistency (DSC) 强化学习范式,把视觉保真度与结构逻辑通过 round-trip 重建耦合起来,最终训练出 4B/8B 的 SciTikZer 模型,在编译率与视觉相似度上同时超越 Gemini-2.5-Pro、Qwen3-VL-235B 等大模型以及 DeTikZify-v2.5 等专用基线。

与已有工作不同的是,已有工作要么止步于数据清洗(AutomatikZ 仍依赖噪声爬取),要么仅做单向 SFT 或 CLIP 对齐(TikZero/DeTikZify),无法同时兼顾'能编译''看起来像''结构可编辑'三重目标。本文的独特切入角度是把 LaTeX 工具链作为可执行验证器,让生成的代码 $\hat{y}$ 经过编译器 $\mathcal{T}$ 渲染成图像 $\hat{I}$,再用同一策略回译出 $\hat{y}'$,要求 $\hat{y} \approx \hat{y}'$ 形成对偶闭环,从而无需人工标注即可在无标签数据上获得结构监督信号,弥补 SFT 过严与视觉 RL 过松的中间地带。

核心方法

SciTikZer 的整体思路是把图像到 TikZ 的合成任务视作'视觉可验证的代码生成':先用 230K 高质量数据做监督微调让模型掌握 TikZ 严格语法;再通过课程数据选择挑出模型'最近发展区'的 8K 样本;最后用两阶段强化学习做闭环优化。Stage 1 用 GRPO 联合训练编译奖励 $\alpha_+$(成功 +0.1)/$\alpha_-$(失败 −0.6)、SigLIP 语义相似度(hinge 缩放 $\tau_{\text{hold}}=0.80$)和 LPIPS 几何精度(指数核 $\tau_{\text{temp}}=0.5$),目标是把像素级视觉对齐做扎实。Stage 2 在此基础上引入 DSC:让同一策略对自身渲染图 $\hat{I}=\mathcal{T}(\hat{y})$ 做反向重建 $\hat{y}' \sim \pi_\theta(\cdot|\hat{I})$,再用 CrystalBLEU 与 Kernelized Token Edit Distance 计算 $\hat{y}$ 与 $\hat{y}'$ 的结构-语义相似度 $s_{\text{code}} = \gamma \cdot \text{CrystalBLEU} + (1-\gamma) \cdot s_{\text{ted}}$,并通过保真门控 $\mathbf{1}[r_{\text{vis}}>\tau_{\text{gate}}]$($\tau_{\text{gate}}=0.6$)避免对低质样本做空循环监督。直觉上,这相当于让模型自问:'我画的图,能否再被自己读回成等价的代码?',从而把'看起来对'和'结构对'绑定在一起。

和已有方法相比,本文的本质区别在于:(1) 数据层从被动过滤转向主动补救——利用 Qwen3-VL-235B 作为修复 agent,把约 40% 的非 standalone 片段补全、再修复约 60% 的编译错误,把 310K 原始池升级为 230K 严格可编译的 SciTikZ-230K;(2) 评估层从单一 CLIP 分数转向 SSIM/LPIPS/SigLIP/CLIP/DreamSim/CrystalBLEU/TED 七维评估,并配合 Trim-and-Align 预处理消除 LaTeX 边距噪声;(3) 算法层首次把对偶学习(dual learning)思想引入视觉-代码 RL,让编译器 $\mathcal{T}$ 成为免费的 oracle,用 round-trip 重建 $\hat{y} \to \hat{I} \to \hat{y}'$ 提供无标注的结构监督,并通过 Fidelity Gate 抑制 reward hacking 与 mode collapse。

方法步骤详情

方法流水线分四步。第一步是 SciTikZ-230K 数据引擎:源聚合阶段从 HuggingFace、TeX-StackExchange、arXiv 抓取 310K 原始片段;Active Remediation 阶段先用 Qwen3-VL-235B 把非 standalone 片段包装为 \documentclass{standalone},再用 pdflatex 10 秒沙箱编译,过滤后驱动 MLLM 修复 agent 基于编译日志修错,成功率约 50%;Coarse-to-Fine Purification 阶段先按 8192 token 上限与 15:1 长宽比做启发式过滤,再用 50-gram 去重,最后用 Qwen3-VL-235B 在五维评分上做精筛,仅保留 $S_{\text{total}}>\delta_{\text{total}}$ 且 $s_{\text{comp}}>\delta_{\text{comp}}$ 且其余四维 $>\delta_{\min}$ 的样本。第二步是 SFT 暖启动:在 Qwen3-VL-4B/8B-Instruct 上用 LLaMA-Factory 做 3 epoch 微调,学习率 $5\times 10^{-5}$,全局 batch size 128,最大长度 4096,损失为标准的负对数似然 $\mathcal{L}_{\text{SFT}}(\theta)=-\mathbb{E}_{(I,y)\sim D_{\text{final}}}\sum_t \log\pi_\theta(y_t|y_{\tau_{\text{gate}}\}\cdot\lambda_{\text{code}}\cdot s_{\text{code}}(\hat{y},\hat{y}')$ 再跑 50–80 步,最终得到 SciTikZer-4B/8B。

技术新颖性

技术新颖性体现在三方面。其一是把 LaTeX 编译器作为可执行验证器嵌入 RL 循环,让 reward 信号具备强因果性而非纯启发式打分;其二是首次把 dual learning 的对偶闭环搬到图像-代码跨模态 RL 上,通过 CrystalBLEU(用频率掩码 $T_k$ 抑制前 500 高频 n-gram)加 Kernelized TED($s_{\text{ted}}=\exp(-D_{\text{eed}}/\tau_{\text{ted}})$)构造可微的结构奖励,规避了单纯视觉 RL 的 reward hacking;其三是 Fidelity Gate $\mathbf{1}\{r_{\text{vis}}>0.6\}$ 与循环进入率监测(Table 9)作为正则器,使自一致性只在高质量样本上激活,避免 mode collapse。这种'编译 + 视觉 + 回译'的三层信号目前在 TikZ 生成领域是首创。

Overview of the Execution-Centric Data Engine.
Figure 2: Overview of the Execution-Centric Data Engine.
Overview of SciTikZ-230K Dataset. The chart illustrates the hierarchical distribution of our dataset, spanning 11 scientific domains and over 90 fine-grained sub-categories.
Figure 3: Overview of SciTikZ-230K Dataset. The chart illustrates the hierarchical distribution of our dataset, spanning 11 scientific domains and over 90 fine-grained sub-categories.
Overview of the SciTikZ Framework. The pipeline initializes with SFT and Curriculum Data Selection. Core DSC-RL integrates Visual Alignment for pixel precision and Self-Consistency Refinement via symbolic back-translation.
Figure 4: Overview of the SciTikZ Framework. The pipeline initializes with SFT and Curriculum Data Selection. Core DSC-RL integrates Visual Alignment for pixel precision and Self-Consistency Refinement via symbolic back-translation.
Example of diagnostic remediation for compilation errors.
Figure 8: Example of diagnostic remediation for compilation errors.

实验结果

主实验(Table 1)在 611 题 SciTikZ-Bench 上对比 17 个模型。SciTikZer-8B 取得 97.2% 编译成功率(All SigLIP 93.8 / 96.5,All LPIPS 29.7 / 27.7,All SSIM 72.5 / 74.6,All DreamSim 10.9 / 8.4,TED 42.8,C-BLEU 28.9),相对基线 Qwen3-VL-8B 在编译率上提升 26.2 个百分点、LPIPS 下降 31.0、DreamSim 下降 31.4;相对最强的开源大模型 Qwen3-VL-235B(92.1% 编译率),以 1/30 的参数量实现 +5.1% 编译率提升;相对专用基线 DeTikZify-V2.5-8B(93.1%),SigLIP 高 4.9、LPIPS 低 7.6、C-BLEU 低 1.5(仅在 n-gram 重叠上略输),TED 低 0.2。SciTikZer-4B 同样以 95.9% 编译率和 30.8 LPIPS 击败 14B 的 InternVL3.5。在 DaTikZ-v3(Table 3)外部测试集上,SciTikZer-8B 进一步以 94.46% 编译率、KID 1.14、DSim 88.29、cBLEU 16.17、TED 48.83 全面领先 Qwen3-VL-235B(87.82% 编译率)与 DeTikZify-V2.5-8B(90.41%)。渐进式训练分析(Table 2)显示:SFT 把 8B 编译率从 71.0% 拉到 81.0%,C-BLEU 从 17.0 翻倍到 31.6;Stage 1 把 LPIPS 从 51.4 砍到 37.0;Stage 2 再把编译率推到 97.2%。消融实验 Figure 6 表明,加 DSC 在 8B 上把编译率再提 1.1 点、LPIPS 降 1.3、DreamSim 降 1.4。跨语言实验(Table 4)在 ChartMimic 上把 VinciCoder-8B-RL 的执行率从 91.2% 提到 92.1%,Low/High-L 分别提升 0.9 和 0.6,说明 DSC 范式对 Python 同样有效。盲评人类评测(Table 5,300 题 6 位标注者)显示 SciTikZer-8B 综合得分 12.08、综合偏好 59%,远超 Gemini-2.5-Pro(11.62 / 11%)、GPT-5.1(11.34)、DeTikZify-V2.5-8B(11.14)和 Qwen3-VL-32B(9.73 / 15%)。MLLM 自动裁判(Table 12)也印证 SciTikZer-8B 在视觉保真度 7.12、结构正确 8.05、代码质量 8.40 三项均为最高。

Main Results on SciTikZ-Bench. Zero-shot performance comparison.
Table 1: Main Results on SciTikZ-Bench. Zero-shot performance comparison.
Progressive Training Framework Analysis on SciTikZ-Bench.
Table 2: Progressive Training Framework Analysis on SciTikZ-Bench.
Performance on DaTikZ-v3 test set.
Table 3: Performance on DaTikZ-v3 test set.
Performance on ChartMimic direct v2. Comparison against the standard RL method.
Table 4: Performance on ChartMimic direct v2. Comparison against the standard RL method.
Blind human evaluation carefully conducted on 300 randomly sampled benchmark test examples.
Table 5: Blind human evaluation carefully conducted on 300 randomly sampled benchmark test examples.
Sensitivity to the fidelity gate threshold τgate in Stage-2 DSC (snapshot at global step 30).
Table 9: Sensitivity to the fidelity gate threshold τgate in Stage-2 DSC (snapshot at global step 30).
MLLM-based evaluation on the benchmark.
Table 12: MLLM-based evaluation on the benchmark.
Impact of Data Curation. Curated data enhances both executability and visual fidelity in 4B and 8B models compared with raw data and DaTikZ-v3.
Figure 5: Impact of Data Curation. Curated data enhances both executability and visual fidelity in 4B and 8B models compared with raw data and DaTikZ-v3.
Case Analysis. A qualitative comparison of rendered TikZ code generated by different models against the Ground Truth.
Figure 7: Case Analysis. A qualitative comparison of rendered TikZ code generated by different models against the Ground Truth.
Representative samples from SciTikZ-Bench across three difficulty tiers.
Figure 9: Representative samples from SciTikZ-Bench across three difficulty tiers.
Qualitative comparison of diagnostic remediation across 10 diverse cases.
Figure 10: Qualitative comparison of diagnostic remediation across 10 diverse cases.
查看结构化数据
任务指标本文基线提升
SciTikZ-Bench 编译成功率(611 题) Compile Success Rate (%) 97.2 Gemini-2.5-Pro 88.9;Qwen3-VL-235B 92.1;DeTikZify-V2.5-8B 93.1 +5.1 至 +9.0 个百分点(相对 Qwen3-VL-235B 与 Gemini-2.5-Pro)
SciTikZ-Bench 语义对齐(All SigLIP) SigLIP Cosine (×100) 93.8 DeTikZify-V2.5-8B 88.9;Qwen3-VL-235B 86.8;Gemini-2.5-Pro 85.5 +4.9 至 +8.3
SciTikZ-Bench 几何精度(All LPIPS,越低越好) LPIPS Distance 29.7 DeTikZify-V2.5-8B 37.3;Qwen3-VL-235B 43.8;Gemini-2.5-Pro 40.2 -7.6 至 -14.1
SciTikZ-Bench 代码结构(TED Norm 越低越好) TED Normalized 42.8 DeTikZify-V2.5-8B 43.0;Qwen3-VL-235B 45.2;Gemini-2.5-Pro 46.7 -0.2 至 -3.9
DaTikZ-v3 外部测试集(542 题) Compile Rate / KID / cBLEU / DSim 94.46 / 1.14 / 16.17 / 88.29 DeTikZify-V2.5-8B 90.41/1.72/12.83/85.05;Qwen3-VL-235B 87.82/2.66/16.05/83.91 编译率 +4.05/+6.64;KID -0.58/-1.52;cBLEU +3.34/+0.12
ChartMimic Python 跨语言泛化 Exec. Rate / Low-L / High-L 92.1 / 80.2 / 81.5 VinciCoder-8B-RL 91.2 / 79.3 / 80.9 +0.9 / +0.9 / +0.6
SciTikZ-Bench 人工盲评(300 题 6 人) 综合得分 / 综合偏好 12.08 / 59% Gemini-2.5-Pro 11.62/11%;GPT-5.1 11.34/13%;DeTikZify-V2.5-8B 11.14/2% +0.46 至 +0.94 分;偏好提升 44 至 57 个百分点

局限与改进

作者在 Appendix E.1 明确承认三个局限:(1) RL 循环的计算开销显著高于普通 SFT,因为每次策略更新都伴随多次 forward 与 LaTeX 外部渲染;(2) TikZ 生成对编译环境敏感,不同机器的宏包版本与编译器配置可能导致细微差异;(3) 优化目标偏向功能正确而非词汇保真,因此模型可能生成视觉对、但风格/习惯用法偏离 ground-truth 注释(如自己的 CrystalBLEU 在 Stage 2 比纯 GRPO 略低)。从图表观察我还发现:Figure 10 中 SciTikZer-8B 在某些量子加密协议图上仍出现装饰库缺失错误,说明复杂自定义库依赖仍是痛点;Table 2 显示 C-BLEU 从 Stage 1 的 29.1 降到 Stage 2 的 28.6,证实 DSC 主动牺牲词面重叠换结构正确;Fidelity Gate 阈值敏感性(Table 9)显示 τgate 偏离 0.6 都会让 Val Comp 掉 4–6 个百分点,说明该参数对超参数稳健性较敏感。

独立分析的弱点

独立分析可改进的弱点有三处:(1) 数据覆盖偏差——SciTikZ-230K 中 FlowChart 占比 10.4%、Geometry 16.4%、Coordinate Plot 11.7%,而 Bio/Chem/Earth 等学科样本极少,Figure 3 显示这些学科的占比都低于 8%,因此 SciTikZer 在生物过程图或化学反应图上的稳健性可能不足,建议引入专门的 bio-chem 渲染数据或做领域适配 SFT。(2) Back-translation 延迟——DSC 要求策略对自身渲染图做第二次完整前向,单步训练时间近似翻倍,在 8×A100 上 Stage 2 仍需 2–3 天,未来可以改成共享 KV cache 的早退机制或蒸馏一个轻量回译器以加速。(3) Fidelity Gate 的二元门控容易在边界样本上抖动(τgate=0.5 与 0.7 在 Val Comp 上差 4.5 个百分点),建议改为软门控 $\sigma((r_{\text{vis}}-\tau_{\text{gate}})/T)$ 让奖励连续可微,缓解梯度稀疏。(4) CrystalBLEU 频率掩码 $T_k$ 是离线统计,对罕见领域的 n-gram 覆盖不全,建议按学科分层统计掩码。(5) 评测只覆盖到中等复杂的科学示意图,对带阴影、渐变、3D 投影的 TikZ 高级特效未做评测。

未来方向

作者在 Appendix E.2 与正文给出三个方向:(1) Inference-Time Iterative Self-Correction——把编译错误日志作为多轮反馈,在生成阶段做自纠错;(2) Sketch-to-TikZ——把手绘草图也纳入输入,做更接地气的草图到矢量图转换;(3) 推广到 Asymptote、Gnuplot、SVG 等其他声明式/形式化图形语言。基于实验结果我认为还有几个延伸方向值得探索:把 DSC 与过程奖励模型(PRM)结合做 step-wise 自一致性;把 SciTikZ-Bench 拓展到带阴影、渐变、3D 投影的高复杂度样本;将 round-trip 范式推广到 3D 场景图/几何求解器(Code-as-Policy 风格);把双自一致性与人类偏好对齐(RLHF/DPO)结合,进一步贴近科学出版级排版质量。

复现评估

复现性评估整体良好:作者在 GitHub 公开了 SciTikZer-4B/8B 模型权重与完整训练代码(https://github.com/JackieLin0123/SciTikZ),数据集 SciTikZ-230K 与 SciTikZ-Bench 也同步开源;训练算力透明——SFT 在 8×A100 80G 上 4B 跑 1.5 天、8B 跑 2 天,Stage 1 跑 2–3 天、Stage 2 跑 2–3 天,全部超参数在 Tables 8/10/11 完整列出(包括 AdamW、$\beta=1\times10^{-2}$、KL 系数、rollout batch 256、采样温度 0.7、top-p 0.9、生成上限 8192 等);评测采用统一的 Prompt 4 模板、温度 0.1、top-p 0.95、重复惩罚 1.05、最大长度 4096,并在 8×A100 上分布式推理;评测指标全开源(Trim-and-Align 预处理、SSIM/SigLIP/CLIP/LPIPS/DreamSim/CrystalBLEU/TED 公式在 Appendix C 全部给出)。复现难度为中等偏低:硬件门槛 8×A100 80G 大约 50 万元成本级别,普通实验室可通过 EasyR1(基于 verl)复现两阶段 RL;但仍有两个潜在难点——Qwen3-VL-235B 作为数据引擎的修复 agent 需要外部 API 或本地部署 235B 模型,对小团队不友好;pdflatex 渲染流水线需要在 TeX Live 完整环境下做 10 秒沙箱编译,对集群环境配置有一定要求。