跳转至

Accelerating Text-to-Video Generation with Calibrated Sparse Attention

会议: ECCV2026
论文: https://eccv.ecva.net/virtual/2026/poster/3436
PDF: https://media.eventhosts.cc/Conferences/ECCV2026/pdfs/1429.pdf
领域: 视频生成
关键词: 稀疏注意力、离线校准、空间重复、FlashAttention3、推理加速

一句话总结

CalibAtt 将视频扩散模型中跨输入稳定的注意力块稀疏性与空间行重复性离线编译为两种执行路径,在不更新权重的情况下,使 Wan 2.1 14B 的 720p 生成延迟从 1244 秒降至 785 秒,同时保持相近的 VBench 表现。

研究背景与动机

视频扩散 Transformer 要在大量时空 token 之间计算注意力,分辨率与帧数增加会让二次复杂度变得昂贵。FlashAttention 通过分块和在线 softmax 降低显存访问与中间矩阵存储,却仍然计算全部查询与键的交互。已有免训练加速方法进一步删去低贡献连接,但静态窗口依赖预设的位置规律,在线筛选又要在生成过程中估计块的重要性。

本文的观察不是“所有注意力都局部”,而是同一层、同一头、同一扩散时间步的很多弱连接,在不同提示词与初始噪声下都很弱。这种稳定性并不跨所有层和头成立,因此全模型共享一张几何掩码会丢掉结构差异。另一些头不容易按块稀疏化,却在单帧内不同空间行上反复产生相似注意力分布,提供了另一种省算力的机会。

核心 idea:把跨输入稳定的计算选择放到离线阶段,分别识别可跳过的注意力块和可复用的空间行输出,再让推理内核直接执行这些选择,而不在线重新发现稀疏模式。

方法详解

整体框架

输入是一个已训练视频生成模型、固定推理配置和一组校准提示词;输出是按时间步、层、头索引的块掩码字典与空间重复标记。校准过程一方面统计块注意力能量并跨提示词聚合,另一方面识别适合只计算少量锚点行的注意力头。推理时,非重复头走块稀疏路径,重复头走锚点查询与结果广播路径,最后回到原来的去噪流程。

这里固定的是“计算哪些连接”,不是注意力数值。被保留的连接仍由当前输入的查询、键和值计算;空间重复路径也要针对当前输入重新计算锚点输出。因而它既不是缓存整段视频特征,也不是把不同提示词的注意力输出直接互换。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    Input["模型与校准提示词"] --> Energy["块能量选择"]
    Energy --> Consensus["跨提示词聚合"]
    Input --> Repetition["空间重复检测"]
    Consensus --> Execution["预编译双路执行"]
    Repetition --> Execution
    Execution -->|非重复头| Sparse["跳过未选块<br/>计算保留连接"]
    Execution -->|重复头| Anchors["锚点行注意力<br/>广播到邻近行"]
    Sparse --> Output["继续去噪并生成视频"]
    Anchors --> Output

关键设计

1. 块能量选择:以硬件可执行的粒度保留主要注意力质量

对固定的时间步、层和头,先看 softmax 后的注意力矩阵。单个元素很小不意味着 GPU 就能高效跳过它,因此 CalibAtt 直接以 FlashAttention 的块为单位决策。实验采用 128×128 的查询与键块;每个块的能量是对其中的键求注意力之和,再对查询取平均。

用 \(P\) 表示 softmax 后的注意力,\(\mathcal I_r\) 和 \(\mathcal J_c\) 分别表示查询块与键块的 token 集合,\(B\) 表示块边长,原文式 (5) 的定义为:

\[ E_{r,c}=\frac{1}{B}\sum_{i\in\mathcal I_r}\sum_{j\in\mathcal J_c}P_{ij}. \]

这样,每个查询块对应的一整行块能量之和为 1。算法沿键块方向把能量从高到低排序,取累计能量达到阈值的最短前缀,再还原到原来的位置,得到当前提示词的二值掩码。它优化的是保留给定注意力质量所需的块数,而不是要求每一个查询 token 都单独满足相同的能量保证。

阈值随扩散步变化:高噪声的早期步骤更保守,后期允许丢弃更多弱连接。正文报告 Wan 的能量阈值在 0.99 到 0.84 之间,使用指数调度。缓存中的式 (7) 存在符号缺失,因此这里不补写该调度公式,也不猜测未在正文列出的参数取值。

2. 跨提示词聚合:保留经常被需要的块,而非复用单个样本的掩码

单个提示词上的最优选择可能碰巧只适用于那个场景。CalibAtt 对校准集内每个提示词重复块能量选择,再逐元素平均二值掩码,得到每个块被保留的频率。这个频率回答的是“多少校准输入需要它”,不是该块的平均注意力能量;两次阈值化的对象不能混淆。

以 \(\mathcal D\) 表示校准集,\(M_p\) 表示提示词 \(p\) 的掩码。省略共同的时间步、层、头上标后,式 (8) 与正文对式 (9) 的说明可写为:

