← 返回 2026-07-23

自梯度强制:原生长视频外推 Self Gradient Forcing: Native Long Video Extrapolation

Junhao Zhuang, Shiyi Zhang, Yuxuan Bian, Yaowei Li, Yawen Luo, Yijun Liu, Weiyang Jin, Songchun Zhang, Xianglong He, Xuying Zhang, Haoran Li, Haoyang Huang, Zeyue Xue, Nan Duan 📅 2026-07-22 👍 34 2026-07-28 18:30
KV缓存 自回归扩散模型 视频生成 训练目标设计 长视频外推

两阶段训练修复自生成历史KV缓存写入的梯度缺口,让5秒训练窗口外推到数分钟视频

前置知识

Teacher Forcing 与暴露偏差(Exposure Bias)

Teacher Forcing 训练时让模型以真实视频上下文(ground-truth)作为条件,而推理时却只能以自己生成的历史作为条件,二者分布不一致,称为暴露偏差,使原生长视频外推变得困难。读后理解为何自回归视频扩散需要一个能让模型'看见自己错误'的训练范式。

理解本文动机的出发点:长视频一致性崩溃的根源正是训练-推理上下文分布不匹配。

Self Forcing(自强制)

Huang et al. 2025 提出的训练范式,让学生模型在自己的自回归 rollout 产生的历史上训练,并用双向视频模型提供的分布匹配蒸馏(DMD)监督,从而缓解暴露偏差。它已成为自回归视频扩散的主流训练范式(Rolling Forcing、Causal Forcing、Self-Forcing++ 等都基于此)。读后理解本文所改进的'基座方法'。

SGF 正是在 Self Forcing 之上做最小改动来恢复一个被截断的梯度信号。

因果 KV 缓存(Causal KV Cache)

在因果 DiT 中,已生成块 $i$ 的预测干净潜变量 $\tilde{x}_i$ 会在干净上下文时间步 $t_{ctx}=0$ 被前向计算,得到键/值(K/V)条目追加到持久缓存中,后续块通过因果注意力读取这个缓存作为历史记忆,而不是直接读取原始潜变量。读后理解'写入记忆'与'读取记忆'是两个独立的计算路径。

本文核心问题就出在'写入'这一步的梯度被截断,导致记忆写入无人监督。

分布匹配蒸馏(DMD)

Distribution Matching Distillation,用 KL 散度梯度 $\nabla D_{KL}$ 把一个慢速双向教师模型的得分函数蒸馏到快速自回归学生模型,在采样的噪声去噪时间步上施加少步损失。Self Forcing 和 SGF 都用它作为目标侧损失。读后理解'未来损失'具体指什么。

SGF 恢复的正是让 DMD 损失能够监督上下文 K/V 写入的路径。

研究动机

Self Forcing 已成为自回归视频扩散的主流训练范式,它让学生在自己 rollout 产生的历史上训练以缓解暴露偏差。但为了使自 rollout 训练可行,几乎所有这类方法都继承了一个关键计算约束:截断穿过历史 KV 缓存的跨块梯度流。具体场景:当块 $i$ 被生成后,其预测干净潜变量 $\tilde{x}_i$ 被因果 DiT 在干净上下文时间步 $t_{ctx}=0$ 处理,结果 K/V 条目追加到缓存;后续块把这个缓存当作冻结的 rollout 状态来读取。后果是未来的 DMD 损失只能训练'噪声去噪 token 如何读取缓存历史',却无法反向传播到'干净时间步的写入计算'。问题会进一步放大,因为同一个 DiT 在噪声去噪步和干净上下文写入之间共享参数:DMD 在噪声时间步的更新会改变共享参数,使得 $KV_i^0(\theta_{r+1}) \neq KV_i^0(\theta_r)$,而后续块损失又无法纠正这种漂移。Fig. 1 直观展示了定性后果——Self Forcing 在前若干帧仍局部合理,但随着外推进行,主体身份、视角、布局一致性逐渐崩溃(view jump、scene break、identity drift)。

