跳到正文

DDPM vs Flow Matching: 采样效率与优缺点?

建模思路、训练目标与采样效率对比,优缺点分析

原题:请比较DDPM(Denoising Diffusion Probabilistic Models)与Flow Matching在建模思路、训练目标、采样效率和理论基础方面的核心区别,并分析各自的优缺点。

模型训练 · 百度真题

回答与解析

建模视角

DDPM 定义离散前向马尔可夫加噪过程 q(x_t|x_{t-1}),并学习反向去噪转移。常见简化目标随机采样一个时间步 t,由闭式边缘 q(x_t|x_0) 一次构造 x_t,让网络预测噪声、score 或等价参数;不是每个训练样本顺序跑完一千步。

Flow Matching 在连续归一化流 ODE dx_t/dt=v_t(x_t) 下,预先选择从基分布到数据分布的概率路径,并回归该路径的条件向量场。它可选择 diffusion conditional path,也可选择 OT displacement path 等,不等于只学习直线。

训练与采样

  • DDPM 训练通常是随机时间步的 Monte Carlo 估计;经典祖先采样按反向时间步迭代,DDIM、DPM-Solver 等可改变采样步数。
  • Flow Matching 训练也随机采 t 回归速度场,不需训练时积分 ODE;采样时用 ODE solver,NFE 由路径、求解器和误差决定。

因此训练时间步数、采样 NFE 和生成延迟必须分开。FM 可能因路径更直而少步,但不保证单步或固定十步。DDPM 也不是只能使用固定一千步采样。

理论联系与选型

扩散过程存在连续时间 SDE 与 probability-flow ODE 视角;Flow Matching 的 diffusion path 可以与这些构造联系起来,但只有在明确 schedule、path 和参数化时才能谈等价。选型应固定模型、数据、采样器和 NFE,对比似然/质量、多样性、稳定性与延迟,不能把“FM 初稿、DDPM 精修”写成主流必选流程。

口语版讲法(约4分钟)

  • 从离散马尔可夫链与连续 ODE 比较
  • 澄清 DDPM 训练每样本随机一个 t
  • 解释 Flow Matching 的路径与速度场
  • 区分训练时间步和采样 NFE
  • 说明理论联系和选型实验

我会先用一句话区分:DDPM 从离散前向加噪和反向去噪出发,Flow Matching 从连续概率路径上的速度场出发。

DDPM 定义一个离散马尔可夫前向过程,每一步给数据加少量高斯噪声,最终接近简单噪声分布。训练时利用 q(x t x 0) 的闭式形式,先随机采一个时间步 t 和噪声,一次就得到 x t,然后让网络预测噪声、score 或等价目标。这里非常容易说错:一张训练图片在一次迭代里通常只采一个 t,不需要顺序跑完一千个加噪步骤。对所有时间步目标的学习,是通过不同样本和不同迭代的 Monte Carlo 采样完成的。生成时经典 DDPM 才沿反向时间步逐步去噪;DDIM、DPM-Solver 等采样器还能减少函数评估次数。

Flow Matching 定义连续 ODE,dx t/dt 等于 v t(x t)。先选择一条从基分布 p0 到数据分布 p1 的概率路径,再训练网络回归这条路径对应的条件速度场。训练同样随机采时间 t、端点和路径中的 x t,不需要在训练阶段数值积分完整 ODE。采样时才用 ODE solver 从 t=0 积分到 t=1。

两者的路径关系也要讲条件。Flow Matching 可以选择 diffusion conditional path,所以它能覆盖与扩散相关的概率路径;也可以选 Optimal Transport displacement path,常常更直。但 Flow Matching 不等于“只走直线”,OT 路径也不等于所有扩散模型的 probability-flow ODE。DDPM 也可以放到连续时间 SDE 和 probability-flow ODE 的视角下理解。只有明确 noise schedule、概率路径、预测目标和参数化后,才能说两个目标在什么意义下相关或等价,不能只因都是高斯就概括成一样。

采样效率方面,路径更直、求解器更好时,Flow Matching 可能用较少 NFE 达到目标质量,但它不保证天然十步甚至单步。DDPM 也不等于固定一千步,采样器选择会显著改变速度。必须把训练时随机采 t、生成时函数评估次数和端到端延迟三个概念分开。

工程比较时,我会固定网络、数据、分辨率和算力预算,为两边选择公开且合理的采样器,再画质量对 NFE、延迟和显存曲线,同时看多样性与稳定性。不存在“先用 FM 出初稿,再用 DDPM 精修”的通用主流流程;是否串联必须由具体系统和消融实验证明。

训练成本比较也应使用相同的数据访问次数和网络前向次数。DDPM 与 FM 都可能只在一个随机时间点上监督,但目标方差和时间采样策略不同;必要时按时间区间画 loss 和生成误差,避免平均指标掩盖某一段路径学得很差。

回答公式时也要明确 t 的取值方向,避免把前向高噪末端和反向采样早期混成同一句。

关键一句:DDPM 训练通常每个样本随机采一个 t,顺序的一千步主要描述经典采样链而不是单次训练前向。

核验来源

  1. Denoising Diffusion Probabilistic Models
  2. Flow Matching for Generative Modeling
  3. Denoising Diffusion Implicit Models

面试官还可能这样问

  1. 问法 1 · 场景切入

    假设现在要为图像生成服务在质量和采样成本之间做取舍,你会如何比较 DDPM 与 Flow Matching,并设计同口径实验决定选型?

  2. 问法 2 · 层层追问

    DDPM 学习的对象是什么?……Flow Matching 的速度场目标又是什么?……采样时分别解什么过程?……路径、求解器和函数评估次数怎样影响质量与延迟?

  3. 问法 3 · 直球技术

    请从训练目标、概率路径、采样方程、求解器与函数评估次数对比 DDPM 和 Flow Matching,并说明为什么不能脱离模型与质量门槛断言谁一定更快。

同模块相关题目