Round-Trip Consistency: Bidirectional Diffusion Models Can Predict Their Own Rollout Errors
Abstract
Autoregressive models accumulate error over long rollouts, yet at deployment there is no ground truth to measure it against. We train a single conditional latent diffusion model that steps a dynamical system forward or backward in time via a direction flag, and show that this bidirectionality supplies a measurement-free test-time error signal: rolling forward steps and then backward steps must return the model to its start, so the round-trip discrepancy is a self-supervised proxy for the unobservable rollout error: no ensembles, no held-out data, no governing equations, for one extra rollout. We validate on compressible magnetohydrodynamics (MHD), an astrophysical turbulent radiative mixing layer, and natural face videos (CelebV-HQ). On held-out MHD trajectories, ranks rollout error (Spearman - at fixed depth; within trajectories), and a simple calibrator fit on training rollouts predicts its magnitude to within () and () with near-nominal coverage - one nat beyond a depth-only predictor, transferring to all six decoded physical fields. The same signal flags the out-of-distribution Orszag-Tang vortex (AUROC ; by depth ) exactly where sampling-dispersion baselines invert, and it cuts incurred error by at coverage - three times the depth-only baseline. Bidirectional training comes at negative cost, beating direction specialists in both directions, and the backward direction doubles as a fast inverse solver. On LE-PDE-UQ's turbulent Navier-Stokes benchmark, a single bidirectional model reaches accuracy within of their ten-model ensemble at a tenth of the training cost, with the best training-free pixel-level calibration. Round-trip consistency turns reversibility into a practical trust signal for generative models.
Cite
@article{arxiv.2608.00675,
title = {Round-Trip Consistency: Bidirectional Diffusion Models Can Predict Their Own Rollout Errors},
author = {Alexander Scheinker},
journal= {arXiv preprint arXiv:2608.00675},
year = {2026}
}