【摘要】BiFlow将精确逆向改为独立可学习逆向,并用隐藏对齐稳定训练,实现高质量并行生成与697倍加速。

引言
生成模型的发展路线里,归一化流一直有一个独特位置。它把数据分布到噪声分布的映射写成显式函数,训练与推理都有清晰的概率语义,工程上也更容易做可控操作。问题在于,这条路线长期背着一个硬约束,模型要能精确可逆,前向怎么走,反向就得严格倒放回去。
MIT 与清华团队在 arXiv 2512.10953v1 提出的 BiFlow,核心动作很克制,却把这条路线的关键瓶颈拆开了。它不再把逆向过程当成前向的数学逆,而是单独训练一个逆向生成器。前向仍然负责把图像规范化为噪声,逆向负责把噪声快速还原为图像,两者通过隐藏对齐保持一致性。这个改变让逆向推理可以选择并行友好的结构,从串行链路切换到并行生成,速度最高提升到 697 倍,同时质量不掉。
下文把这件事拆成三个层次来讲。先说明归一化流为什么越强越慢,再讲 BiFlow 的分工设计与隐藏对齐,最后从算力利用率、质量机理、落地边界三方面给一个更接近工程现实的判断。
✦ 一、归一化流为何越强越慢
%20拷贝-dtnz.jpg)
1.1 可逆约束带来的三重成本
归一化流的基本形式是一个可逆映射,把数据 x 变为潜变量 z。训练时除了拟合分布,还要处理雅可比行列式相关的项,推理时则要把 z 通过逆映射变回 x。这个框架本身不慢,真正拖慢它的是对精确可逆的坚持,因为这会把模型设计与推理路径一起锁死。
1.1.1 架构受限
精确可逆意味着很多常用模块要么不能用,要么只能用“可逆改造版”。卷积、注意力、归一化、残差连接都能做可逆化,但可逆化之后常见的问题是结构被切碎,信息流要满足严格的双射条件。模型看起来在用新架构,实际只用到了其中一部分能力,参数利用率与表达自由度都受影响。
工程上更直接的后果是,想用更强的并行结构时会碰壁。大量高效的现代组件并不天然可逆,强行改造要付出额外代价,模型会更难调,推理路径也更难并行。
1.1.2 计算图串行
可逆并不必然导致串行,但在很多流式设计里,条件依赖会引入顺序约束。典型例子是分块建模或自回归依赖,某一块的变换依赖前面块的状态,生成时只能按顺序推进。此时即便单步计算很快,整体也会被串行链路吞掉吞吐。
当模型规模变大,GPU 的并行计算能力反而利用不上。算子本身可能已经是高吞吐实现,但你只能一段一段跑,硬件闲置时间变长,端到端延迟很难下降。
1.1.3 工程细节负担
精确可逆往往带来一串工程副作用。为了保证数值稳定,需要更谨慎的初始化、归一化策略与精度控制。为了满足可逆结构的形状约束,数据布局和张量切分也更复杂。部分方案还会在生成后额外做去噪或校正,这些步骤单看不重,叠加到长链路上就会变成明显开销。
这些成本不会写在方法名字里,但会写进真实系统的显存、吞吐与延迟里。
1.2 Transformer 进入 Flow 后的矛盾
把 Transformer 引入流模型的动机很清楚,注意力对长程依赖与语义结构更友好,图像生成质量往往能上一个台阶。矛盾也很清楚,很多 Transformer 的高效实现依赖并行,而可逆与自回归组合后经常把并行打碎。
1.2.1 自回归与可逆性的耦合
部分代表性方案用块级自回归来适配可逆约束。块与块之间形成严格顺序,推理时每生成一块就要更新条件上下文。模型质量可以做上去,但推理很难摆脱顺序执行,延迟会随着分块数量线性增长。
从系统视角看,这相当于把一次大矩阵乘拆成很多小矩阵乘。每次计算都不算慢,但 GPU 需要频繁调度小 kernel,吞吐下降很明显。
1.2.2 GPU 利用率问题
GPU 喜欢大批量并行。自回归链路会让批内并行减少,批间并行又受延迟约束。你可以通过并行生成多张图来抬高吞吐,但交互式场景更在意单张延迟,吞吐上去并不等于体验变好。
这也是很多团队在落地时的痛点。模型指标看着很强,服务端单卡吞吐也不差,但端到端延迟仍然不理想。
1.3 速度指标的真实含义
论文里提到的 697 倍加速容易被理解为“算子快了 697 倍”。工程上更合理的理解是,BiFlow 把推理路径从长串行链路切换到并行链路,链路结构变了,延迟模型就变了。串行链路下,哪怕每步很快,总步数也会把你拖住。并行链路下,算子更大更饱满,硬件利用率更高,端到端延迟更容易下降。
把这层含义说清楚,后面的设计选择就不再像“技巧”,更像“拆掉不必要的约束”。
✦ 二、BiFlow 的核心设计
2.1 双模型分工
BiFlow 的关键是把“可逆流”从一个双向共享参数的函数,改成两个角色明确的模型。一个负责把真实数据送进标准噪声分布,另一个负责从噪声把数据生出来。两者不是彼此的精确逆,但在训练中被约束成一致的表征轨迹。
2.1.1 前向规范化器
前向模型保留了流模型的核心任务。它把图像映射到噪声分布,训练目标仍然围绕稳定的分布规范化来做。这个部分继续使用传统流式结构的优势,路径清晰,数值控制也更成熟。
从设计哲学看,前向模型负责“把世界讲清楚”。它把复杂的图像分布压到一个规整的噪声空间,给后续逆向生成提供坐标系。
2.1.2 逆向生成器
逆向模型是 BiFlow 的关键产物。它不再被要求实现前向的精确逆,因此可以使用更自由的架构。并行 Transformer、双向注意力、一次性预测等都变得可行。逆向模型的目标是从噪声恢复图像分布,推理时只需要跑一次或少量步骤,天然适合并行。
这一步的工程价值很直接。推理路径短了,服务端延迟就有了下降空间。推理算子更大更集中,GPU 利用率更容易打满。
2.2 训练与推理解耦
把逆向从精确逆里解放出来之后,训练与推理不再共享同一条严格可逆链路。训练时可以让前向模型承担更多“可解释”的工作,推理时让逆向模型承担更多“高效生成”的工作。两者之间通过对齐约束传递信息,而不是通过数学可逆强行绑定。
2.2.1 训练阶段目标
训练阶段关注两件事。第一件事是前向把数据分布稳定压到噪声分布,保证潜空间干净。第二件事是逆向学会从这个潜空间把数据还原出来,同时学到与前向一致的中间表示。这种训练方式更像知识迁移,但不追求逐算子复制。
这种目标拆分让优化更可控。前向可以用成熟配方保证稳,逆向可以用并行结构保证快,二者通过隐藏对齐保持同一“语义坐标”。
2.2.2 推理阶段路径
推理阶段只用逆向模型从噪声到图像。由于逆向不必逐步倒放前向链路,它可以把序列依赖改成并行依赖。对硬件来说,这是从细碎的顺序 kernel 调度变成更少的高吞吐 kernel 调度。
下表用工程视角对比传统可逆流与 BiFlow 的推理形态。表里不讨论谁更“数学优雅”,只讨论系统会遇到什么。
2.3 与传统 Flow、扩散模型的关系定位
BiFlow 并不是把归一化流抛掉,也不是简单模仿扩散模型。它保留了显式双向映射的框架,把难点从“严格可逆”转移到“可学习对齐”。从结果看,它试图拿到两类方法的长处。前向保留流的规范化能力,逆向吸收并行生成的工程优势。
这类定位在工程上很实用。团队不需要在“可解释与可控”同“速度与吞吐”之间二选一,而是通过角色分工把矛盾拆开。
✦ 三、隐藏对齐如何让逆向模型学得稳
%20拷贝-fpqn.jpg)
3.1 为什么只对齐输出不够
如果只要求逆向最终生成的图像分布正确,训练会更难。逆向模型面对的是高维多峰分布,从噪声直接跳到图像,梯度信号更容易稀薄。训练初期常见的问题是模式不稳、细节糊、收敛慢。此时单纯加大模型或加长训练能改善,但成本高,调参也更脆。
隐藏对齐的价值在于,把“终点对齐”改成“沿途对齐”。它给逆向模型加了一组中间监督,让学习路径更短,梯度更连续。工程上更像给模型加了路标,减少靠随机试错摸到正确路线的时间。
3.2 隐藏对齐的做法
隐藏对齐并不是要求两边的中间表示一模一样。逆向模型需要结构自由度,如果把隐藏状态强行按维度硬对齐,模型表达会被锁死,效果反而可能变差。BiFlow 的处理方式更温和,使用可学习投影把两侧表征映射到可比较空间,再做对齐约束。
3.2.1 中间态采样
前向模型从图像走到噪声,会经过若干层或若干步的中间状态。逆向模型从噪声走到图像,也会经过若干中间状态。训练时抽取这些状态对,构成对齐样本。对齐粒度可以按层,也可以按时间步,核心是让对齐覆盖生成过程的关键阶段。
这一步做对了,训练会更稳定。逆向模型不必在每次更新里只看最终像素误差或分布差异,它还能看到“中间语义有没有跟上”。
3.2.2 投影对齐
投影层的作用是把不同结构、不同维度的隐藏状态映射到同一表征空间。投影是可学习的,因此逆向模型不必把自己的内部结构改成前向的形状。它只需要学会在投影后的空间里与前向保持一致。
这种做法给了逆向两层自由度。第一层自由度是内部结构可以完全不同。第二层自由度是对齐空间可以自适应调整,不要求逐维拟合。
3.2.3 损失项组合
隐藏对齐通常会与生成质量相关的损失一起用。对齐项约束中间语义,重建或对抗类目标约束最终图像分布。两者组合后,训练信号既密又稳。中间对齐把路线扶正,最终目标把终点校准。
下图给出一个更贴近实现的训练流程。流程图强调数据流与约束点,不强调某个具体损失公式,方便对齐不同实现细节。

3.3 去噪内化与端到端生成
部分方案在生成后会再做一次去噪或校正,以提升观感或修复伪影。BiFlow 的逆向模型更像一个端到端生成器,它可以把这些后处理逻辑内化进网络。这样做的收益是推理更干净,系统链路更短,线上稳定性也更好,因为你减少了额外模块带来的边界条件。
端到端并不等于更简单。它把复杂度从系统里搬回训练里,训练需要更强的正则与更稳的对齐。隐藏对齐在这里也起到了“稳住训练”的作用。
✦ 四、697倍加速来自哪些工程事实
4.1 串行链路到并行推理
速度提升最主要的来源是链路结构改变。传统精确逆向的常见形态是,推理要顺序执行一串变换,上一段的输出是下一段的输入。BiFlow 的逆向生成器可以一次性看到全局上下文,把串行依赖压缩成并行计算。
这对 GPU 特别关键。GPU 擅长做大规模并行矩阵运算,不擅长做大量小而碎的顺序调度。并行推理让计算更集中,吞吐自然更高。
4.2 双向注意力与块并行
当逆向不再要求严格可逆,注意力就可以用双向形式。双向注意力让每个 token 在同一层里同时读到全局信息,不需要自回归的左到右顺序。块并行也更容易实现,图像 token 可以分块计算,再通过注意力交互,全程保持并行。
这类结构在训练时成本不低,但推理时非常吃香。线上更在意推理成本,训练成本可以通过离线集群消化。
4.3 算力利用率与延迟
697 倍更像是一种端到端延迟比值,而不是某个算子的微观加速。工程上可以用下面的方式理解。串行链路下,延迟等于每步延迟乘以步数,再加上调度与同步开销。并行链路下,延迟接近一次大前向的延迟,再加少量后处理。两者差距可以到两个数量级并不奇怪。
下表给一个更接近系统评估的对比维度。它不承诺某个绝对数值,只强调差异来源在哪里。
✦ 五、质量为何不掉,部分指标还更好
%20拷贝-tecw.jpg)
5.1 学习式逆向的统计优势
精确逆向追求逐点可逆,但生成任务关心的是分布质量。学习式逆向可以利用训练数据的统计规律,在多解问题上选择更符合数据分布的解。它不必把每个噪声点严格映射回某个前向路径的精确逆点,它可以学到更平滑的回归关系,从而减少伪影或不自然的细节。
从概率观点看,这是一种从“确定性逆”转向“统计性逆”的取舍。取舍是否正确取决于任务目标。如果目标是高质量样本,学习式逆向往往更合适。如果目标是严格的双向一致性,精确可逆仍然有价值。
5.2 FID 等指标解读
FID 评价的是生成分布与真实分布在特征空间的距离,偏向整体分布相似度。BiFlow 在这类指标上取得很强结果,说明它的逆向生成器没有因为摆脱可逆约束而偏离数据分布,反而可能因为结构更强、对齐更稳而更贴近真实。
指标只是一面镜子。工程上更需要看样本多样性、细节一致性、文本或条件控制的响应性。学习式逆向在这些维度上通常更容易通过结构扩展来提升,因为它不被可逆限制卡住。
5.3 可控生成与 CFG 兼容
BiFlow 保留了显式映射的框架,因此在可控编辑上仍然有优势。图像能被编码到噪声空间,噪声空间能被解码回图像。你可以在噪声空间做局部重采样或插值,然后再解码回去,实现局部修复、局部替换、风格迁移等操作。
在条件生成上,若引入类似 CFG 的引导策略,逆向生成器也更容易吸收,因为它更像一个通用生成网络。是否采用引导,以及引导强度如何选,属于应用层策略,不会反过来破坏前向规范化器的稳定性。
✦ 六、落地视角与边界
6.1 适合的业务形态
BiFlow 更适合对延迟敏感、需要并行吞吐的场景。交互式图像生成、实时编辑、游戏或虚拟场景内容生产,都属于这类需求。系统往往要求几十毫秒到数百毫秒级的响应,串行链路很难满足,并行逆向更现实。
内容创作也会受益。设计侧常见流程是快速生成一批候选,再挑选少数做精修。生成越快,迭代越短,创作成本越低。
6.2 风险与边界条件
BiFlow 把逆向从精确逆里解放出来,同时也带来一些边界。工程上需要提前把边界说清楚,否则上线后会在不可解释的地方踩坑。
6.2.1 似然与采样一致性
传统可逆流有更严格的概率语义,似然计算与采样路径一致。学习式逆向更偏向生成器,采样路径与前向规范化不再是精确互逆。对于只关心样本质量的业务,这通常不是问题。对于需要严格概率一致性的研究任务,需要明确这类取舍。
6.2.2 训练成本与数据质量
更自由的逆向模型常意味着更大算力开销。训练时还要做隐藏对齐,存取中间状态会增加显存压力。数据质量也更关键,逆向生成器容量更强时会更敏感,数据噪声与标注偏差可能会被放大。
上线团队要评估训练预算与数据管线是否匹配。如果训练资源紧张,可能需要在模型规模、对齐层数、对齐频率上做折中。
6.2.3 分布外鲁棒性
逆向是学习出来的,分布外输入或极端噪声可能会出现不可预测的行为。前向规范化器相对稳,但逆向生成器的泛化仍需要通过正则、数据覆盖与评测来保障。对线上系统来说,需要把失败模式纳入监控,例如异常纹理、结构崩塌、条件失效等。
6.3 可能的延展方向
BiFlow 的思想并不局限在离散图像 token。把逆向当成可学习近似器,再用中间对齐保证一致性,这个范式可以迁移到更多流式框架里。连续归一化流、流匹配、视频生成的时空流建模,都可能借鉴这种“训练时对齐,推理时并行”的组合。
工程上也有几个直接方向。第一是进一步压缩推理成本,例如蒸馏到更小的逆向生成器。第二是把对齐策略做成可插拔模块,降低训练门槛。第三是把显式映射用于编辑工具链,把生成与编辑做成统一的接口。
结论
BiFlow 的贡献不在于提出一个更复杂的网络,而在于把归一化流的关键约束拆开。前向继续做分布规范化,逆向改为独立可学习生成器,再用隐藏对齐把两者的语义轨迹绑在一起。推理阶段因此摆脱串行倒放,走向并行生成,速度提升到 697 倍这个量级就有了清晰来源。
对工程团队来说,这条路线更像一次重新分配责任。把“数学精确性”留在训练侧可控的对齐约束里,把“系统效率”放到推理侧可并行的生成器里。归一化流因此不再是只能在论文里好看的方案,它开始具备重新进入实时生成系统的条件。
📢💻 【省心锐评】
把逆向从精确可逆里解放出来,Flow 才能真正吃满并行算力,速度与质量的矛盾被拆成可工程化的问题。

评论