把扩散模型压到FP4还不掉色,这套省算力思路值得抄

想把生图的推理成本压下来,最近在研究把 diffusion transformer 直接跑在 4bit(FP4)上。拆开看是几刀,分别砍在成本的不同轴上:

  1. 量化到 FP4,但别只做事后量化。 单纯量化速度是快,色彩会明显掉——红色发灰,饱和度整体往下走。原因在于去噪是一步步迭代的:某一步 velocity 偏一点,下一步 latent 就跟着偏,误差滚雪球,等出到像素层色彩信息已经没了,后处理补不回来。
  2. 训练时就让权重去适应量化噪声。 rounding 那一步没法求导,梯度用直通估计绕过去,权重会自己挪到“被压成 4bit 也不难受”的区域。等于在源头摁住误差,不靠事后修色。
  3. 把 CFG 的两条分支蒸成一条。 原来每一步要跑有条件和无条件两遍,合成一条之后每步少跑一遍。
  4. 去噪步数也蒸到个位数。 前向次数跟着降。

最后的结果:1K 分辨率下从 2.75 秒压到 0.44 秒,画面跟全精度基本看不出差别,挺狠的。

几项能叠着用,是因为互不打架:砍位宽、砍分支、砍步数。真要抄我会先做第 2 条,掉色不解决,再快也没法用。

这套要自己从头训,还是有放出来的现成权重

量化感知训练本身也吃卡,小团队跑一遍不轻松