\[ \bar M_{r,c}=\frac{1}{|\mathcal D|}\sum_{p\in\mathcal D}(M_p)_{r,c},\qquad M_{r,c}=\mathbf 1[\bar M_{r,c}\geq\rho]. \]

默认使用 64 个来自 MovieGenBench 的校准提示词和 \(\rho=0.5\)。较高的保留频率阈值会删掉更多有争议的块,提高稀疏率,却更可能损害保真度;较低阈值则更保守。图 3 的频率直方图在接近 0 和 1 的位置聚集,是这种离线聚合可行的主要经验依据,不是对任意新输入的保证。

3. 空间重复检测:对难以稀疏化的头减少查询行

另一条校准分支比较同一视频帧内不同空间行的注意力分布。论文将某一空间行对应的全部注意力展平,与最近的锚点行做余弦相似度,再跨帧、空间行和校准提示词平均。只有该时间步、层、头的平均空间相似度超过阈值,才将它标为重复头。

默认每帧选取 5 条等间距锚点行,相似度阈值为 0.87。推理时只让这些锚点行对所有键和值计算注意力,再把各自输出广播到本帧中最近的空间行。这不是删除整帧,也不是省略所有跨帧交互,因为锚点查询仍能读取全部键和值。

若一帧有 \(H\) 行、每行 \(W\) 个 token,锚点数为 \(k\),查询数由 \(HW\) 降至 \(kW\),对应交互稀疏率为 \(1-k/H\)。这里的 \(k\) 是锚点数,不应与原文能量调度中同名的参数混用。图 6 显示高空间相似度通常对应较低块稀疏率,因此两种策略覆盖的是不同类型的注意力图。

4. 预编译双路执行:把统计模式变成实际跳过的 GPU 工作

离线阶段使用自定义 CUDA 内核累积块能量,避免显式存储完整注意力矩阵;空间相似度另用批量 PyTorch 实现计算。得到二值掩码后,将每个查询块需要计算的连续键块区间编码成只读 skip list,并在生成前预载到 GPU。

生成过程中,当前时间步、层、头直接索引对应记录。非重复头使用基于 FlashAttention3 的块稀疏内核;重复头则使用标准 FlashAttention3 处理缩减后的查询集合,并广播输出。两者是按标记选择的替代路径,不应理解成所有头都先做块剪枝、再叠加锚点近似。

这种实现省去了在线重要性筛选,但并不意味着所有额外开销都消失:掩码索引、存储以及广播仍属于系统执行的一部分。论文真正验证的是单张 H100 上的生成延迟,而不是把理论稀疏率直接等同于加速倍数。

一个完整示例

考虑某个非重复头的一张校准掩码。每个提示词先按该步的能量阈值选出所需键块,然后在 64 份二值结果上计数。依照默认 \(\rho=0.5\),被选中至少 32 次的块会保留;“32 次”是由默认参数推导的阈值示例,不是另一个实验结果。

换成新提示词后,模型读取这张掩码,仅在保留块上计算当前输入的注意力。若另一个头被空间重复检测标记,则不使用该块掩码路径,而只计算每帧 5 条锚点行并广播。前者减少键块访问,后者减少查询行数量,二者共同降低整次去噪的计算量。

损失函数 / 训练策略

本方法不增加训练损失,也不更新预训练权重。离线校准是运行模型、统计注意力并编译执行记录,不是梯度微调;因此“免训练”不能解释成零前处理成本。

Wan 2.1 14B 使用 50 步生成 81 帧视频;Mochi 1 使用 64 步生成 85 帧视频;LightX2V 是 Wan 2.1 14B 的 4 步蒸馏变体,使用相同的 81 帧与两种分辨率设置。校准字典对应具体模型和推理配置,不能根据这些实验断言同一套字典可直接跨配置使用。

实验关键数据

主实验

所有实验使用单张 NVIDIA H100。校准提示词来自 MovieGenBench,质量评估使用 VBench 官方提示词与指标;同一设置下各方法使用相同的预训练检查点和推理配置。VBench Total 衡量总体生成质量与语义表现,不是与同种子稠密输出逐像素一致的度量。

下表摘录原文表 1、表 2。稀疏率是所有时空查询与键交互中被跳过的比例,并跨时间步、层和头平均;延迟按论文定义,是生成单个视频时扩散过程的平均墙钟时间,不包括一次性的离线校准。

模型与设置 方法 VBench Total ↑ 稀疏率 ↑ 延迟 ↓ 相对 FA3 加速 ↑
Wan 2.1 14B,480p,50 步 Dense FA3 80.29 0% 363 s 1.00×
Wan 2.1 14B,480p,50 步 CalibAtt 80.40 68.1% 250 s 1.45×
Wan 2.1 14B,720p,50 步 Dense FA3 79.35 0% 1244 s 1.00×
Wan 2.1 14B,720p,50 步 SpargeAttention 78.85 49.9% 930 s 1.33×
Wan 2.1 14B,720p,50 步 RadialAttention 77.95 54.7% 936 s 1.32×
Wan 2.1 14B,720p,50 步 SVG2 79.30 46.3% 846 s 1.47×
Wan 2.1 14B,720p,50 步 CalibAtt 79.69 62.5% 785 s 1.58×
Mochi 1,480p,64 步 Dense FA3 74.54 0% 188 s 1.00×
Mochi 1,480p,64 步 CalibAtt 74.57 69.1% 161 s 1.16×
LightX2V,480p,4 步 Dense FA3 81.04 0% 14.5 s 1.00×
LightX2V,480p,4 步 CalibAtt 81.26 70.9% 11.2 s 1.29×
LightX2V,720p,4 步 Dense FA3 77.63 0% 48.3 s 1.00×
LightX2V,720p,4 步 CalibAtt 77.84 73.9% 30.6 s 1.57×

