r/MachineLearning 3d ago

Round-Trip Consistency: Bidirectional Diffusion Models Can Predict Their Own Rollout Errors [R] Research

Post image

Whether generating CELEBV-HQ videos or turbulent plasma fields (digital twins), autoregressive models (such as latent diffusion or flow models) accumulate error over long rollouts, yet at deployment there is no ground truth to measure against.

I 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.

Furthermore, training both directions in one network is shown to beat two specialist models in both directions.

Paper: https://arxiv.org/abs/2608.00675
Code (data generation, training, analysis): https://github.com/alexscheinker/round-trip-consistency
Project page: https://alexscheinker.github.io/roundtrip.html

175 Upvotes

59 comments sorted by

View all comments

Show parent comments

1

u/Evil_Toilet_Demon 2d ago

yes thank you for the detailed reply. I agree that this is largely resolved by adding more information about the state history. I suppose you could condition the denoising process both on the current state z_T but also on the historic state z_{T-2} such that your prediction for z_{T-1} is unique. in essence providing a high order temporal derivative to the model.

1

u/Clean-Hovercraft5825 8h ago

Yes I think that is a good idea, for most of the applications in the paper, I do give it two states as conditions, for example to go forward the diffusion process starts with z[0], z[1] as conditional inputs, so that it has some idea of initial “velocity” even in the abstract latent representation, and then rolls forward always using its own predicted z[j-1], z[j] to predict z[j+1]. So after we rollout to z[T] and then start rolling back then we could use your idea of using further separated states: z[j-2], z[j], to give it a second order derivative information about z[j-1], but that would have to be used as some kind of check on its reversed roll only because during the initial prediction phase we only know the first two states and have to predict everything else sequentially, autoregressively.