FlowMatching

Flow Matching (流匹配)

核心概念

Flow Matching (FM) 是一种基于连续归一化流 (CNF) 的生成模型范式。它通过直接回归向量场 (Vector Field) 来学习从简单分布(如高噪声)到复杂数据分布(如图像)的确定性传输路径。

简单来说,Diffusion 是在学习“如何去噪”,而 Flow Matching 是在学习“如何从噪声平滑地流向数据”。

1. 背景与直觉

在生成模型中,我们希望找到一种映射,能将简单的先验分布 $p_0$(通常是高斯噪声)转化为复杂的数据分布 $p_1$(如图片)。

  • Diffusion Models (SDE): 通过逐步加噪的随机过程(扩散)将数据破坏为噪声,然后学习反向过程。路径通常是随机的、曲折的 (Curved)。
  • Flow Matching (ODE): 建立一个确定性的概率路径 (Probability Path) $p_t$,并学习一个向量场 $v_t(x)$,该向量场描述了粒子(数据点)随时间 $t$ 移动的速度和方向。通过求解常微分方程 (ODE) $dx/dt = v_t(x)$ 生成样本。

为什么 Flow Matching 越来越火?

  1. 路径更直 (Straighter Paths): FM 允许我们自定义概率路径。特别是 Rectified FlowOptimal Transport FM,可以强制路径走直线。
  2. 生成更快 (Efficiency): 直线路径意味着 ODE 求解器需要的步数极少。Diffusion 可能需要 50 步,而直线路径的 FM 可能只需要 1-2 步 (One-step generation)。
  3. 训练更稳: 避免了某些扩散模型中复杂的 SDE 推导,目标函数简单直观(回归速度场)。

2. 核心原理 (Core Principles)

2.1 概率路径与向量场

Flow Matching 的目标是定义一个时变概率密度路径 $p_t(x)$,使得 $p_0$ 是标准正态分布,$p_1$ 是数据分布。 根据连续性方程 (Continuity Equation),必然存在一个向量场 $v_t(x)$ 生成此路径:

$$ \frac{\partial p_t(x)}{\partial t} + \nabla \cdot (p_t(x) v_t(x)) = 0 $$

我们的目标就是训练一个神经网络 $v_\theta(t, x)$ 来拟合这个 $v_t(x)$。

2.2 Conditional Flow Matching (CFM)

直接计算边缘分布 $p_t(x)$ 的向量场是极其困难的(intractable)。 FM 的这篇论文提出了 Conditional Flow Matching (CFM) 技巧:

  • 我们不需要通过复杂的积分去算整体的 $v_t$。
  • 只需要定义基于单个数据点 $x_1$ 的条件路径 $p_t(x|x_1)$ 和对应的条件向量场 $u_t(x|x_1)$。
  • Loss Function: 直接回归这个条件向量场: $$ L_{CFM}(\theta) = \mathbb{E}_{t, x_1, x} \| v_\theta(t, x) - u_t(x|x_1) \|^2 $$ 其中 $x$ 是从条件分布 $p_t(x|x_1)$ 中采样的点。
通俗理解 CFM

你不需要知道整个大部队如果移动(Marginal Vector Field),你只需要知道如果最终目标是特定的图片 A,当前的噪声应该往哪个方向走(Conditional Vector Field)。只要所有样本都学会了这种“回特定家”的能力,在推理时,模型就能处理未知的噪声。


3. Rectified Flow (校正流)

Rectified Flow 可以看作是 Flow Matching 的一种特例或一种改进策略。 它的核心思想是:“两点之间直线最短”

  • 1-Rectified Flow: 如果我们强制条件路径是从噪声 $x_0$ 到数据 $x_1$ 的直线插值: $$ x_t = t \cdot x_1 + (1-t) \cdot x_0 $$ 这就对应了一个常数速度场 $v = x_1 - x_0$。
  • Reflow (Re-rectification): 即使训练了直线路径,由于是非线性神经网络拟合,生成的轨迹可能还是弯曲的。Rectified Flow 提出了一种递归训练方法(Reflow),用上一轮生成的 $(Z, X_{gen})$ 对作为下一轮的数据对,进一步“拉直”轨迹。

应用: Stable Diffusion 3 (SD3) 就采用了 Rectified Flow (RF) 加上 Transformer 架构 (DiT)。


4. Flow Matching vs Diffusion

4.1 理论关系图谱

Flow Matching 是一个更通用的框架,Diffusion Model 可以看作是其中的一种特例(路径受限为高斯路径)。

graph TD
    FM[**Flow Matching**<br>通用框架:学习向量场] --> RF[**Rectified Flow**<br>路径: 直线 Straight]
    FM --> DM[**Diffusion Models**<br>路径: 高斯弯曲 Curved]
    
    RF --> SOTA[**SOTA Models**<br>Stable Diffusion 3<br>FLUX.1<br>Sora]
    DM --> Classic[**Classic Models**<br>DDPM / EDM<br>SD 1.5 / SDXL]
    
    style FM fill:#ffeb3b,stroke:#333
    style RF fill:#a5d6a7,stroke:#333
    style DM fill:#90caf9,stroke:#333

4.2 详细对比

特性Diffusion Models (DDPM / EDM)Flow Matching / Rectified Flow
基础方程SDE (随机微分方程)ODE (常微分方程)
路径形态弯曲 (Curved), 随机趋向直线 (Straight), 确定性
采样效率低 (通常需 20-50 步)极高 (可低至 1-5 步)
连接方式噪声预测 ($\epsilon$-prediction)速度/向量场预测 (Velocity-prediction)
灵活性固定前向加噪过程 (Gaussian)可灵活设计源和目标分布
代表模型SD 1.5, SDXL, DALL-E 2SD 3, Flux.1, Sora (推测)

5. 关键参考文献 (References)

基础理论

  1. [Lipman et al. 2023] Flow Matching for Generative Modeling
    • Title: Flow Matching for Generative Modeling
    • Link: arXiv:2210.02747
    • Note: 提出了 FM 框架和 CFM 训练目标,用 Optimal Transport (OT) 路径实现了 SOTA。

Rectified Flow 系列

  1. [Liu et al. 2023] Flow Straight and Fast

    • Title: Flow Straight and Fast: Learning to Generate with One Step
    • Link: arXiv:2209.03003
    • Note: 提出了 Rectified Flow 和 Reflow 操作,专注于将 ODE 轨迹拉直以实现一步生成。
  2. [Esser et al. 2024] Scaling Rectified Flow Transformers (SD3 Paper)

    • Title: Scaling Rectified Flow Transformers for High-Resolution Image Synthesis
    • Link: arXiv:2403.03206
    • Note: Stable Diffusion 3 的技术报告,详细阐述了如何在大规模文生图中使用 RF + DiT。

相关变体

  1. [Tong et al. 2023] Conditional Flow Matching
    • Title: Improving and Generalizing Flow-Based Generative Models with Minibatch Optimal Transport
    • Link: arXiv:2302.00482