不加参数只让网络原地多想几遍,扩散模型把推理深度拉出训练之外

首页 / AI资讯 / AI绘画

0:00
0:00
1x
定时

十一月三日,阿姆斯特丹大学与荷兰应用科学研究组织TNO的一篇论文在技术社区被反复讨论。论文提出的方法叫LiFT,中文常译作循环流变换器,核心主张只有一句:不增加参数,让同一组神经网络层在生成每一步里反复用上几遍。它想解决的问题也不新鲜,生成模型究竟该靠脑子里装更多知识,还是靠多想几遍。过去几年行业的答案一边倒地偏向第一种,这篇论文给出了第二种做法的一份可复现样本。

扩散变换器的天花板,不在步数上

现在主流的图像与视频生成骨架是扩散变换器,做法是从一堆随机噪声出发,沿着学到的速度场一步步走到真实图像的分布上。训练方式叫流匹配,让模型学会预测从噪声到数据这条直线路径上每一点的速度方向。要生成一张好图,一般要走十步到二百五十步。

步数越多误差越小,这句话只对了一半。每一步能走多准,取决于网络在那一步预测的速度准不准。如果网络本身的预测能力有上限,那么无论你走多少步,质量都会在某个点附近饱和,再加步数只是把同样的误差重复一遍。这是第一条路的尽头。

第二条路是堆参数。模型越大效果越好,这几乎成了行业默认公理,但代价是显存与部署成本同步上涨。在数据中心里这不是大问题,在端侧就是硬约束,内存往往比算力更紧张。一台手机能装下的模型,参数是有硬顶的。更麻烦的是视频模型把这笔账放大了:同样一套架构从图像迁到视频,序列长度涨一个量级,注意力成本随之上涨,参数每加一点,显存就多占一截,堆参数这条路的边际收益正在变薄。

循环模型为什么学不会多想

循环这个想法本身不新,循环神经网络早就有了,问题出在训练与推理的错配。常规做法是训练时把循环次数定死,比如固定跑四遍,模型在这个次数上学到的是“跑四遍刚刚好”的平衡。推理时如果跑八遍,输入分布就变了,误差开始累积,效果反而往下掉。

这就是过去循环结构难以规模化的根因:它不是不能多想,而是没学会多想。训练目标里没有“第五遍、第六遍应该输出什么”的监督信号,模型自然不知道多出来的那几遍该干什么。把它当成一个可以简单外推的性质,是一种误解。

工程上的后果很具体。推理服务通常按固定步数与固定深度排布显存与批处理,深度一旦可变,调度就要重新设计;团队也没法用“多跑几遍”这种临时手段来救画质,因为跑得越多可能越差。一个看起来只是算法层的设计,最后会传导到服务层的成本模型上。

理解这一点之后,改进方向也就清楚了。要让模型在更深的推理里保持稳定,必须在训练阶段就让它见过不同深度下的同一个目标,而不是只在一个深度上反复优化。

渐进式路径监督:把多想变成可训练的目标

LiFT的做法是渐进式路径监督。同一组共享的网络层被反复调用,每一次循环都要对齐同一个去噪目标,也就是“这一步应该把噪声推向哪里”。训练的难度沿着循环深度逐步抬高,浅层先学会走对方向,深层再学会在这个方向上修正细节。

这样做的直接结果是推理深度获得了外推能力。模型在训练时可能只见过四到六次循环,推理时跑到更多次,效果不会崩,还能继续改善。这一点是它和普通循环结构的分水岭:后者一旦超出训练设定就失效,前者把深度变成了一个可以调节的参数。

共享权重带来的另一个好处是显存占用不随深度线性增长。参数只有一份,多算几遍只是多花计算时间,不多占存储。对端侧设备来说,这个区别非常实际:手机可以承受多算几百毫秒,承受不了多装一个GB的权重。

它和另外一种常见思路也要分开。业界有把计算按样本难度动态分配的尝试,简单的样本走浅层,复杂的样本走深层,本质是路由;LiFT不做路由,它对所有样本走同样深的循环,把深度当成一个全局旋钮。前者优化的是平均成本,后者优化的是单个样本的质量上限,两者解决的不是同一个问题。

ImageNet上的账:少参数、少算力

论文给出的对照是在ImageNet上,用更少的参数和更少的算力超过了同等规模的密集扩散变换器。这个结论需要放在具体语境里读:ImageNet是类别条件的图像生成基准,类别数一千,分辨率与真实创作场景相比偏低,它衡量的主要是分布拟合与样本质量,不衡量文字渲染、版面控制、多主体一致性这些真正决定商用价值的指标。

所以这份结果的意义在于指出一条不同的扩展曲线,而不是宣布密集模型过时。它证明了“深度”可以作为独立于“宽度”的扩展维度存在,而当参数预算被显存卡死时,这个维度几乎是唯一还能动的。

把它放回行业脉络里看会更清楚。过去两年围绕扩散模型的主流优化有两条,一条是减步数,把五十步蒸到六步甚至两步,另一条是换监督信号,用更强的特征约束去替代外接编码器。LiFT走的是第三条:步数不减,参数不加,而是在每一步内部增加计算。三条路并不互斥,理论上可以叠加。

还有几个问题没答案

第一是收益会不会饱和。循环带来的改善同样有上限,当每一次循环的增量小到被数值误差淹没时,多算几遍就没有意义了。论文给出了外推有效的证据,但没有给出这个上限在哪。

第二是训练成本前移。推理省下来的显存与参数,代价是训练时要跑更多次前向与反向。对算力充裕的团队这不是问题,对预算有限的团队,这笔账要重新算。

第三是真实工作流的延迟。用户在网页上点一次生成,等待时间是端到端的,多算几遍意味着单张图更慢。在批量出图的场景里这可以接受,在实时编辑的场景里就不一定。

第四是评测范围。目前公开的结果集中在ImageNet,缺少在文字渲染、版面控制、多轮编辑这些商用场景上的对照。这些场景恰恰是过去一年生图模型竞争的主战场,也是密集模型投入最多的地方。

对国内做端侧生图与本地部署的团队来说,这条路值得跟进的理由很直接:显存是硬门槛,参数压不下去的时候,把计算换成深度是一条可走的路。但要落地还得解决两件事,一是量化与循环叠加后的数值稳定性,二是把多算几遍的耗时控制在用户能接受的范围内。

素材来源:科技行者、arXiv、阿姆斯特丹大学 发布时间:2026-11-04