本文的目标是本文的目标是在原生自回归训练目标内补回这个缺失的记忆写入监督信号,使得未来的视频潜变量损失能够训练模型把自生成上下文编码成更有效的因果记忆——从而实现真正的原生长视频外推。作者明确希望:只在 5 秒训练窗口上训练的模型,应该能外推到分钟级别的视频(60s、240s),并在主体身份、背景/布局一致性、时序稳定性上保持稳固。关键约束是:恢复这个梯度信号时绝不能打开穿过完整串行 rollout 的循环自动微分图(那会因显存随 rollout 长度增长而 OOM),也不能破坏 Self Forcing 的短时窗质量。

与已有工作不同的是,直接解决方案是让历史 KV 缓存保持可微,但这要为每一次缓存写入保留反向图直到所有后续块消费完——图随 rollout 长度、Transformer 深度、串行更新次数线性增长,作者实测这种 direct differentiable-cache 直接 OOM(见 Table 4)。现有长视频工作走的是另一条路:改变'暴露给生成器的记忆'本身——检索增强(Longlive-RAG)、稀疏可训练注意力(Sparse Forcing)、KV 压缩(Forcing-KV)、流式长训练、长上下文监督等。SGF 的独特切入角度是正交于这条路的:在给定上下文与缓存设计的前提下,改进'自生成内容如何被写进未来可读的 K/V 表示'。它把一个串行图保留问题转成了一个有界的并行重计算问题——这是与所有已有方法的本质区别。

核心方法

直觉:Self Forcing 实际训练的'出口步'计算本身就是单步事件,与其对整条串行 rollout 做反向传播,不如把那一个被采样的出口步在并行中重构造一次,并在上下文 K/V 路径上开启梯度。技术路线是两阶段(two-pass)。Pass 1 执行与推理一致的真正无梯度串行自回归 rollout:对每个块 $i$,在均匀采样的出口索引 $s$ 上记录噪声输入 $z_i^{t^\star}$ 和预测干净潜变量 $\tilde{x}_i$;$\tilde{x}_i$ 通过干净上下文前向写入持久 KV 缓存供后续块使用,整个过程无梯度跟踪。Pass 2 丢弃 rollout 缓存,在因果掩码 $\mathcal{M}_{rec}$(复刻 sink+FIFO 的注意力关系)下并行重构造同一个出口步计算:上下文潜变量 $\tilde{X}_{ctx}$ 作为停梯度干净潜变量输入,噪声潜变量 $Z^\star$ 再次作为预测输入,模型重新计算上下文隐藏状态、K/V 投影、未来到上下文的因果注意力。于是在未来潜变量上的 DMD 损失就能流经被重构造的干净上下文 K/V 写入器。

核心创新点与冻结缓存 Self Forcing 的本质区别在于梯度边界。冻结缓存 Self Forcing 的 Pass 2 同样会重构造出口步,却把上下文 K/V 路径当作分离(detached)记忆——DMD 损失只训练未来噪声 token 如何读取历史。SGF 在保持 Pass 1 与重构造几何完全不变的前提下,去掉了重构造上下文 K/V 路径上的停梯度边界,但保留上下文潜变量本身为停梯度输入。这意味着 SGF 不优化被采样的 rollout 轨迹(不更新产生 $\tilde{x}_i$ 的去噪决策),却让重编码的 K/V 条目在未来目标 token 注意力时保持可微,从而补回记忆写入监督:$$\nabla_\theta \mathcal{L}_{DMD}(\hat{X}_{tar}) \supset \frac{\partial \mathcal{L}}{\partial KV^{rec}_{ctx}} \frac{\partial KV^{rec}_{ctx}}{\partial \theta}$$ 这就是所谓的历史上下文梯度缺口(historical context-gradient gap)的填补。

方法步骤详情

完整步骤如下(对应 Algorithm 1)。(1) 采样出口索引 $s \sim \text{Uniform}\{1,...,K\}$,令 $t^\star = t_s$。(2) Pass 1(无梯度):对块 $i=1..N$,采样 $z_i^{t_1} \sim \mathcal{N}(0,I)$;对去噪步 $k=1..s$ 调用 $G_\theta(z_i^{t_k}; t_k, KV)$ 得到 $\hat{x}_i^{(k)}$ 并用调度器 $\Psi$ 更新噪声潜变量;记录 $Z^\star_i = z_i^{t^\star}$ 与 $\tilde{x}_i = \hat{x}_i^{(s)}$;把 $\tilde{x}_i$ 追加到上下文潜变量集合并通过 $C_\theta(\tilde{x}_i, t_{ctx}; KV)$ 更新持久 KV 缓存。(3) Pass 2(开启梯度):令 $X_{rec} = \text{sg}(X_{ctx})$,在匹配的因果掩码 $\mathcal{M}_{rec}$ 下计算目标预测 $\hat{X}_{tar} = G_\theta(Z^\star, t^\star; X_{rec}, t_{ctx}, \mathcal{M}_{rec})$,梯度穿过上下文侧前向、K/V 投影、未来到上下文注意力与目标侧去噪计算。(4) 用 $\mathcal{L}_{DMD}(\hat{X}_{tar})$ 更新 $\theta$,并保留上下文 K/V 梯度。实现细节:Pass 2 使用 FlexAttention 配编译静态块稀疏因果掩码以提升显存效率;帧式配置 sink 4、总窗 21(FIFO 16、当前块 1);块式配置 sink 3、总窗 12(FIFO 6、当前块 3、块大小 3)。fake-score 与 generator 更新按 5:1 调度,额外 Pass 2 工作只影响每个 5 步循环里的 generator 更新。

技术新颖性

技术新颖性在于把一个串行图保留问题重塑为有界并行重计算问题,从而以可承受代价恢复了直接可微缓存无法承担的上下文写入梯度。作者给出清晰的显存 scaling 论证:直接可微缓存的显存 $\mathcal{M}_{direct} \gtrsim \mathcal{M}_{cache} + \sum_{i=1}^{T} \mathcal{M}_{KV\text{-formation}}(i) + \mathcal{M}_{\text{saved attention}}$(循环依赖、随 rollout 增长、OOM),而 SGF 的显存 $\mathcal{M}_{SGF} \approx \mathcal{M}_{\text{pass1 cache data}} + \mathcal{M}_{\text{records}}(\tilde{X}_{ctx}, Z^\star) + \mathcal{M}_{\text{parallel window}}(N)$(定窗、并行),满足 $\mathcal{M}_{SGF} < \mathcal{M}_{direct} < \mathcal{M}_{full\text{-}BPTT}$。SGF 还正交于所有上下文/缓存设计改进,能直接叠加。修订中作者识别出 Solaris(Savva et al. 2026)的 Checkpointed Self Forcing 在结构上最接近——同样采用 rollout 后并行重计算——但 SGF 把它形式化为针对历史上下文梯度缺口'记忆写入梯度恢复'的目标,并系统研究了原生长视频外推。

From frozen-cache Self Forcing to Self Gradient Forcing
Figure 2: From frozen-cache Self Forcing to Self Gradient Forcing
VAE boundary and sink-latent choice
Figure 5: VAE boundary and sink-latent choice

实验结果