消融实验

正文第 4.2 节考察校准样本数与聚合阈值。曲线显示增加提示词后稀疏率与质量的关系很快趋于稳定;过高的聚合阈值会略损质量。下表仅记录正文明确给出的 Wan 2.1 14B、720p 校准预算对比,不从图 7 估读精确质量分数。

校准配置 提示词数 校准成本 质量与稀疏率说明
默认预算 64 89.6 H100 GPU-hours 主实验采用的默认校准集大小
受限预算 16 13.7 H100 GPU-hours 正文称影响很小;具体补充配置见原文 B.2

这些数字不能解释为“只减少提示词数就必然按某个比例缩短校准”:正文将受限预算的进一步细节指向 B.2,而本地缓存不含该补充材料。同样,正文引用 B.4 的双组件消融,但缓存未提供具体结果,因此无法定量分摊两种执行路径各自的收益。

关键发现

  • 在五种评估设置中,CalibAtt 的生成延迟都低于稠密 FA3,VBench Total 接近或略高于对应基线;这些小幅分数差异不应解读为统计显著的质量提升。
  • Mochi 1 的 69.1% 稀疏率只对应 1.16 倍加速,说明模型中其他计算及实际内核行为决定整体收益,不能只比较稀疏率。
  • 少步模型仍可获益:LightX2V 720p 从 48.3 秒降至 30.6 秒。这支持消除在线筛选成本的实用价值,但不证明离线校准在少量请求下就能回本。

亮点与洞察

  • 方法的关键在于区分“跨输入稳定”与“全模型统一”。前者允许离线决策,后者却会抹掉不同层、头和时间步的异质性。
  • 空间重复检测补上了块稀疏方法不擅长的情况。注意力图即使比较稠密,只要查询行的分布相近,仍有减少查询计算的空间。
  • 校准直接面向 FlashAttention 块和连续区间编码,而非只报告元素级稀疏性。这使统计上的冗余能对应实际被跳过的 GPU 工作。

局限与展望

  • 作者明确指出,固定的离线掩码会错过提示词特有的额外稀疏性。跨校准输入稳定是经验观察,不是任意提示词或分布变化下的质量保证。
  • 初始计算投入不可忽略:默认 Wan 720p 校准需要 89.6 H100 GPU-hours。其适用性取决于后续请求量能否摊薄成本,不能只看单次生成延迟。
  • 作者报告 Wan 720p 掩码额外占用 21.5 GB 显存,并称可降至 3.6 GB、影响很小;具体压缩实现位于缓存缺失的 A.2,本文不补写未经核对的实现细节。
  • 本文实验限于单张 H100 和指定模型、分辨率、帧数。其他硬件、长视频或新推理配置的实际收益仍需独立验证;VBench 接近也不代表逐种子重建一致。
  • 作者提出继续利用跨时间步相关性、压缩 skip list,以及使用更细粒度阈值参数化。它们是未来方向,不是已在主实验中验证的额外贡献。

相关工作与启发

  • 与 FlashAttention3 对比:FA3 优化稠密注意力的执行效率;CalibAtt 在其基础上减少实际计算的块或查询行。二者是互补关系,并非替代全部底层计算机制。
  • 与 RadialAttention 对比:后者依赖随时间距离收缩的空间窗口;CalibAtt 从模型校准出各层、头和时间步的模式,减少对统一几何先验的依赖。
  • 与 SpargeAttention、SVG2 对比:前者在线估计块重要性,后者使用 token 聚类及簇间交互来选计算;CalibAtt 将选择前移到离线,代价是缺少逐输入自适应能力。
  • 与 LiteAttention 对比:它复用跨时间步的在线 skip list;CalibAtt 则离线建立按时间步索引的字典。时间上的可复用性与跨输入可复用性是两种不同的冗余来源。

评分

以下为笔记作者的主观评价,不是论文报告的实验指标。

  • 新颖性: 4/5。离线分层分头校准与空间重复分支的组合明确,建立在已有稀疏注意力观察之上。
  • 实验充分度: 4/5。覆盖两种架构、不同分辨率和少步蒸馏模型,但本地材料缺少补充组件消融及跨硬件验证。
  • 写作质量: 4/5。观察、设计与执行路径衔接清晰;本地文本抽取损坏部分公式,阅读时须区分抽取问题与论文内容。
  • 价值: 4/5。适合可摊销校准成本且显存充足的视频生成部署,不是无前处理成本的通用加速开关。