What this checkpoint is
On-policy distillation. The weight delta learned by the teacher was merged into the SFT base with an extra scale of 0.5, the best point of an alpha sweep (0.25 -> +0.32, 0.5 -> +0.44, 0.75 -> -0.29, 1.5 -> -3.01 with t = -12.42).
Lineage
Fine-tuned from CheneyWong/povl-sft-2d-merge, which is NOT the RL checkpoint -- the teacher delta was merged into the SFT base, which is why it neither clearly beats nor clearly follows round 2.
PaddleOCR-VL-1.6 (base)
└─ povl-opd-scale05 <-- this checkpoint
Results on public datasets
Base = the unmodified base model. Public datasets only; the project's
self-built benchmarks are excluded.
| Dataset |
n |
Base TEDS |
Ours TEDS |
d TEDS |
Base TEDS-S |
Ours TEDS-S |
d TEDS-S |
| PubTables-1M |
2000 |
0.9015 |
0.9276 |
+0.0261 |
0.9243 |
0.9377 |
+0.0133 |
| PubTables-v2 |
2000 |
0.9026 |
0.9499 |
+0.0473 |
0.9239 |
0.9592 |
+0.0353 |
| FinTabNet (OTSL) |
2000 |
0.9442 |
0.9660 |
+0.0217 |
0.9524 |
0.9734 |
+0.0209 |
| PubTabNet / ICDAR |
2000 |
0.9297 |
0.9296 |
-0.0001 |
0.9464 |
0.9426 |
-0.0038 |
| SynthTabNet |
2000 |
0.8093 |
0.9144 |
+0.1051 |
0.8474 |
0.9283 |
+0.0809 |
| TableVerse-5K |
4951 |
0.8608 |
0.8509 |
-0.0099 |
0.9101 |
0.9026 |
-0.0074 |
| OmniDocBench v1.5 |
512 |
0.9580 |
0.9449 |
-0.0131 |
0.9797 |
0.9722 |
-0.0075 |
| OmniDocBench v1.6 |
665 |
0.9492 |
0.9344 |
-0.0148 |
0.9753 |
0.9666 |
-0.0086 |
| CC-OCR |
300 |
0.8304 |
0.8048 |
-0.0256 |
0.8762 |
0.8552 |
-0.0210 |
| OCRBench-v2 |
681 |
0.8120 |
0.8069 |
-0.0051 |
0.8526 |
0.8456 |
-0.0070 |
| Real5 (re-shot OmniDoc) |
1320 |
0.8930 |
0.8738 |
-0.0192 |
0.9307 |
0.9118 |
-0.0189 |
| SPRINT-MUSTARD |
1429 |
0.2184 |
0.2203 |
+0.0019 |
0.8754 |
0.8689 |
-0.0065 |
| TABLET |
909 |
0.9048 |
0.8924 |
-0.0123 |
0.9277 |
0.9136 |
-0.0141 |
| Overall (equal weight) |
- |
0.8395 |
0.8474 |
+0.0078 |
0.9171 |
0.9214 |
+0.0043 |
Note on SPRINT-MUSTARD: its ground truth carries no cell text, so its TEDS
(~0.22 here) measures how well the model reproduces empty cells and should
be ignored -- a perturbation test shows a structurally perfect prediction that
correctly reads the visible text scores 0.33 TEDS / 1.00 TEDS-S. Only the
TEDS-S column is meaningful for that dataset.
Known limitations
The +0.05 pt over the RL checkpoint is inside sampling noise (+/- 0.5 pt) and is not a real gain. It was also bought by giving up 4.4 pt in-domain: the distillation delta behaves as a slider trading in-domain accuracy against real-scene accuracy, not as a free improvement.
Separately, an audit found that all eight on-policy distillation students from the previous round were no-ops (mean_r pinned at exactly -1.0000) because a reward-bridge fix never reached the plugin that actually ran. On-policy distillation has therefore never actually been validated in this project.
Task format: a single table image plus the prompt Table Recognition:, one
pass, emitting OTSL markup (<fcel> <ecel> <ucel> <lcel> <xcel> <nl>).
Evaluation numbers are tracked separately and are not part of this card.