Summary (Overview)
- Identifies the historical context-gradient gap in frozen-cache Self Forcing: future losses supervise how noisy tokens read cached history, but cannot propagate into the clean-timestep computation that writes self-generated latents into K/V memory. This missing credit-assignment path causes identity drift, scene breaks, and layout inconsistency during long extrapolation.
- Proposes Self Gradient Forcing (SGF), a two-pass training strategy that restores the missing memory-writing supervision without full rollout backpropagation. Pass 1 performs a no-gradient serial autoregressive rollout and records the self-generated context and noisy latents at a sampled denoising exit step. Pass 2 discards the rollout cache and performs a bounded parallel reconstruction where the recorded context is reprocessed (stop-gradient) and gradients flow through the clean-context K/V formation and future-to-context causal attention.
- Achieves substantially improved long-video extrapolation (60s and 240s) across frame-wise and chunk-wise generation under multiple initializations (TF, causal CD, causal ODE), with consistent gains in subject consistency, background consistency, aesthetic quality, motion smoothness, and flickering. At 5s, SGF matches Self Forcing quality.
- Demonstrates training feasibility with only modest overhead (peak memory 87.01GB vs 79.01GB, runtime 11.71s vs 10.39s per 5 steps) compared to frozen-cache Self Forcing, while direct differentiable-cache training runs out of memory (OOM).
- Validates with human preference study: GSB scores are all positive (up to 48.7%) across 1,900+ paired judgments, indicating consistent preference for SGF over Self Forcing in long-horizon generation.
Introduction and Theoretical Foundation
Background
Long-form autoregressive video generation requires scenes, objects, and dynamics to remain coherent far beyond the training window. In autoregressive video diffusion, each new frame or chunk is conditioned on the prompt and previously generated content. However, Teacher-Forcing (TF) training conditions on ground-truth video contexts, while inference conditions on self-generated histories, creating exposure bias.
Self Forcing (Huang et al., 2025) mitigates this mismatch by training the student on histories produced by its own autoregressive rollout, using distribution-matching distillation (DMD) supervision from a bidirectional video model. This self-rollout recipe has become a common training paradigm. However, to make self-rollout training feasible, these methods typically truncate cross-chunk gradient flow through the historical KV cache.
The Historical Context-Gradient Gap
During rollout, generated latents are processed by the causal DiT at the clean context timestep and stored as a causal KV cache. Later chunks read this cache as frozen historical context. Future losses can train noisy denoising tokens to read cached history, but cannot propagate into the clean-timestep computation that wrote the historical K/V entries. The authors call this missing credit-assignment path the historical context-gradient gap.
Formally, let denote the cache-writing computation at . In serial rollout:
where is the predicted clean latent for block . The new entry becomes part of the state used by later blocks. If future losses could differentiate through this historical entry, they would assign credit to the clean-context computation that encoded into K/V memory.
Frozen-cache Self Forcing removes this signal. The historical K/V entries are treated as detached rollout state. Consequently, future losses do not supervise the computation that produced those entries. This becomes problematic because the same DiT parameters are shared across noisy denoising and clean-context cache writing. DMD losses at noisy timesteps update the shared parameters:
Thus, training can change the clean-context cache writer, but frozen-cache Self Forcing provides no future-loss correction for how self-generated latents are encoded into K/V memory.
Direct Differentiable Cache (Impractical)
A direct solution would keep the historical KV cache differentiable, allowing future losses to backpropagate into the clean-timestep K/V writing computation. However, this requires retaining the autograd graph for every historical cache write until all later blocks that consume it have been processed. The graph grows with rollout length, transformer depth, and sequential cache updates, making direct differentiable-cache training impractical for long-horizon self-rollout.
Methodology
Self Gradient Forcing (SGF)
SGF is a two-pass training strategy that turns the serial graph-retention problem into a bounded parallel recomputation problem.
Pass 1: No-Gradient Self-Rollout
The first pass is the ordinary serial autoregressive rollout used at inference. For each block , the model denoises with the current historical cache and records a sampled exit state: the noisy input and the predicted clean latent . The latent is then processed at to update the serial K/V cache for later blocks. All computations are run without gradient tracking, and the recorded states are treated as fixed data for Pass 2.
Pass 2: Parallel Context-Gradient Reconstruction
SGF keeps Pass 1 and the reconstruction geometry unchanged but removes the stop-gradient boundary on the reconstructed context K/V path. The context latents themselves remain stop-gradient inputs, so SGF does not optimize the sampled rollout trajectory. Instead, the model re-encodes these fixed self-generated latents at , and the resulting K/V entries remain differentiable when future target tokens attend to them.
The reconstruction is:
where is the causal reconstruction mask that reproduces the sink-plus-window attention relation induced by the serial cache.
The gradient flow is:
Therefore, future DMD losses supervise both target-side denoising and clean-context K/V writing.
Algorithm
The full SGF training step is summarized in Algorithm 1 (see paper). Key steps:
- Sample exit index and set .
- Pass 1: Disable gradients. For each block from 1 to , denoise from to using current cache, record and , then update cache with .
- Pass 2: Enable gradients. Set . Compute . Update with , keeping context-K/V gradients.
Gradient Boundary
SGF is a bounded reconstruction of the sampled exit computation, not full rollout BPTT. The recorded context latents, noise samples, scheduler states, and Pass-1 serial cache trajectory are all stop-gradient. Gradients flow only through the Pass-2 reconstruction: the clean-context forward, K/V projections, future-to-context attention, and target-side denoising computation.
Streaming Context Policy
For frame-wise streaming generation, both Self Forcing and SGF use the same sink-plus-FIFO context policy. The authors use a fixed sink prefix and a FIFO window of recent latents. For the Wan video VAE, four sink latents are used to preserve the temporal boundary prefix induced by its asymmetric grouping pattern (1-frame boundary group followed by 4-frame groups).
Empirical Validation / Results
Experimental Setup
- Training window: 5 seconds for all models.
- Evaluation: 5s (VBench), 60s (VBench-Long prompts), 240s (128 MovieGen prompts).
- Matched pairs: SGF vs Self Forcing share the same initialization, prompt set, random seed, sink/FIFO policy, sliding window, chunking strategy, and sampling configuration.
- Frame-wise: sink 4, total window 21, FIFO 16, current chunk 1.
- Chunk-wise: sink 3, total window 12, FIFO 6, current chunk 3, chunk size 3.
Long Video Generation (60s and 240s)
Frame-wise Results (Table 1)
| Horizon | Metric ↑ | Causal ODE init | Causal CD init | TF init | |||
|---|---|---|---|---|---|---|---|
| SF | SGF | SF | SGF | SF | SGF | ||
| 60s | Aesthetics | 0.543 | 0.606 | 0.608 | 0.630 | 0.650 | 0.653 |
| Background | 0.947 | 0.966 | 0.969 | 0.973 | 0.970 | 0.974 | |
| Dynamics | 0.867 | 0.566 | 0.489 | 0.267 | 0.647 | 0.730 | |
| Imaging | 0.657 | 0.715 | 0.684 | 0.708 | 0.704 | 0.714 | |
| Motion | 0.975 | 0.986 | 0.984 | 0.988 | 0.985 | 0.982 | |
| Subject | 0.928 | 0.971 | 0.974 | 0.983 | 0.976 | 0.983 | |
| Flickering | 0.971 | 0.987 | 0.992 | 0.992 | 0.988 | 0.991 | |
| 240s | Aesthetics | 0.510 | 0.543 | 0.533 | 0.584 | 0.614 | 0.619 |
| Background | 0.943 | 0.966 | 0.964 | 0.971 | 0.965 | 0.968 | |
| Dynamics | 0.840 | 0.556 | 0.599 | 0.385 | 0.669 | 0.648 | |
| Imaging | 0.648 | 0.698 | 0.632 | 0.690 | 0.701 | 0.718 | |
| Motion | 0.971 | 0.985 | 0.981 | 0.986 | 0.980 | 0.982 | |
| Subject | 0.936 | 0.969 | 0.967 | 0.976 | 0.965 | 0.972 | |
| Flickering | 0.937 | 0.972 | 0.971 | 0.977 | 0.967 | 0.968 |
SGF improves over Self Forcing on most quality and consistency metrics across both horizons. Dynamic degree is the main exception (Self Forcing can be higher), but this is because Self Forcing rollouts often contain scene jumps, broken camera geometry, and object deformation that create incoherent apparent motion.
Chunk-wise Results (Table 2)
Similar pattern: SGF improves aesthetics, background, imaging, motion, subject, and flickering over matched Self Forcing baselines under causal CD and TF initializations.
User Study (Table 3)
Blind GSB preference study with >1,900 paired judgments:
| Setting | Horizon | Causal ODE init | Causal CD init | TF init |
|---|---|---|---|---|
| Frame-wise | 60s | 29.6% | 36.8% | 45.1% |
| Frame-wise | 240s | 38.6% | 35.9% | 48.7% |
| Chunk-wise | 60s | – | 32.9% | 37.5% |
| Chunk-wise | 240s | – | 34.3% | 44.9% |
All scores are positive, indicating consistent preference for SGF over Self Forcing.
Training Feasibility (Table 4)
| Training variant | Peak memory | Stable memory | Time / 5 steps | Outcome |
|---|---|---|---|---|
| Self Forcing, frozen KV cache | 79.01 GB | 79.01 GB | 10.39 s | trains |
| SGF, serial Pass 1 + parallel Pass 2 | 87.01 GB | 63.73 GB | 11.71 s | trains |
| Self Forcing, differentiable KV cache | OOM | OOM | – | OOM |
SGF adds modest overhead (10% peak memory, 13% runtime) while direct differentiable-cache runs out of memory.
Two-Pass Recovery Fidelity (Table 7)
Pass 2 closely reproduces Pass-1 exit predictions across denoising steps:
| Exit step | Rel. L2 | Rel. L2 / | Cosine |
|---|---|---|---|
| 1000 | 0.02133 | 2.73 | 0.999766 |
| 750 | 0.01566 | 2.00 | 0.999874 |
| 500 | 0.01125 | 1.44 | 0.999936 |
| 250 | 0.00812 | 1.04 | 0.999967 |
| Overall | 0.01409 | 1.80 | 0.999886 |
Overall relative error is 1.41%, and cosine similarity is 0.999886, consistent with accumulated bf16 roundoff rather than substantive mismatch.
Sink Ablation (Table 8)
For frame-wise SGF with TF initialization at 60s:
| Metric | Sink 1 | Sink 2 | Sink 4 | Sink 8 |
|---|---|---|---|---|
| Aesthetics | 0.627 | 0.645 | 0.653 | 0.655 |
| Background | 0.970 | 0.974 | 0.974 | 0.976 |
| Dynamics | 0.743 | 0.733 | 0.730 | 0.728 |
| Imaging | 0.715 | 0.713 | 0.714 | 0.714 |
| Motion | 0.982 | 0.982 | 0.982 | 0.983 |
| Subject | 0.983 | 0.982 | 0.983 | 0.983 |
| Flickering | 0.990 | 0.990 | 0.991 | 0.992 |
Sink 4 reaches the stable range suggested by the VAE boundary diagnostic; sink 1 is weaker on aesthetics and flickering.
Theoretical and Practical Implications
- Theoretical contribution: Identifies and formalizes the historical context-gradient gap
Related papers
- Vidu S1: A Real-Time Interactive Video Generation Model
Vidu S1 achieves real-time interactive video generation with voice control, infinite length, and state-of-the-art quality on consumer GPUs.
- Search Beyond What Can Be Taught: Evolving the Knowledge Boundary in Agentic Visual Generation
Co-training a generator and reasoner to discover the generator's evolving knowledge boundary enables adaptive search, matching frontier oracles at minimal compute.
- TimeLens2: Generalist Video Temporal Grounding with Multimodal LLMs
TimeLens2 treats evidence as an interval set throughout supervision and optimization, enabling 2B-8B models to outperform 397B Qwen3.5