History-Guided Video Diffusion
About
Classifier-free guidance (CFG) is a key technique for improving conditional generation in diffusion models, enabling more accurate control while enhancing sample quality. It is natural to extend this technique to video diffusion, which generates video conditioned on a variable number of context frames, collectively referred to as history. However, we find two key challenges to guiding with variable-length history: architectures that only support fixed-size conditioning, and the empirical observation that CFG-style history dropout performs poorly. To address this, we propose the Diffusion Forcing Transformer (DFoT), a video diffusion architecture and theoretically grounded training objective that jointly enable conditioning on a flexible number of history frames. We then introduce History Guidance, a family of guidance methods uniquely enabled by DFoT. We show that its simplest form, vanilla history guidance, already significantly improves video generation quality and temporal consistency. A more advanced method, history guidance across time and frequency further enhances motion dynamics, enables compositional generalization to out-of-distribution history, and can stably roll out extremely long videos. Project website: https://boyuan.space/history-guidance
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Single-view Novel View Synthesis | DL3DV (Long-term (200th frame)) | PSNR13.51 | 13 | |
| Single-view Novel View Synthesis | RealEstate10K Long-term, 200th frame 84 (test) | PSNR15.21 | 13 | |
| Single-view Novel View Synthesis | RealEstate10K Short-term, 50th frame 84 (test) | PSNR18.53 | 13 | |
| Single-view Novel View Synthesis | DL3DV Short-term (50th frame) | PSNR16.13 | 13 | |
| Time Series Forecasting | GreenEarthNet 1.0 (test) | PSNR (NDVI)15.71 | 9 | |
| Time Series Forecasting | TS-S12 S2-Sentinel-2 (full-band) | PSNR16.09 | 7 | |
| Video Generation | RealEstate10K 0~200 frames (test) | PSNR10.86 | 6 | |
| Video Generation | RealEstate10K >=256 frames (test) | PSNR10.02 | 6 | |
| Video Generation | RealEstate10K 0~64 frames (test) | PSNR15.65 | 6 | |
| Video Generation | RealEstate10K 0~128 frames (test) | PSNR12.55 | 6 |