AdaCache 是什么?按内容复杂度自适应加速视频生成
AdaCache 是一种加速 AI 视频生成的技术,由 Meta 在 2024 年提出,论文标题是《基于扩散 Transformer 的自适应缓存视频生成加速》。它的核心是一种自适应的缓存机制,可以直接用在现有的视频生成模型上,不需要重新训练。
视频生成为什么慢
基于扩散 Transformer 的视频生成模型,需要从随机噪声开始,经过几十步的去噪,才能得到最终的视频。每一步都要让整个大模型对视频的所有帧计算一遍,计算量非常大,生成一段几秒钟的视频,往往要花几分钟甚至更久。
缓存的思路
研究者观察到,在去噪的过程中,相邻几步之间,模型内部某些层的计算结果变化很小。既然变化不大,就可以把某一步的计算结果缓存起来,在接下来的几步中直接复用,跳过重复的计算,从而节省时间。此前已有一些缓存方法,但它们通常采用固定的规则,比如每隔几步就复用一次。
AdaCache 的“自适应”
AdaCache 的关键洞察是:不同的视频需要的计算量是不一样的。一段画面简单、几乎静止的视频,比如一片平静的湖面,相邻步骤之间的变化很小,可以大胆地多复用缓存;而一段内容复杂、运动剧烈的视频,比如激烈的打斗场面,变化很大,需要更频繁地重新计算,才能保证质量。用固定的规则,要么对简单的视频算得太多、浪费时间,要么对复杂的视频复用太多、损失质量。
AdaCache 根据每段视频的具体内容,动态地决定何时重新计算、何时复用缓存:它衡量相邻步骤之间计算结果的变化程度,变化小就延长复用的时间,变化大就缩短。此外,它还引入了运动正则化:利用视频内的运动信息来进一步优化缓存决策,运动越多的视频,分配越多的计算资源。
效果
论文的实验表明,AdaCache 能显著加快视频生成的速度,在一些模型上最多提速约 4.7 倍,同时几乎不损失生成质量,效果优于固定规则的缓存方法。它是一种“训练无关”的即插即用加速方法,降低了视频生成的成本和等待时间。