外观新颖KV记忆让分钟视频动态度从27.5升至58.1

RECAP-Forcing: Retaining Content Appearances for Long Video Generation

Haiyang Xu, Zheng Ding, Zhuowen Tu

cs.CV

2026-08-27

RECAP-Forcing把长视频有限KV按外观新颖度来存:强化首帧sink,再用RAFT把新出现的patch放进固定银行。免训练。挂上Self-Forcing后,60秒VBench-Long总分75.9升到79.5,动态度27.5升到58.1。

这篇在解决什么

自回归视频模型按块往前滚,注意力窗口却是死的。Self-Forcing 一类蒸馏后的因果生成器,一次只能看见最近几帧的 KV。窗口外的东西要么丢掉,要么被压成越来越糊的摘要。

按时间组织记忆,会卡在一组对冲里。留不住早期外观,主体身份慢慢漂;把开场帧钉死当锚,后面的运动又被拽回去,画面发僵。Deep Forcing、MemRoPE、Rolling Sink 都还在这条时间轴上修:加宽 sink、压缩被踢掉的 key、循环回放开头几秒。它们默认一件事:第 60 秒要画得像,就得顺着时间轴找回「上次看见它」的那一帧。

方法

RECAP-Forcing 换了索引轴:记的是「第一次看见什么」,不是「最近看见什么」。角色进画、被挡住的区域露出来、镜头扫出新店面,这些叫 novel appearance event。只在这些时刻把对应 patch 的 KV 拷进记忆;光流还能对上的区域不再入库。记忆容量跟着新内容走,不跟着视频时长走。第 3 秒进画的人,第 5 分钟还能直接 attend 到当时那份未压缩的 KV。

两套机制共用这条原则。

整套是推理期 hook,没有新可学参数。主实验挂在 Wan2.1-T2V-1.3B 蒸馏出的 Self-Forcing 上:832×480,每块 3 个 latent 帧,窗口 6 帧(1 sink + 2 prior + 3 current),60 秒滚 240 个 latent 帧。同一组超参套到 Infinite-Forcing、LongLive、Helios 14B。

结果

评测是 VBench-Long,128 条 prompt × 5 个 seed,60 秒。数字是百分比。

方法Dynamic DegreeSemanticTotal
Self-Forcing27.558.075.9
未强化 sink30.462.376.8
RECAP-Forcing58.165.579.5
Infinite-Forcing61.362.978.3
Ours71.365.479.7
LongLive20.365.978.1
Ours26.666.878.5
Helios 14B36.245.470.3
Ours47.860.576.3

Helios 上 Object Class 从 36.1 拉到 83.7,语义面缺口最大。LongLive 本身已经很稳,动态度只从 20.3 到 26.6,总分只加 0.4,增益最薄。

跟另外三个免训练方法比,还是 Self-Forcing 底座:Deep Forcing 总分 76.2、动态度 32.0;MemRoPE 78.7 / 41.2;Rolling Sink 78.9 / 23.0。RECAP-Forcing 是 79.5 / 58.1,总分最高,运动也拉开一截。Rolling Sink 的一致性指标更好看,画面更僵。

组件拆开(Infinite-Forcing 底座):只强化 sink,动态度从 61.3 掉到 41.6,语义升到 65.2;只开银行,动态度到 78.2,一致性略降;两件一起,动态度 71.3,总分 79.7 最高。sink 管开场戏,银行管中途进画的新东西。

λ 扫到 5 最好,sink 大约分到 24% 注意力;再加到 8、10、12,总分掉回 79.2、78.9、78.6。银行容量从 1/4 帧加到 4 帧,总分几乎不动(79.6–79.8),8 帧反而掉到 79.3。默认一帧够用。

动态度涨,平均光流其实在降:相机流 1.20 到 0.90,物体流 0.71 到 0.66。基线那种乱漂的全局运动被压下去,接近冻住的片子被推过阈值,漂移尾部从 37 条减到 24 条。

附录里身份数字更硬。20 条「主体全程在画」的 prompt,DINOv2 CLS:整帧相似度 0.745 到 0.850,主体裁剪 0.642 到 0.696。拉到 5 分钟,基线末尾掉到 0.61,RECAP-Forcing 1 分钟就停在 0.81,一直到 5 分钟还是 0.81。人为构造的离场再入场(空窗 7.5 秒,注意力窗口的 5 倍,边界清空滑动窗、只留 sink 和银行):整帧 0.699 到 0.752。

9 人、216 次盲比,对 Self-Forcing 的 Overall 胜率 84.3%;对三个竞品分别是 77.8%、75.0%、79.6%。GH200 上 1 分钟从 185 秒变 288 秒,大约 1.6 倍,这个倍数不随时长涨。

为什么重要

对已经在跑因果视频模型的人,这是即插即用的推理补丁,不用重蒸。更值得带走的是那条索引轴:有限记忆该按「新出现了什么」分配,不该按「过多久」衰减。分钟级一致性变成记忆结构的属性,不必让模型从压缩过的历史里把脸再猜回来。

它没有重写生成器,也没有学一套 object slot。单位是第一次出现时的 patch,不是跟踪好的实体。这既是便宜之处,也是后面局限的源头。

局限与存疑

作者自己写了:光流会把雨、水花、涟漪这类随机纹理反复标成新内容,占槽却不提供可复用的外观。更长程的对应、或者语义层的分组,论文只作为后续方向提出,没有做。

几处数字也该看冷。LongLive 上总分只加 0.4,底座已经很稳时,这套 hook 的空间不大。VBench 的 Subject Consistency 在 Self-Forcing 上从 98.0 微降到 97.7,运动上去了,这条一致性指标没有一起涨。离场再入场实验做不到「写进 prompt 让模型自己执行」,因为现有底座根本不听这类时间指令,只能在推理时切段、清窗。这测的是银行能不能跨空隙递外观,不是模型懂剧情。

1.6 倍墙钟也不是免费午餐。银行准入靠 RAFT-small 半分辨率 12 次迭代,部署时要自备这条光流。

术语

原文与代码

相关论文

全部论文解读