Equilibrium Matching:把采样从解微分方程变成梯度下山,FID 1.90 超越所有扩散模型
扩散模型和流模型的采样过程,本质上是在解一个微分方程。从纯噪声出发,沿着一条预设的轨迹,一步步积分到真实图像。这条轨迹受时间条件约束——不同的噪声水平需要不同的速度场。噪声在 $t=0.2$ 时该怎么走,和 $t=0.8$ 时完全不同。
Equilibrium Matching 做了一个大胆的假设:如果这条轨迹根本不需要存在呢?
如果能量景观本身就是稳定的,从任何位置出发,只需要往梯度最陡的方向走下去,自然会落在真实数据上。不需要ODE求解器,不需要固定步数,不需要预设轨迹。采样从"路径积分"变成"梯度优化",从"求解微分方程"变成"下山找谷底"。
这篇论文在 ImageNet 256×256 上拿到了 FID 1.90,超过了所有扩散模型和流模型。而且它的采样过程支持任意步长、自适应优化器、自适应计算分配——这是传统扩散/流模型根本无法做到的。
一、Flow Matching 的隐形成本:为什么时间条件是个包袱
Flow Matching 和扩散模型都遵循一个范式:
$$ 噪声 ε + 时间 t → 模型 f(·, t) → 速度场 v_t $$
模型必须同时知道"当前在哪"(状态 x)和"当前什么时候"(时间 t)。因为不同噪声水平需要完全不同的速度方向。$t=0.1$ 时可能需要快速远离噪声,$t=0.9$ 时可能需要精细调整细节。
这带来的约束:
1. 固定积分路径:从 0 到 1,不能跳过,不能回头 2. 固定步长调度: $$ abla t = 1/N $$ 步长必须和总步数绑定 3. 每个时间步独立学习:模型要在所有时间步上都学对,一个都不能错
Sun et al. (2025) 尝试直接去掉时间条件,发现质量骤降。这说明问题不是"时间条件化本身",而是 目标梯度与平衡动力学的兼容性。Flow Matching 的目标方向是 $x - $(从数据指向噪声),这和能量模型需要的"从噪声指向数据"是反的。
Equilibrium Matching 的解决方式很简单:把目标方向反过来。
二、EqM 的核心:时不变的能量景观
EqM 学习一个隐式能量函数 $E(x)$,满足:
$$ \nabla E(x) = f(x) $$
关键设计是它的目标梯度:
$$ f(x_\gamma) \approx (\epsilon - x) \cdot c(\gamma) $$
其中 $x_\gamma = \gamma x + (1-\gamma)\epsilon$ 是噪声和数据的隐式插值,模型 看不到 $\gamma$ 的值。$(\epsilon - x)$ 是从噪声指向数据的 下降方向——这意味着真实数据点 $x$ 在这个梯度场上是一个 局部最小值(梯度为零)。
$c(\gamma)$ 是一个梯度幅值函数,控制不同位置的梯度强度。论文用的截断衰减函数:
$$ c_{\text{trunc}}(\gamma) = \begin{cases} 1 & \gamma \leq a \\ \frac{1-\gamma}{1-a} & \gamma > a \end{cases} $$
这样设计的直觉:
- 远离数据时($\gamma$ 小,噪声主导):梯度大,快速向数据区域移动
- 接近数据时($\gamma \to 1$):梯度衰减到 0,平滑收敛到数据流形
- 真实数据上($\gamma = 1$):$c(1) = 0$,梯度精确为零,数据点是 稳定平衡点
| Flow Matching | Equilibrium Matching | |
|---|---|---|
| 目标方向 | $x - \epsilon$(velocity) | $\epsilon - x$(gradient) |
| 核心约束 | $\int_0^1 c(\gamma)d\gamma = 1$ | $c(1) = 0$ |
| 时间条件 | 必须,模型输入 t | 不需要,t 设为常数 0 |
| 采样视角 | 积分一条预设轨迹 | 优化一个能量景观 |
三、采样革命:从 ODE 求解器到梯度下降
因为能量景观是时不变的,采样过程不需要积分。任何优化方法都可以用:
基础梯度下降(GD)
$$ x_{k+1} = x_k - \eta f(x_k) $$
步长 $\eta$ 可以任意选。当 $\eta = 1/N$ 时,这等价于显式 Euler ODE 积分器。但 EqM 不受此约束——你可以用更大的步长,可以用更少的步数,效果依然稳定。
Nesterov 加速梯度(NAG-GD)——这是真正的杀招
$$ x_{k+1} = x_k - \eta \nabla E(x_k + \mu(x_k - x_{k-1})) $$
Nesterov 加速在每一步做一个" lookahead":先假设下一步会走到哪,然后在那评估梯度。这是经典的凸优化技巧,在 EqM 的采样中效果出奇地好:
| 采样器 | ImageNet FID |
|---|---|
| SiT-XL/2 + Euler ODE | 2.10 |
| SiT-XL/2 + Heun SDE | 2.06 |
| EqM-XL/2 + Euler ODE | 1.93 |
| EqM-XL/2 + GD | 1.93 |
| EqM-XL/2 + NAG-GD | 1.90 |
自适应计算:每个样本用不同的步数
传统方法对每个样本都跑固定 250 步。EqM 可以在梯度范数低于阈值时自动终止:
while ||f(x_k)||_2 > g_min:
x_{k+1} = x_k - <bi> f(x_k)
实验显示:平均只需 40% 的计算量(从 250 步降到约 100 步),FID 从 32.85 微升到 33.79,几乎无损。这意味着简单样本自动少算几步,复杂样本自动多算几步——计算资源按需分配。
步长鲁棒性
EqM 在 $\eta \in [0.5, 2.5] \times 0.004$ 范围内 FID 都稳定。Flow Matching 只在 $\eta = 0.004$(即 $1/N$)时有效,偏离后性能骤降。这证明 EqM 构建的能量景观和 FM 的流形有本质不同——前者是"从任何位置都能走下山",后者是"必须沿着一条特定的小路走"。
四、ImageNet 1.90:超越扩散和流模型的 SOTA
在 ImageNet 256×256 类条件生成上,EqM 的完整对比:
| 方法 | 类型 | FID |
|---|---|---|
| StyleGAN-XL | GAN | 2.30 |
| VDM++ | 扩散 | 2.12 |
| DiT-XL/2 | 扩散 | 2.27 |
| SiT-XL/2 | 流模型 | 2.06 |
| EqM-XL/2 | 能量模型 | 1.90 |
- 训练轮数:80 → 1400 epochs,EqM 始终领先
- 参数量:S/2 (33M) → XL/2 (675M),EqM 始终领先
- Patch size:8 → 2,EqM 始终领先
五、扩散模型做不到的事:EqM 的独特能力
1. 部分噪声去噪
从非纯噪声的输入开始生成,传统流模型会崩溃。因为 FM 需要显式知道当前噪声水平 $t$ 来查询正确的速度场。如果输入不是标准噪声,模型不知道"现在是什么时间"。
EqM 不需要知道时间。能量景观是固定的——从任何位置出发,只要梯度下降,就会往真实数据走。实验显示:
- 起始噪声水平 0.6(60%噪声):EqM 显著改善,FM 快速恶化
- 起始噪声水平 0.0(干净图像):EqM 最佳质量,FM 完全失败
2. OOD 检测(无需外部模块)
使用显式能量变体(EqM-E),可以直接用能量值判断样本是否属于训练分布:
| 模型 | OOD 检测 AUROC |
|---|---|
| PixelCNN++ | 0.45 |
| GLOW | 0.26 |
| IGEBM | 0.50 |
| EqM | 0.68 |
3. 图像组合(简单梯度相加)
# 组合两个类别的生成:直接加梯度
∇E_composed(x) = ∇E_class1(x) + ∇E_class2(x)
示例:panda + valley、car mirror + volcano、ice cream + chocolate syrup。这和经典能量模型(EBM)的组合性质一致,但 EqM 在 ImageNet 规模上实现了这一点。
传统扩散模型做组合需要复杂的分类器引导(classifier guidance)或 MCMC 校正。EqM 的组合是自然属性——能量景观的可加性直接继承到了梯度场上。
六、理论保证:为什么梯度下降会收敛到真实数据
论文给了三个理论陈述:
陈述1:数据点上梯度消失
> 设 $f$ 为 EqM 模型,$c(1)=0$,$x^{(i)}$ 为训练样本。在高维下:$||f(x^{(i)})||_2 \approx 0$
证明:$\gamma=1$ 时 $x_\gamma = x^{(i)}$ 的概率在高维下趋向 1(Dirac 质量主导),此时目标梯度 $(\epsilon - x^{(i)})c(1) = 0$,模型被训练为输出零。
陈述2:局部最小值即真实数据
> 设 $\hat{x}$ 为任意局部最小值,$f(\hat{x})=0$。则 $P(\hat{x} \in \mathcal{X}) \approx 1$
核心结论:所有梯度为零的局部最小值几乎必然对应真实数据样本。这意味着能量景观没有"虚假最小值"——不会收敛到不像真实数据的奇怪图案。
陈述3:梯度采样的收敛率
> 设 $E$ 为 $L$-光滑,下界 $E_{inf}$。GD 步长 $\eta \in [0, 1/L]$ 满足: > $$\min_{0 \leq k < K} ||f(x_k)||_2^2 \leq \frac{2(E(x_0) - E_{inf})}{\eta K}$$
$O(1/K)$ 收敛到梯度为零的数据流形。这意味着采样步数越多,样本越接近真实数据分布。
三个陈述合起来的保证:
- 训练让数据点成为能量局部最小值
- 采样的梯度下降会收敛到这些局部最小值
- 收敛点几乎必然是真实数据样本
七、实现:惊人的简单
EqM 的训练代码短得令人发指:
def training_loss(f, x, c):
eps = randn_like(x) # 随机噪声
gamma = rand() # 隐式插值系数,模型看不到
xg = (1-gamma)*eps + gamma*x # 插值样本
target = (eps - x) * c(gamma) # 目标梯度方向
loss = (f(xg) - target)**2 # 均方误差
return loss
就这些。没有复杂的概率路径设计,没有时间条件化,没有 SDE/ODE 的数学推导。一个均方误差,模型预测梯度,目标告诉你"正确方向是什么"。
采样同样简单:
def generate(f, st, eta, mu, g):
x = st
x_last = st
grad = f(st)
while norm(grad) > g: # 自适应终止
x_last = x
x = x - eta * grad
grad = f(x + mu*(x - x_last)) # NAG lookahead
return x
论文说模型结构完全复用了 Ma et al. (2024) 的 transformer backbone(SiT 的架构),唯一改动是把时间输入 $t$ 设为常数 0。这意味着 EqM 的 SOTA 性能不来自架构创新,而是来自训练目标的重新设计。
八、为什么这篇论文重要
EqM 的价值在于它 统一了扩散/流模型和能量模型,而且证明这个统一在大规模上能 work。
传统上,能量模型(EBM)和扩散/流模型是两个独立的分支。EBM 有漂亮的理论(能量景观、局部最小值、组合性),但训练困难,很难 scale 到 ImageNet。扩散/流模型能生成高质量图像,但理论解释薄弱,采样过程僵化。
EqM 把它们桥接起来:
- 训练像流模型一样简单(均方误差,单目标)
- 采样像能量模型一样灵活(任意优化器,自适应计算)
- 理论像能量模型一样完整(数据流形、收敛保证、组合性)
- 性能超越两者(FID 1.90,OOD 检测 AUROC 0.68)
论文标题说得很清楚:Equilibrium Matching。不是流匹配,不是扩散——是平衡匹配。在平衡态中,时间不再是变量,梯度不再依赖时刻,采样不再需要轨迹。你只需要一个能量景观,和下山的路径。
---
论文:Equilibrium Matching: Generative Modeling with Implicit Energy-Based Models. arXiv:2510.02300.
#生成模型 #扩散模型 #能量模型 #流模型 #深度学习 #计算机视觉 #ImageNet #论文解读 #采样优化 #梯度下降
🌟 智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。
🎁 领取 2000万 Tokens