BAC

Paper:Block-wise Adaptive Caching for Accelerating Diffusion Policy

一篇扩散加速的文章。在机器人视觉运动建模领域,往往采用扩散策略,需要多次迭代去噪,计算开小巨大,且无法满足实时性。现有方法主要用于图像或者视频领域,与机器人领域的数据分布不太同。

论文的核心思路是在 Block 级别,动态决定哪些中间特征可以复用旧的缓存,哪些必须更新。

创新点1:自适应缓存调度器 ACS。

  • 有些计算步骤和上一步的结果差不多,就可以复用缓存。有些步骤变化很大,就必须重新算。

作者发现在扩散过程中的特征相似性并不是线性变化的,且不同的 Block 在不同的时间点表现完全不同:

  • 有些 Block 特征几乎不变,有一些变化剧烈。
  • 有的 Block 在早期关键,有的在后期关键。
image.png

为了找到收益最高的时间点,论文将其建模为一个动态规划问题:

其中:

  • 意思是整个去噪过程想更新几次缓存。
  • 代表当前时间步。
  • 代表果在第 步完成了第 次更新,我们能获得的最大相似度总分。
  • :上一次更新的时间步,由于我们要决定第 次在 更新,那么就需要寻找第 次在哪个位置 更新最划算

需要在正式部署前,随机抽几个该任务的数据运行一次动态规划(DP),为每个 Block 算出最优的更新时间表。

创新点2:冒泡并集算法(BUA)

  • 作者发现,如果单纯在每个块上独立运行 ACS,会导致误差很大。比如在 FFN 块中,如果上游块没更新而下游 FFN 更新了,误差会因为缺乏归一化而迅速放大。
  • 因此作者提出 BUA,如果一个下游块决定更新,那么它的“上游受影响块”也必须跟着更新,从而截断误差传播 。

总体流程:先取出每个 block 在每个 timestep 的中间特征;然后对每个 block 分别计算 timestep 间的特征相似度;再基于这个 block 自己的相似度序列构建 DP 表,求出该 block 的最优缓存更新时间表。


BAC
https://d4wnnn.github.io/2026/04/27/Notion/BAC/
作者
D4wn
发布于
2026年4月27日
许可协议