逐一分析各实验。(1) 5 秒 VBench 作为短时窗健全性检查:SGF 与 Self Forcing 整体可比,未损害短时质量,SGF 在主体/背景/闪烁上常略优(如帧式 TF 初始化 subject 0.961→0.968、flickering 0.988→0.990,见 Table 5/6)。(2) 60s/240s 长时窗外推是核心:跨两种生成粒度与两个长时程,SGF 在多数质量与一致性指标上提升。帧式 240s TF 初始化:aesthetics 0.614→0.619、background 0.965→0.968、imaging 0.701→0.718、subject 0.965→0.972、flickering 0.967→0.968、motion 0.980→0.982;块式 240s TF 初始化提升更显著:aesthetics 0.557→0.629、background 0.944→0.970、imaging 0.688→0.712、subject 0.946→0.975、flickering 0.934→0.970、motion 0.967→0.985(Table 1/2)。(3) dynamic degree 是唯一例外,Self Forcing 有时更高——但 Appendix H 表明长 SF rollout 常含场景跳变/相机几何破坏/物体形变,产生大但不连贯的表观运动从而虚高 dynamic degree,并非更优运动质量。(4) 人类偏好:10 组盲测 GSB(>1900 次配对判断)全部为正,从 29.6%(帧式 60s 因果 ODE)到 48.7%(帧式 240s TF 初始化),评估者一致偏好 SGF(Table 3)。(5) 训练可行性:SGF 峰值显存 79.01GB→87.01GB,稳定显存反而从 79.01GB 降到 63.73GB(因并行窗比循环缓存更省),每 5 步墙钟时间 10.39s→11.71s;直接可微缓存 OOM(Table 4)。(6) 两阶段恢复保真度:相对 L2 误差 1.41%、余弦相似度 0.999886,约为 bf16 精度 $\epsilon_{bf16}=2^{-7}$ 的 1.80 倍,证明 Pass 2 是 Pass 1 的忠实本地重现(Table 7)。(7) sink 消融:sink 4 是覆盖 Wan VAE 边界过渡前缀的最小稳定点,sink 8 仅边际提升(Table 8/Fig. 5-6)。

Frame-wise 60-second and 240-second long-horizon metrics
Table 1: Frame-wise 60-second and 240-second long-horizon metrics
Chunk-wise 60-second and 240-second long-horizon metrics
Table 2: Chunk-wise 60-second and 240-second long-horizon metrics
Long-horizon GSB preference scores for SGF vs. matched Self Forcing baselines
Table 3: Long-horizon GSB preference scores for SGF vs. matched Self Forcing baselines
Training feasibility of context-gradient recovery
Table 4: Training feasibility of context-gradient recovery
Pass-1 versus Pass-2 latent recovery fidelity
Table 7: Pass-1 versus Pass-2 latent recovery fidelity
Frame-wise 240-second comparison under TF initialization
Figure 3: Frame-wise 240-second comparison under TF initialization
查看结构化数据
任务指标本文基线提升
帧式长视频主体一致性(240s, TF 初始化, VBench-Long) Subject consistency↑ 0.972 Self Forcing 0.965 +0.007,长时程身份漂移显著减少
块式长视频主体一致性(240s, TF 初始化) Subject consistency↑ 0.975 Self Forcing 0.946 +0.029,粗粒度更新下增益更大
块式长视频美学质量(240s, TF 初始化) Aesthetic quality↑ 0.629 Self Forcing 0.557 +0.072,质量类指标最大单项提升
长时程人类偏好(盲测 GSB) GSB = (G−B)/(G+S+B)×100% +29.6% ~ +48.7%(全部 10 组为正) Self Forcing 基线 帧式 240s TF 初始化最高 +48.7%
训练显存可行性(每 5 步) Peak memory / 墙钟时间 SGF 87.01GB / 11.71s(稳定 63.73GB) Self Forcing 79.01GB / 10.39s;直接可微缓存 OOM 在有界开销下恢复了被截断的写入梯度,直接方案不可行

局限与改进

作者承认的局限(Appendix G):(1) SGF 是缺失上下文梯度信号的有界替代,而非完整 rollout BPTT——它监督'被记录的自生成潜变量如何被写入未来可读记忆',但不更新这些潜变量本身,也不优化产生它们的去噪决策序列,因此不声称恢复完整串行 rollout 的精确梯度。(2) SGF 假设并行 Pass 2 忠实重现串行上下文关系;若 teacher-forcing 掩码、sink 位置、FIFO 窗、RoPE 处理、上下文时间步或块对齐偏离推理,SGF 可能为错误的注意力关系恢复梯度从而训练出错误的写入器——这种对齐在干净上下文时间步尤其关键,因为它与噪声出口步损失共享但不受其直接监督。(3) SGF 不是其他长视频技术的替代品(流式长 rollout 调优、检索增强记忆、稀疏注意力、更强因果初始化、长上下文教师都针对互补部分)。我自己的观察:(4) 所有实验基于 Wan video VAE 与特定 DiT 架构,对其他 VAE 分组模式的泛化未验证;(5) dynamic degree 指标歧义使定量比较仍需人类偏好佐证;(6) 仅用 5s 训练窗口,更长训练窗口下的相对增益形态未探讨;(7) 恢复保真度仅在 forward 层面验证,未证明梯度方向也精确匹配。

独立分析的弱点

(1) 有界替代而非全 BPTT——只对单出口步、且不更新采样潜变量。改进方向:用梯度检查点扩展重建窗口,或在小段子序列上周期性做一次完整 BPTT 作为强监督。(2) 每块每步只采样单个出口步 $t^\star$,监督信号稀疏。改进:多出口步加权平均,或在出口步分布上加课程(早期低噪、后期高噪)。(3) 高度依赖重建几何与推理一致——掩码/RoPE/sink 任何偏差都会训练到错误的写入器,比较脆弱。改进:训练中内嵌 Pass1-Pass2 一致性自检(类似 Appendix D 但在线),自动校验掩码。(4) 上下文策略仍是固定 sink+FIFO,记忆表达力有限。改进:可学习 sink、或与检索/稀疏注意力组合以容纳更长程上下文。(5) dynamic degree 不能区分连贯与不连贯运动,需更精细的运动连贯性度量(如光流一致性、相机估计稳定性)才能公平比较。(6) 仅在 5s 窗口验证,长窗口训练是否会稀释上下文梯度信号未知。

未来方向

作者明确提出的未来方向:把 SGF 与更强初始化、长上下文调优、检索增强记忆、缓存压缩技术结合;最自然的下一步是把 SGF 与长 rollout 暴露或检索组合,使模型既能写好短窗记忆又能访问更丰富的长程上下文。基于本成果可延伸的方向:把 SGF 迁移到交互式/世界模型场景(如 Solaris 的 Minecraft 多人世界模型、Matrixgame3),让世界状态记忆写入同样获得未来监督;与 Head Forcing 的头异质性、Next Forcing/Video-Mirai 的多块未来感知监督融合;用 SGF 解锁更长训练窗口(分钟级训练窗)以缩小训练-外推差距;探索可学习 sink 与 SGF 的联合优化。从理论角度,可研究 SGF 梯度相对于全 BPTT 梯度的偏差界,给出有界近似的收敛性保证。

复现评估

开源情况:作者承诺代码与模型发布于项目页 https://zhuang2002.github.io/SelfGradientForcing ,但阅读时点尚未放出。基线来源明确:帧式与块式因果 ODE 的 Self Forcing 基线用 Causal Forcing 发布的 checkpoint,块式双向 ODE 基线用 Self Forcing 发布的 checkpoint,其余由作者在相同训练设置下复现。数据与配置:训练仅用 5s 窗口,基于 Wan video VAE,Pass 2 用 FlexAttention 配编译静态块稀疏因果掩码;帧式 sink 4/FIFO 16/当前 1、块式 sink 3/FIFO 6/当前块 3/块大小 3 全部写明。评测协议标准:5s 用 VBench 16 维、60s 用 VBench-Long、240s 用 128 条 MovieGen 提示。算力:从峰值显存约 80GB 推断为单卡 A100/H100 80GB 级别。算法(Algorithm 1)步骤精确、配置完整,复现难度中等——主要工程难点在于让 Pass 2 的因果重建掩码与 RoPE 精确匹配推理几何,且在干净上下文时间步的对齐上容错极低;若没有发布 checkpoint,精确复现初始化有一定门槛。两阶段恢复保真度(Table 7)与 sink 消融(Table 8)提供了可自查的诊断实验。