资讯详情

资讯详情

(论文速读)AdaCluster:让视频 DiT 的稀疏注意力学会“区别对待”Q 和 K

论文题目AdaCluster: Adaptive Query-Key Clustering for Sparse Attention in Video Generation中文翻译AdaCluster面向视频生成稀疏注意力的自适应 Query-Key 聚类会议CVPR 2026源码https://github.com/USTC-MLSys-Team/Adacluster摘要视频扩散 TransformerDiT由于注意力计算具有二次复杂度推理延迟十分高。现有稀疏注意力方法要么忽略 token 之间的语义相似性要么无法适应不同网络层中异构的 token 分布从而导致模型性能下降。本文提出 AdaCluster一种无需训练的自适应聚类框架在保持精度的同时加速 DiT 的视频生成。AdaCluster 针对 Query 向量采用保持角度相似性的聚类方法以获得更高的压缩率针对 Key 向量则设计保持欧氏相似性的聚类方法其中包括聚类数分配、基于阈值的自适应聚类以及高效的关键簇选择。作者在单张 A40 GPU 上对 CogVideoX-2B、HunyuanVideo 和 Wan-2.1 进行实验取得了最高 1.67×–4.31× 的加速同时生成质量几乎不受影响。一、研究背景与核心问题1.1 视频 DiT 真正慢在哪里视频 DiT 的问题并不是 Transformer “不能生成长视频”而是序列一旦变长Full Attention 的代价迅速失控。视频 token 数同时受到帧数、空间分辨率影响而标准注意力需要计算 QKᵀ其复杂度随序列长度近似二次增长。论文给出的例子很直观CogVideoX-2B 在单张 A40 上生成 81 帧、720p 视频时输入长度约 70K tokens完整生成耗时 1691 秒其中 attention 占到了总时间的 75%。在 HunyuanVideo 上1280×720 的 81 帧视频已经需要 27 分钟以上更高分辨率的 1920×1120 则可达到约 130 分钟。Figure 1 Full Attention 与 AdaCluster 的延迟和生成结果对比Figure 1 给出了这篇论文最直接的目标在 HunyuanVideo 上Full Attention 的延迟为 1639 s而 AdaCluster 降到了 973 s同时保持 PSNR 30.58 dB。也就是说作者不是重新训练一个更小的视频生成模型而是希望直接从 attention 计算本身下手。稀疏注意力的基本出发点是真正决定每个 Query 输出的通常只有少量重要 Key因此没有必要让每个 Query 都和所有 Key 做完整计算。但困难在于——怎样低成本地找到真正重要的 Key1.2 现有动态稀疏注意力的问题Q 和 K 被“一视同仁”一种常见思路是先把 token 聚类再用每个簇的代表去估计重要性。SpargeAttn 直接把连续 token 按 block 聚合但空间上连续并不意味着 embedding 空间里相似SVG2 进一步采用聚类却给不同模型、不同层使用固定的 Query/Key 聚类数量。问题在于不同层的 token 分布实际上差异很大。Figure 2HunyuanVideo 与 Wan-2.1 不同层的 Key token 分布Figure 2 很关键。某些层的 token 高度集中少量 cluster 就能很好表示另一些层非常分散需要更多 cluster甚至根本不适合压缩。如果对所有层统一设置相同聚类数要么浪费计算要么损失重要 token。作者进一步指出现有方法还有第二个问题聚类完成后通常只根据 cluster center 判断一个簇是否重要但重要 token 可能位于簇边界并不一定接近中心。因此 AdaCluster 的核心思路可以压缩成一句话不要再用同一套规则处理 Query 和 Key而是根据它们在 Attention 中承担的不同作用分别设计聚类与筛选策略。二、AdaCluster 整体框架先聚类再自适应筛选AdaCluster 是 training-free 的不需要重新训练 DiT。整体流程仍然围绕 Top-K sparse attention 展开但作者把“cluster-then-select”流程做了 role-aware 重构Q → 归一化 → Query 聚类 → K → 逐层自适应多阶段聚类 → TensorQuest 选择关键 Key 簇 → 仅对候选 K/V 做 Attention如果某一层的 Key 分布实在太分散聚类数量超过预设上限AdaCluster 不会强行稀疏化而是直接回退到 Full Attention。这一点很重要它不是要求所有层都必须压缩而是把“该不该稀疏”也纳入运行时决策。整个方法包含三个最核心的设计第一Query 只需要保持与 Key 打分的相对顺序因此可以先归一化再按角度相似性聚类第二Key 的向量长度和方向都会影响打分因此需要保持欧氏距离并且不同层采用不同数量的 cluster第三在完成聚类后通过 TensorQuest 更高效地判断哪些 Key cluster 真正值得进入后续 Attention。三、Query Clustering为什么先归一化反而更容易聚类Query 端的洞察非常简洁。假设某个 Query 为 q两个 Key 分别为 kₐ 和 kᵦ。将 q 归一化为 q̂ q / ‖q‖₂ 后由于 ‖q‖₂ 始终为正数因此有也就是说归一化 Query 会改变 Attention score 的绝对大小但不会改变不同 Key 之间的相对排序。对 Top-K 筛选而言真正关心的恰恰是排序因此 Query 的长度不是必须保留的信息。Figure 3Query 归一化前后的向量分布Figure 3 展示了归一化前后 Query 的分布变化。原始 Query 在高维空间中的长度差异较大直接做欧氏聚类不容易压缩归一化后所有 Query 被投到单位球面上分布明显更紧凑此时聚类实际上主要在比较方向也就是角度相似性。这个设计的价值不仅是理论上成立附录中的实验也给出了更强的证据。Figure 10归一化前后 Query 的簇内距离与 Davies-Bouldin Index在相同 cluster 数量下归一化后的 Query 具有更低的平均簇内距离和更低的 Davies–Bouldin Index。论文固定归一化后的 Query 使用 65 个 clusters而未归一化方案平均需要超过 235 个 clusters才能达到相近的簇内距离相当于带来约 3.6× 的有效压缩优势。Table 5Query Normalization 对重建质量的影响Table 5 进一步说明这种压缩并没有白白牺牲质量。在 HunyuanVideo 上加入 Query Normalization 后PSNR 从 29.56 提升到 30.58SSIM 从 0.763 提升到 0.835同时 LPIPS 从 0.317 降到 0.203。这里的关键不是“归一化是一个小技巧”而是作者利用了 Attention 排序对 Query 尺度不敏感这一性质把一个难聚类的问题主动变成了更容易压缩的角度聚类问题。四、Key Clustering 与 TensorQuest真正的自适应发生在 K 端4.1 Key 为什么不能照搬 Query 的办法Key 与 Query 不同。对于 Key 来说向量方向和长度都会影响 qᵀk因此不能直接归一化。假设 k 所属 cluster 的中心为 c(k)则有这个不等式说明只要同一簇内部的 Key 足够紧凑即 ‖k − c(k)‖₂ 足够小用 cluster center 近似簇内 Key 的打分才可靠。因此Key 聚类真正要控制的是欧氏空间中的簇内误差。Figure 4Wan-2.1 与 HunyuanVideo 不同层的 compactness scoreFigure 4 表明不同层的 compactness 差异很大所以固定 cluster 数并不合理。AdaCluster 对分布集中的层分配较少 clusters对分布分散的层分配更多 clusters。4.2 Multi-stage K-means让 cluster 数自己长出来Figure 5Multi-stage K-means 的逐阶段聚类过程作者没有提前为每一层手工指定 K而是从一个中等规模的 cluster 数开始。第一轮 K-means 后距离 cluster center 小于阈值 τ 的 token 被认为已经得到足够紧凑的表示剩余离群 token 继续进入下一轮 K-means并新增 cluster。这个过程不断重复直到所有 token 被分配到足够紧凑的簇。如果 cluster 总数达到 Nmax 仍然无法满足要求说明该层“难以压缩”此时直接使用 Full Attention。换句话说AdaCluster 的自适应不仅体现在“每层 K 不同”还体现在“某些层可以选择完全不稀疏”。Figure 6不同 denoising timestep 的 token 分布一致性视频扩散还要重复几十个 denoising steps如果每一步都重新完整聚类聚类本身会成为新的开销。Figure 6 给出的观察是相邻 denoising step 中同一层的 token 分布变化比较平缓。因此作者只在第一个 step 通过 Multi-stage K-means 决定每层的 cluster 数后续 step 固定 cluster 数并使用上一 step 的 cluster center 作为当前 step 的初始化从而降低聚类成本。4.3 TensorQuest把“找关键簇”搬到 Tensor Core仅仅聚类还不够。下一步仍然要判断对于当前 Query哪些 Key clusters 最重要作者借鉴 Quest 的上界估计思想但指出原始 Quest 主要依赖 CUDA Core在视频扩散这种计算规模下仍然太慢。AdaCluster 将 Query 和 Key 的正负部分拆开使核心运算能够改写为矩阵乘法形式。算法中先得到 Q⁺ max(Q, 0)、Q⁻ min(Q, 0)以及对应的 K⁺、K⁻再通过矩阵乘法计算 cluster score。这样做的核心意义不是改变筛选目标而是把原本不适合高吞吐矩阵计算的选择过程重写成 Tensor Core 更擅长的计算形式。Figure 8TensorQuest 与原 Quest 重写方案的 Top-K 选择耗时当输入序列达到论文测试中的最长规模时TensorQuest 的 Top-K selection 最多可获得约 5× 加速。这一设计体现出 AdaCluster 很强的系统味道算法层面减少要算的 tokenkernel 层面还要确保“决定哪些 token 不算”的过程本身足够便宜。五、实验结果与消融分析5.1 实验设置作者在 CogVideoX-2B、Wan-2.1-T2V-1.3B 和 HunyuanVideo 三个视频 DiT 上测试 AdaClusterprompt 来自 PenguinVideoBenchmark。相似性指标使用 PSNR、SSIM 和 LPIPS整体视频质量则使用 VBench 中的 Image Quality、Background Consistency、Subject Consistency 等指标。主实验运行在单张 NVIDIA A40 48GB GPU 上并与 FlashAttention 原始模型、SpargeAttn 和 SVG2 比较。实现上作者将约 15% 最难压缩的层保留为 Full Attentionτ 设置为首个 inference step 中 token 到 cluster center 平均距离的 1.5×Query cluster 数固定为 65Key cluster 数由算法动态决定。后续 denoising step 会复用上一 step 的 cluster center。5.2 主实验速度更快但结论不能简单写成“质量全面更高”论文 Table 1三种视频 DiT 上的相似性、视频质量与端到端速度对比Table 1 是主实验最重要的证据。在 HunyuanVideo 1280×720 上AdaCluster 达到 1.68× 端到端加速同时 PSNR 30.580、SSIM 0.835、LPIPS 0.203对应 SVG2 的速度为 1.57×SpargeAttn 为 1.33×。在 Wan-2.1 上AdaCluster 达到 1.85×也高于 SpargeAttn 的 1.81× 和 SVG2 的 1.61×在 CogVideoX-2B 上则达到 1.67×而 SpargeAttn 为 1.23×。需要注意VBench 各项指标并不是 AdaCluster 全部第一。论文自己也指出CogVideoX 上 AdaCluster 和 SpargeAttn 都出现了比较明显的 image quality 波动。因此更准确的结论是AdaCluster 在三个模型上都取得了更好的“与 Full Attention 输出相似度—速度”权衡而不是所有感知质量指标都全面超过原模型。5.3 序列越长AdaCluster 的优势越明显Figure 7不同 token 长度下各方法端到端耗时趋势Table 2HunyuanVideo 不同分辨率对应的 token 数量随着视频分辨率升高序列从数万 tokens 增长到 176.4K tokensAdaCluster 的优势越来越明显。在最长 176.4K token 配置下AdaCluster 的峰值加速达到 4.31×而 SpargeAttn 为 1.78×。论文还指出 SVG2 在 token 数超过 101.1K 后受到 metadata 缓存开销限制无法继续适用。这说明 AdaCluster 最适合解决的并不是短序列上的“几个百分点优化”而是高分辨率、长视频下 Full Attention 被二次复杂度拖垮的问题。5.4 消融一逐层自适应 cluster 数真的有必要吗论文 Table 3AdaClus 与统一平均 cluster 数 AvgClus 对比作者构造了 AvgClus所有层统一采用相同 cluster 数同时让平均 cluster 数与 AdaCluster 基本一致以排除“只是用了更多 clusters”的影响。结果中 AdaClus 的 PSNR 为 30.580而 AvgClus 为 29.007SSIM 从 0.724 提升到 0.835LPIPS 从 0.378 降到 0.203。因此关键不是 cluster 越多越好而是把 cluster 预算分配到真正难压缩的层上。5.5 消融二TensorQuest 不只是快也减少关键 token 漏选Table 4TensorQuest 与不使用 Quest 的关键簇选择对比TensorQuest 相比简单的 mean-based cluster selectionPSNR 从 28.941 提升到 30.580SSIM 从 0.687 提升到 0.835LPIPS 从 0.410 降到 0.203。结合 Figure 8 的速度结果可以看到TensorQuest 同时解决两个问题一方面比简单中心代表更不容易漏掉关键 token另一方面通过矩阵化重写降低筛选本身的计算成本。Table 6AdaCluster 三个核心组件的完整消融Table 6 把三个模块串起来看得更清楚从 AvgCluster w/o Quest w/o Norm 出发依次加入 TensorQuest、自适应 Key clustering 和 Query normalization 后PSNR 从 28.94 最终提升到 30.58SSIM 从 0.687 提升到 0.835LPIPS 从 0.410 降到 0.203。三个模块并不是重复做同一件事TensorQuest 负责“选得准”Adaptive Key Clustering 负责“每层压缩得合适”Query Normalization 则负责“让 Q 更容易被压缩”。5.6 超参数、H100 与定性结果Table 7关键超参数的速度—质量敏感性分析主实验采用约 76.4% sparsity、KV threshold 5.5、65 个 Query clusters、Initial K 100、TopK 64。Table 7 表明更激进的稀疏率可以继续换取速度但会损害重建质量。因此 AdaCluster 的收益并不是“免费加速”而是在自适应策略下寻找更好的速度—质量平衡点。Table 8H100 GPU 上的扩展实验在 H100 上AdaCluster 依然保持优势Wan2.1-14B 上达到 1.81×高于 SVG2 的 1.61×Attention 计算量从 427.43 PFLOPs 降到 404.94 PFLOPsHunyuanVideo 上为 1.67×高于 SVG2 的 1.58×。这说明方法并不只对 A40 的特定执行环境有效但实际加速幅度会受到模型、序列长度和硬件平台共同影响。Figure 12–17不同方法、不同模型的视频生成定性对比附录中的可视化也值得看。Figure 12–14 比较 Full Attention、AdaCluster、SVG2 与 SpargeAttn在海豚、飞鸟以及跨场景狼视频上AdaCluster 与 Full Attention 的主体和场景变化整体更接近Figure 15–17 又分别在 CogVideoX、HunyuanVideo 和 Wan-2.1 上进行对比说明该方法可以迁移到不同视频 DiT而不依赖单一模型结构。六、总结与思考如果把 AdaCluster 压缩成一句话它做的不是简单“把 Attention 稀疏掉”而是先问清楚Q 和 K 到底需要保留什么信息再决定应该怎样聚类。Query 端作者利用 Top-K 排序对 Query 长度缩放不敏感这一性质通过归一化把问题转化为更容易压缩的角度聚类Key 端则保留长度与方向信息用逐层 Multi-stage K-means 动态决定 cluster 数完成聚类之后再通过 TensorQuest 高效找到真正值得计算的 Key clusters。整个方法最后还加入难压缩层的 Full Attention fallback以及跨 denoising step 的 cluster center 复用使算法设计能够真正落到 GPU 推理效率上。这篇论文最值得记住的其实有三点。第一不要默认 Q、K、V 在稀疏化时应该被对称处理它们在 Attention 中的作用不同保真条件也不同。第二稀疏模式应该随着层和输入分布变化固定 block、固定 K 都可能浪费模型内部已经存在的异构性。第三推理加速不能只看 FLOPs筛选、聚类和索引本身也有成本因此 TensorQuest 这种“让稀疏决策适配 Tensor Core”的系统级设计非常重要。从方法设定上看AdaCluster 的收益在长序列场景最明显序列较短时优势会缩小从实验结果看CogVideoX 上部分 VBench 指标也存在质量下降说明不同基础模型对稀疏化的耐受程度并不完全相同。此外Table 7 已经明确展示了 sparsity 与重建质量之间的权衡因此实际部署时仍需要根据目标分辨率、显存和质量要求选择配置。总体来看AdaCluster 给出的不是一种固定稀疏模板而是一条很值得继续发展的思路让稀疏 Attention 从“预先规定哪里不算”进一步走向“根据 Q/K 的角色和当前层的数据分布动态决定应该算什么”。对高分辨率视频 DiT 而言这种 role-aware、layer-adaptive、hardware-aware 的联合设计可能比单纯追求更高 sparsity 更有价值。
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →