- 核心矛盾:模型性能 vs. 采样速度
- 从“连续”回到“离散”的动机
- DFM 是如何工作的?
- 总结:一条螺旋式上升的路线
阅读FUDOKI相关的文章,发现:连续到离散:Discrete Flow Matching (DFM)
??怎么又回到离散了 之前不是NF(Normalization Flow) --> CNF(Continuous Normalization Flow) 怎么又回到离散
正好切中了近期生成模型发展中的一个核心矛盾和最前沿的趋势!您没有理解错,这个从“连续”回到“离散”的趋势确实存在,但它并不是简单的技术倒退,而是一种目标明确的“螺旋式上升”。
核心矛盾:模型性能 vs. 采样速度
图像生成领域一个永恒的“魔咒”:
GANs (一步生成):采样速度极快(一次前向传播),但训练不稳定,生成多样性和质量有时难以控制。
扩散模型/CNF (多步生成):生成质量和多样性登峰造极,训练稳定。但它们的致命弱点是采样速度慢。因为它们依赖于常微分方程(ODE)或随机微分方程(SDE)求解器,需要进行数十到上千次迭代(即NFE, Number of Function Evaluations)才能从噪声生成一张清晰图像。
想象一下,DALL-E 3 或 Midjourney 虽然效果惊人,但出图需要等待几秒到几十秒。这对于实时应用(如视频生成、实时渲染、交互式设计)是无法接受的。
整个领域目前的一个核心目标就是:如何在保持高质量的同时,实现闪电般的采样速度(即极低的NFE,最好是1-10步)?
从“连续”回到“离散”的动机
正是为了解决上述的“采样速度”问题,研究者们才将目光重新投向了“离散”。
困惑点在于:NF -> CNF 是为了解决NF的结构限制和计算雅可比行列式的困难,追求更灵活的连续变换。这在理论建模上是一个巨大的进步。
然而,当 CNF 和扩散模型在实践中依赖 ODE 求解器时,这个“连续”的优雅理论就必须被“离散化”执行。标准的 ODE 求解器(如欧拉法)做的就是用很多微小的、离散的步子去近似那条连续的路径。这导致了理论上的连续性和实践中的多步离散化之间的矛盾。
DFM (Discrete Flow Matching) 的思想就是:既然我们终究要用离散步骤来执行,为什么不从一开始就直接学习一个高效的、大步长的离散转换呢?
CNF/扩散模型:模型学习的是一个瞬时速度 \(u_t\)。要从A点走到B点,它需要不断地问:“我现在该朝哪个方向走一小步?” 然后走一小步,再问,再走…… 就像一个徒步旅行者,亦步亦趋。
DFM:模型学习的是一个“直达列车” \(f_k\)。它直接学习如何从第 \(k\) 个站点(\(x_k\))一步到达第 \(k+1\) 个站点(\(x_{k+1}\))。它不关心中间过程,只关心如何高效地完成这一大步的跨越。
DFM 是如何工作的?
DFM 继承了 Flow Matching 的核心思想——回归(Matching)一个预定义的目标,但把这个思想应用在了离散的时间步上。
定义离散路径:我们不再定义连续的 \(p_t(x|x_1)\),而是定义一系列离散的分布 \(p_0\), \(p_1\), \(...\), \(p_N\),其中 \(p_0\) 是噪声,\(p_N\) 是数据。
定义离散“流”:我们定义一个简单的、可计算的“映射”(map)来描述如何从 \(x_k\) 得到 \(x_{k+1}\)。例如,一个简单的线性插值。
直接学习映射函数:训练一个神经网络 \(f_k(x_k)\),让它的输出直接去“匹配”我们定义好的目标 \(x_{k+1}\)。这避免了学习瞬时速度,也避免了在训练和推理时使用慢速的ODE求解器。
FUDOKI 这篇论文正是 DFM 思想的一个杰出代表。它通过精心设计的离散化方案和损失函数,成功地训练了一个模型,可以在极少的步数(例如4-8步)内生成非常高质量的图像,极大地缩小了与扩散模型在质量上的差距,同时在速度上远超后者。
总结:一条螺旋式上升的路线
这条发展路线并非简单的“倒退”,而是一个正反合的辩证发展过程:
第一阶段 (离散 - NF):奠定了基础,但模型结构受限,计算昂贵。
第二阶段 (连续 - CNF/扩散模型):打破了结构限制,模型表达能力和生成质量达到顶峰。但也暴露出了新的核心问题——采样速度慢。
第三阶段 (智能离散 - DFM/FUDOKI):为了解决第二阶段的“速度”问题,重新回归离散框架。但这次的“离散”不再是早期NF的简单堆叠,而是吸收了连续流(Flow Matching)的训练思想,去学习最优的、大步长的离散步骤。它是一种更高层次的综合。
这个趋势目前非常火热,因为它有望让我们同时拥有SOTA级别的图像质量和接近GAN的生成速度,从而解锁更多的实际应用。所以您的观察非常敏锐,这确实是理解当前生成模型前沿演进的关键!