← Home

Stochastic Interpolants: A Unifying Framework for Flows and Diffusions(清单名;PDF 正文标题:Building Normalizing Flows with Stochastic Interpolants)

Michael S. Albergo、Eric Vanden-Eijnden · New York University(Center for Cosmology and Particle Physics / Courant Institute of Mathematical Sciences) · 2022-09-28(v1)/ 2023-03-09(v3) · arXiv:2209.15571

Stochastic Interpolants(泛读):一般插值 + 速度/score 分离,flow map 谱系从这里长出来

一句话定位:这篇论文(ICLR 2023,清单名登记为 Stochastic Interpolants: A Unifying Framework for Flows and Diffusions,PDF 正文标题为 Building Normalizing Flows with Stochastic Interpolants,作者 Michael S. Albergo 与 Eric Vanden-Eijnden,纽约大学)提出「随机插值」框架:任选一个两端固定的插值函数把基分布与目标分布连成一条有限时间的密度路径,再用一个简单的二次回归学会这条路径的速度场,从而把连续归一化流的训练从「模拟 ODE + 反向传播」降成「采样 + 最小二乘」。论文同时给出速度与 score 的显式换算、训练损失对生成质量的 Wasserstein-2 控制界,以及通过优化插值逼近最优输运的路线。阅读提示要求理解「一般插值」与「速度/score 分离」,并看清 Flow Map Matching 与 MeanFlow 的数学从这里长出来——这两点正是本文的核心。

1. 要解决什么问题

生成模型的目标,是从一个简单已知的基分布 ρ0(通常是标准高斯)出发,把样本输运成数据分布 ρ1。连续时间归一化流(CNF)把这件事写成一条常微分方程:给定初始位置 x,让粒子沿着速度场 v_t 走,t=0 处按 ρ0 撒点、t=1 处就得到 ρ1 的样本。理论上这条路线能表达任意概率路径,但训练算法一直卡着:极大似然(MLE)训练要在前向 ODE 上做数值积分,再沿求解器反向传播伴随方程,每一步的代价随模型复杂度增长。论文附录 I 用相同架构做了实测:InterFlow(本文方法)每 epoch 耗时恒定,FFJORD 这类 MLE 方法随训练增长,在 43 维 MiniBooNE 上每 epoch 时间最终相差约 400 倍。

另一方面,2022 年可用的替代路线各自带着约束。离散流(MADE、Real NVP、Glow、Neural Spline Flow)靠限制网络结构来保证可逆和行列式易算,表达力受限。score-based 扩散(ScoreSDE、DDPM)训练稳定,但路径被 Ornstein-Uhlenbeck 过程锁定,理论上面临无限时间连通问题,且 SDE 系数在端点奇异。本文的切口是:把「选一条路径」和「学这条路径的速度」拆成两件独立的事,前者由插值函数显式指定,后者变成一个稳定的二次回归。

2. 核心思想一:用插值定义一条密度路径

第一步是构造路径。选一个时间可微的插值函数 I_t(x0, x1),要求它满足端点条件:t=0 时取 x0,t=1 时取 x1。论文的标准实例是三角函数插值:

I_t(x0, x1) = cos(πt/2)·x0 + sin(πt/2)·x1

这个式子要回答的问题:如何用一对端点样本拼出中间时刻的状态?逐符号看:x0 是基分布 ρ0 的样本,x1 是目标分布 ρ1 的样本,两者独立;t 从 0 走到 1。t=0 时 cos(0)=1、sin(0)=0,I_0 = x0;t=1 时 cos(π/2)=0、sin(π/2)=1,I_1 = x1——端点条件自动满足。关键点在于框架对任何满足端点条件的 I_t 都成立,三角函数实例只是其中之一:插值函数的选择决定了密度路径的形状,也就是 ODE 轨迹绕不绕路。

把独立采样的 x0~ρ0、x1~ρ1 代进去,得到随机过程 x_t = I_t(x0, x1)。它的边际密度 ρ_t 用 Dirac delta 表示(式 12):对每一对端点样本的插值位置求平均。因为端点条件,ρ_0 = ρ0、ρ_1 = ρ1,中间时刻的 ρ_t 就是一条从基分布滑向目标分布的密度路径。

Figure 1:插值密度 ρ_t 从标准高斯(t=0)到三峰高斯混合(t=1),白色流线是学到的输运轨迹

3. 核心思想二:速度场是一个二次回归的解

路径有了,接下来学速度。密度 ρ_t 随时间演化,质量守恒要求它满足连续性方程:∂_t ρ_t + ∇·(v_t ρ_t) = 0。这个式子说的是:密度在某处的变化率,等于速度场把粒子搬进搬出的净流量(散度项)。问题变成:哪个速度场 v_t 能让这条方程成立?

论文 Proposition 1 给出答案:v_t 是下面这个二次目标 G 的唯一极小点:

G(ẑ) = E[ |ẑ_t(x_t)|² − 2·∂_t I_t·ẑ_t(x_t) ]

先讲预期:这个目标想逼网络输出 ẑ 去匹配「粒子真实移动的速度」∂_t I_t,但又加了一个平方项做正则,使得最小二乘的解逐点收敛到正确的速度场,而不是把 |ẑ|² 一起压小。逐符号看:ẑ_t(x) 是候选速度场(网络输出);∂_t I_t 是插值函数对时间的偏导,也就是这对端点样本的瞬时速度;E 是对 t、x0、x1 的联合期望,训练时直接采样估计。把 G 展开成 ∫(|ẑ|²ρ_t − 2ẑ·j_t)dxdt(式 16),其中 j_t 是概率流(式 13–14),对 ẑ 求变分并令其为零,得到 ẑρ_t = j_t,即 ẑ = j_t/ρ_t = v_t。这里的 v_t 等价于条件期望 E[∂_t I_t | x_t = x]:给定当前中间状态,所有端点样本对速度的平均。

这个结果带来两个直接收益。其一,训练变成纯蒙特卡洛回归:采样 t、x0、x1,算出 x_t 与 ∂_t I_t,让网络在 x_t 处回归 ∂_t I_t 即可(式 I.1),全程没有 ODE 积分、没有对求解器反传;时间采样还可以按 Beta 分布重加权(表格用 (1.0,0.5) 附近、图像用 (1.0,0.75)),Proposition 1 保证任何正权重 w(t) 下极小点不变。其二,损失的最小值有解析形式:G(v) = −E|v_t|²(式 10),于是可以构造平移损失 G̃(ẑ) = G(ẑ) + E|ẑ|²(式 11),当 ẑ = v 时它等于 0——训练中监控这个量是否趋 0,就是一个不依赖肉眼看样本的收敛信号(必要但非充分,附录 I 在 POWER 上展示了它收敛到 0 的曲线)。

训练损失与生成质量之间还有理论关系。Proposition 3 给出 Wasserstein-2 误差界:W2²(ρ1, ρ̂1) ≤ e^{1+2K̂}·H(ẑ)。逐符号看:ρ̂1 是用学到的速度 ẑ 解 ODE 得到的生成分布;H(ẑ) = ∫|ẑ−v|²ρ_t 是加权速度误差(式 17);K̂ 是 ẑ 的 Lipschitz 常数;e^{1+2K̂} 是指数系数,说明这是一个定性保证、数值上较松。含义很直接:回归损失小,生成分布与目标分布的距离就有上界——「损失小」被翻译成「采样质量有保证」。

4. 核心思想三:速度与 score 的显式换算

flow 谱系与 score-based 扩散在 2022 年各说各话,本文用 Proposition 4 架了一座桥:当基分布 ρ0 是标准高斯、插值取三角函数实例时,速度 v_t 与 score(对数密度梯度 ∇log ρ_t)可以互相换算:

∇log ρ_t(x) = −x − (2/π)·tan(πt/2)·v_t(x),t∈[0,1)

先讲预期:这个式子想说的是,学到的速度里已经包含了扩散模型要学的全部信息。逐符号看:−x 这一项来自高斯基分布;tan(πt/2) 在 t=1 时发散,所以端点要单独处理——t=1 处用 v_t=1 = 0 和洛必达法则得到 ∇log ρ_1 = −x − (4/π²)·∂_t v_t|_{t=1}(式 28)。有了 score 就能构造采样 SDE:dx_τ = −ŝ(x_τ)dτ + √2 dW_τ(式 29),其中 τ 是人工时间、ŝ 是换算出的 score、dW 是布朗运动增量。论文特别强调:速度在 [0,1] 全程良态,而对应 SDE 的漂移与扩散系数在 t=0、1 奇异,因此可以完全绕过 SDE、直接工作在概率流 ODE 层面——同一份网络权重,既给确定性 ODE 路线(算似然、做隐编码),又给随机 SDE 路线(如果确实要用扩散)。

「分离」在这里有两层意思。第一层,路径设计(选 I_t)与速度拟合(最小化 G)被拆开,这在 MLE flow 训练里是绑在一起的。第二层,速度与 score 被显式分开又显式连接:两套生成范式共享同一个回归目标,换算关系是闭式的。

5. 关键实验:表格、图像与 128×128

二维 toy 先验证可行性:3 层×256 宽 ReLU MLP,训练 10k epochs,用 80k 样本的核密度估计对比。8 高斯混合、棋盘、各向异性曲线这些多峰目标全部被捕获,没有拉伸或涂抹。更有意思的是数据集间插值实验:把 swirl 分布插值到 checkerboard,两侧都没有解析密度、只有样本,论文用 t=0.25/0.5/0.75 的中间时刻样本检查速度场——证明中间时刻也正确,而 score 扩散通常要求一侧是高斯。

Figure 2:左列 2D 密度估计(学到的流 vs 真实密度);右列 swirl↔checkerboard 数据集间插值的 5 时刻快照

表格数据是论文的主战场。5 个 UCI 数据集(POWER/GAS/HEPMASS/MINI-BOONE/BSDS300,维度 6~63),基分布取 N(0,I_d),网络为 4–5 层×512 的 MLP(BSDS300 用 5×1024 + ELU),训练 10^5 步、学习率 0.003(BSDS300 为 0.002)。held-out 负对数似然(越低越好)上,本方法与连续流最强基线 FFJORD 的对照是:POWER −0.57 vs −0.46,GAS −12.35 vs −8.59(差 3.76 nats),HEPMASS 14.85 vs 14.92,MINI-BOONE 10.42 vs 10.43,BSDS300 −156.22 vs −157.40。除 BSDS300 外全部持平或更好(论文称相比各基线最高有 30% 以上的相对提升),BSDS300 是唯一略逊项,FFJORD 领先约 0.6%。

图像任务上,论文用 DDPM 的 U-Net 架构、单张 NVIDIA A100 做无条件生成:CIFAR-10 上 NLL 2.99 bits/dim、FID 10.27;ImageNet-32 上 NLL 3.48、FID 8.49。对照(表 2 右):CIFAR-10 的 NLL 与 ScoreSDE 的 2.99 持平,低于 ScoreFlow 的 2.81 与 VDM 的变分界 ≤2.65;FID 落后最佳扩散(ScoreSDE 2.92、DDPM++ 2.90)——论文自承没有用 EMA、截断、学习率 warmup 等扩散训练技巧。ImageNet-32 上 NLL 3.48 优于 ScoreFlow 的 3.76,FID 8.49 优于 ScoreFlow 的 10.18、接近 Soft Truncation 的 8.42。最大的里程碑是 128×128 Oxford Flowers:论文称这是第一次把从零训练(ab-initio,非 MLE)的 ODE flow 做到这个分辨率,单张 A100、1.5×10^5 步×batch 50;但只有定性样本(Figure 3 左),没有 FID 或似然数字。

Figure 3:左为 128×128 Oxford Flowers 样本,右为 ImageNet-32(上)与 CIFAR-10(下)样本

6. 谱系定位:Flow Matching、FMM 与 MeanFlow 从这里长出来

随机插值是 2022 年末三篇并行工作之一。Rectified Flow(Liu et al. 2022)与 Flow Matching(Lipman et al. 2022)共享「在两分布之间定义插值过程、回归速度」的核心,前者强调直线化重排(reflow),后者把条件速度匹配与边际目标等价性做透并大规模验证。本文的侧重点在一般性:任意满足端点条件的插值、速度与 score 的闭式换算(Proposition 4)、通过优化插值逼近 Benamou–Brenier 最优输运(Proposition 2),以及双侧无解析密度的插值示范。

对后续谱系而言,本文最关键的遗产是速度的条件期望表示:v_t(x) = E[∂_t I_t | x_t = x]。Flow Map Matching(Neklyudov et al. 2024,ICML)明确声明基于随机插值框架,提出两时间 flow map X_{s,t} 的直接训练损失与从预训练速度场蒸馏的损失。MeanFlow(Bernstein et al. 2024)把「平均速度」定义为 flow map 的条件期望,用 MeanFlow identity 连接平均速度与瞬时速度。两者都在把本文的期望表示从「单步速度」推广到「任意时间跨度的 flow map」——这就是「从这里长出来」的准确含义。

7. 局限

论文自承与读出的局限至少六条。图像 FID 明显落后最佳扩散(CIFAR-10 上 10.27 vs ScoreSDE 2.92),作者归因于未用 EMA、截断、warmup 等技巧且未调优,「和扩散打平」的结论要打折看。训练依赖基分布 ρ0 的解析密度,实验一律取标准高斯;一般插值下 ρ_t 没有解析形式,还会引入 ρ0 加权因子,论文对更宽插值函数族的学习只留了 future work。最优输运部分(Proposition 2)需要 interpolable 密度假设和附录 D 的长证明,缩短路径的实验只在附录 H 用 checkerboard toy 简要报告,属于「提出路线、验证单薄」。速度到 score 的端点处理不顺手:t=1 要洛必达和 ∂_t v_t,关联 SDE 在 t=0、1 奇异。高维图像只是首次示范:128×128 没有定量指标,少步数采样也未系统研究。最后提醒读者:清单名(A Unifying Framework for Flows and Diffusions)与本文 PDF 标题(Building Normalizing Flows with Stochastic Interpolants)不同,「统一框架」更系统的表述在后续同名工作(Albergo et al. 2023,arXiv 2303.08797)里,读后续工作前宜先核对。

核心结论再收一遍:随机插值用两端固定的插值函数定义密度路径,路径上的速度场是一个二次最小二乘的解,训练不用模拟 ODE、不用反传;速度与 score 可以闭式互转,同一个网络同时供 ODE 与 SDE 两条路线;这套数学(尤其 v_t = E[∂_t I_t | x_t])是 Flow Map Matching 与 MeanFlow 的共同出发点。

提出「随机插值(stochastic interpolant)」框架:任选一个在 t=0 处取 x0、t=1 处取 x1 的时间可微插值 I_t(x0,x1),把独立采样的基样本与目标样本对折成一条中间密度路径 ρ_t;论文证明这条路径的速度场 v_t 是某个简单二次目标的最小二乘解,训练只需对样本做蒙特卡洛估计,完全绕开对 ODE 求解器的反向传播,还给出训练损失对生成分布 Wasserstein-2 距离的控制界、速度与 score 的显式换算(Proposition 4)以及通过优化插值逼近最优输运的路线(Proposition 2)。实验上,表格数据 NLL 全面追平或反超 FFJORD 等连续流,图像上 CIFAR-10 / ImageNet-32 拿到与扩散模型竞争的似然,并第一次把从零训练的 ODE flow 推到 128×128 分辨率(Oxford Flowers,单张 A100)。这篇论文是后续 Flow Map Matching、MeanFlow 等「flow map / 平均速度」路线共同的数学起点,阅读提示里的「一般插值 + 速度/score 分离」全部落在这篇正文里。

阅读提示

精读深度:泛读

清单提示:原文提示:理解一般插值 + 速度/score 分离;Flow Map Matching 与 MeanFlow 的数学都从这里长出来。

问题

要解决什么:生成模型要造一张从简单分布(基分布 ρ0,通常取标准高斯)到数据分布(ρ1)的可微输运映射。连续时间归一化流(CNF)用 ODE 定义映射 X_t,理论上能表达任意概率路径,但可扩展的训练算法缺失:极大似然(MLE)训练要在前向 ODE 上做数值积分、再沿求解器反向传播伴随方程,每步代价随复杂度增长,且路径选择与目标函数耦合在一起。本文要解决的问题:能否绕开「模拟 ODE + 对求解器反向传播」,直接构造一个可估计的速度场训练目标,并让路径设计(选插值 I_t)与速度拟合(优化目标)两件事解耦。

为什么 prior work 不够:FFJORD 等 neural ODE 的 MLE 训练每次迭代都要解 ODE 并反传,论文附录 I 用同架构实测:InterFlow 每 epoch 耗时恒定,FFJORD 随训练增长,MiniBooNE 上最终每 epoch 时间相差约 400×。离散流(MADE/Real NVP/Glow/Neural Spline)靠受限结构保证可逆与行列式易算,表达受限。score-based 扩散(ScoreSDE、DDPM)训练可行,但路径被 OU 过程锁定,理论上面临无限时间连通问题,且 SDE 系数在端点奇异、缺少有限时间内连通任意两密度的灵活性。已有的 simulation-free 速度场拟合尝试(Rozen et al. 2021;Ben-Hamu et al. 2022)要么带高维不可积积分,要么梯度有偏且限于流形。

输入 / 输出

输入

名称类型说明
base sample x0continuous vector (R^d)采样自基分布 ρ0,论文实验用标准高斯 N(0,I_d);d 为数据维度,图像为 3×H×W
target sample x1(仅训练)continuous vector (R^d)训练 batch 里抽的真实数据点,与 x0 独立;推理时不需要
time tscalar in [0,1]训练时按 Beta 分布重加权采样(表格 α,β 取 (1.0,0.5)~(1.0,1.0),图像 (1.0,0.75));推理时作为 ODE 积分变量

输出

名称类型说明
velocity v̂_t(x)continuous vector (R^d)网络输出;训练时在 x_t = I_t(x0,x1) 处回归 ∂_t I_t;推理时作为 ODE dX_t/dt = v̂_t(X_t) 的右端项,从 t=0 积分到 t=1
generated sample X_1(x0) / likelihoodcontinuous vector (R^d) / scalar从 x0~ρ0 出发解 ODE 得到生成样本;似然用瞬时换元沿同一 ODE 计算
score ∇log ρ_t(高斯基分布 + 三角插值时可换算)continuous vector (R^d)Proposition 4 用 v̂_t 显式换算 score,可构造 SDE dx_τ = −ŝ dτ + √2 dW_τ 采样;论文主张直接工作在 ODE 层面更简单

数据集

数据规模备注
2D toy(8 高斯混合 / 棋盘 / 各向异性曲线)Grathwohl et al. 2019 的 2D 数据集3×256 ReLU MLP,10k epochs,80k 样本核密度图对比;全部模式被捕获、无拉伸涂抹
2D 数据集间插值(swirl ↔ checkerboard)两侧都无解析密度,只有样本验证中间时刻 t=0.25/0.5/0.75 的速度也正确,而仅端点;体现任意两密度有限时间连通的灵活性
POWER / GAS / HEPMASS / MINI-BOONE / BSDS3006/8/21/43/63 维;训练点 1,615,917 / 852,174 / 315,123 / 29,556 / 1,000,000held-out NLL(越低越好):Ours −0.57 / −12.35 / 14.85 / 10.42 / −156.22;FFJORD −0.46 / −8.59 / 14.92 / 10.43 / −157.40;除 BSDS300 外全部持平或更好
CIFAR-10(无条件图像生成)50K 训练点,32×32NLL 2.99 BPD / FID 10.27(单张 A100,无数据增强、无 EMA/截断/warmup);对照 ScoreSDE 2.99/2.92、DDPM++ ≤3.37/2.90
ImageNet 32×321,281,167 训练点(Van Den Oord 预处理)NLL 3.48 BPD / FID 8.49;NLL 优于 ScoreFlow 3.76,FID 优于 ScoreFlow 10.18、接近 Soft Truncation 8.42
Oxford Flowers 128×128315,123 训练点(Table 4)首次 ab-initio(从零、非 MLE)ODE flow 上 128×128;单张 A100,仅定性样本(Figure 3 左 / Figure I.3),无 FID/似然

架构(摘要)

主干与结构

backbone:2D/表格:MLP(2D 3×256 ReLU;表格 4–5 层 × 512,BSDS300 为 5 层 × 1024 + ELU);图像:DDPM U-Net(基于 lucidrains/denoising-diffusion-pytorch,正弦时间 embedding)

参数:未公布总参数量;图像 U-Net hidden dim 256,dim mult:CIFAR-10 [1,2,2,2,2]、ImageNet-32 [1,2,2,2]、Flowers [1,1,2,3,4]

类型:InterFlow:连续时间概率流 ODE + 速度场回归(simulation-free 训练,无 ODE 反传)

关键组件

为什么这样设计

把生成问题拆成两件可独立操作的事:选插值 I_t 定义密度路径 ρ_t(设计自由度,决定轨迹形状与路径长度),再回归该路径的速度场(一个凸二次最小二乘问题)。相比 MLE flow 训练把路径与目标绑死,这种解耦让训练目标保持稳定、可解释,且路径本身还可以被优化(最优输运)。

数值 sense

dimension2D toy: d=2;表格: 6~63;CIFAR-10: d=3×32×32=3072;ImageNet-32: 3072;Flowers: d=3×128×128=49152
训练表格:10^5 步,LR 0.003(BSDS300 0.002),LR decay 0.8/4k epochs,target batch 800(BSDS300 300)/ base batch 150 / time batch 10–20;图像:CIFAR-10 5×10^5 步 × batch 400(LR 1e-4)、IN-32 6×10^5 × 512(2e-4)、Flowers 1.5×10^5 × 50(2e-4),均单张 A100
samplingDormand–Prince RK45 自适应积分;论文未系统研究少步数采样
time_reweightingt 从 U[0,1] 改按 Beta 分布重加权(表格 α,β=(1.0,0.5)~(1.0,1.0);图像 (1.0,0.75)),命题 1 保证任何正权重 w(t) 下极小点不变
efficiency同架构对比 FFJORD:每 epoch 耗时恒定 vs 增长,MiniBooNE 上约 400× 每 epoch 加速(附录 I)

→ 详见 Architecture tab。

关键结果

指标最强 baselinesetup
表格数据 held-out 负对数似然 NLL(越低越好),5 个 UCI 数据集POWER −0.57 / GAS −12.35 / HEPMASS 14.85 / MINI-BOONE 10.42 / BSDS300 −156.22连续流基线 FFJORD:−0.46 / −8.59 / 14.92 / 10.43 / −157.40——除 BSDS300 外全部持平或更好;GAS 上差 3.76 nats(论文称相比基线最高有 30% 以上的相对提升,对照含 MADE/Real NVP 等离散流);BSDS300 是唯一略逊项,FFJORD 领先约 0.6%基分布 ρ0 = N(0,I_d),4–5 层×512 MLP(BSDS300 5×1024 + ELU),10^5 步、LR 0.003(BSDS300 0.002)、decay 0.8/4k epochs,target batch 800(BSDS300 300)、base batch 150、time batch 10–20,t 按 Beta 分布重加权,测试集 held-out 计算
无条件图像生成 NLL(bits/dim)与 FIDCIFAR-10:NLL 2.99 / FID 10.27;ImageNet-32:NLL 3.48 / FID 8.49CIFAR-10:NLL 与 ScoreSDE 2.99 持平,低于 ScoreFlow 2.81 与 VDM 的变分界 ≤2.65;FID 落后 ScoreSDE 2.92、DDPM++ 2.90(论文自承未用 EMA、截断、warmup 等扩散训练技巧);ImageNet-32:NLL 3.48 优于 ScoreFlow 3.76,FID 8.49 优于 ScoreFlow 10.18、接近 Soft Truncation 8.42DDPM U-Net(lucidrains 实现),单张 NVIDIA A100,无条件训练、无数据增强,t 按 Beta(1.0,0.75) 重加权;CIFAR-10 5×10^5 步 × batch 400(LR 1e-4),IN-32 6×10^5 × 512(LR 2e-4)
128×128 Oxford Flowers:首次 ab-initio ODE flow 上该分辨率能产出 128×128 花朵样本(Figure 3 左),此前 MLE CNF 在该分辨率不可行无同设置定量基线:论文只给出定性样本,无 FID/似然;对比对象是当时 MLE 连续流(FFJORD 等)无法训练的尺度DDPM U-Net(dim mult [1,1,2,3,4]),单张 A100,1.5×10^5 步 × batch 50(LR 2e-4),t 按 Beta(1.0,0.75) 重加权
训练效率:每 epoch 时间 vs FFJORD(同架构)MiniBooNE(43 维)上每 epoch 时间约 400× 加速;InterFlow 每 epoch 耗时恒定,MLE 方法随训练增长FFJORD 极大似然训练(同 3 层 MLP 架构:2D 高斯用 64 宽、MiniBooNE 用 860 宽),每 epoch 成本随 ODE 复杂度上升附录 I 对比,每模型 5 次独立试验取平均(方差画为阴影);2D 高斯与 43 维 MiniBooNE 两个设置
2D toy 密度估计与数据集间插值(定性)8 高斯混合、棋盘、各向异性曲线全部模式被捕获;swirl↔checkerboard 双侧插值在 t=0.25/0.5/0.75 中间时刻样本正确对照为真实密度核密度估计(Figure 2 左);扩散/score 路线一般要求一侧是高斯,无法直接做双侧无解析密度插值3×256 ReLU MLP、10k epochs,80k 样本核密度估计;插值用三角函数实例 (5),采样用 Dormand–Prince RK45

Insights

vs 同类工作

局限

可复现性

stochastic interpolant continuous normalizing flow velocity regression simulation-free training probability flow ODE score-velocity duality optimal transport flow 谱系 ICLR 2023

主干与结构

backbone:2D/表格:MLP(2D 3×256 ReLU;表格 4–5 层 × 512,BSDS300 为 5 层 × 1024 + ELU);图像:DDPM U-Net(基于 lucidrains/denoising-diffusion-pytorch,正弦时间 embedding)

参数:未公布总参数量;图像 U-Net hidden dim 256,dim mult:CIFAR-10 [1,2,2,2,2]、ImageNet-32 [1,2,2,2]、Flowers [1,1,2,3,4]

类型:InterFlow:连续时间概率流 ODE + 速度场回归(simulation-free 训练,无 ODE 反传)

关键组件

  • 随机插值构造:x_t = I_t(x0,x1),x0~ρ0、x1~ρ1 独立;标准实例 I_t = cos(πt/2)·x0 + sin(πt/2)·x1
  • 训练目标 G(ẑ) = E[|ẑ_t(x_t)|² − 2∂_t I_t·ẑ_t(x_t)],逐项蒙特卡洛估计(式 I.1),t 用 Beta 分布重加权
  • 推理:解 ODE dX_t/dt = v̂_t(X_t),Dormand–Prince RK45 自适应步长;似然用瞬时换元
  • 诊断量 G̃(ẑ) = G(ẑ) + E|ẑ|²(式 11),训练中监控是否趋 0(必要非充分)
  • 速度→score 换算(高斯基分布 + 三角插值):∇log ρ_t = −x − (2/π)tan(πt/2)·v_t,t=1 用洛必达
  • 最优输运:对插值参数(或基分布参数)最大化 min G,逼近 Benamou–Brenier 解(Prop 2,附录 D/H)

为什么这样设计

把生成问题拆成两件可独立操作的事:选插值 I_t 定义密度路径 ρ_t(设计自由度,决定轨迹形状与路径长度),再回归该路径的速度场(一个凸二次最小二乘问题)。相比 MLE flow 训练把路径与目标绑死,这种解耦让训练目标保持稳定、可解释,且路径本身还可以被优化(最优输运)。

数值 sense

dimension2D toy: d=2;表格: 6~63;CIFAR-10: d=3×32×32=3072;ImageNet-32: 3072;Flowers: d=3×128×128=49152
训练表格:10^5 步,LR 0.003(BSDS300 0.002),LR decay 0.8/4k epochs,target batch 800(BSDS300 300)/ base batch 150 / time batch 10–20;图像:CIFAR-10 5×10^5 步 × batch 400(LR 1e-4)、IN-32 6×10^5 × 512(2e-4)、Flowers 1.5×10^5 × 50(2e-4),均单张 A100
samplingDormand–Prince RK45 自适应积分;论文未系统研究少步数采样
time_reweightingt 从 U[0,1] 改按 Beta 分布重加权(表格 α,β=(1.0,0.5)~(1.0,1.0);图像 (1.0,0.75)),命题 1 保证任何正权重 w(t) 下极小点不变
efficiency同架构对比 FFJORD:每 epoch 耗时恒定 vs 增长,MiniBooNE 上约 400× 每 epoch 加速(附录 I)
Figure 1 p.2 key

插值密度 ρ_t:从标准高斯到三峰高斯混合的密度路径,白色流线是学到的输运轨迹

插值密度 ρ_t:从标准高斯到三峰高斯混合的密度路径,白色流线是学到的输运轨迹

原文 caption:The density ρ_t(x) produced by the stochastic interpolant based on (5) between a standard Gaussian density and a Gaussian mixture density with three modes. Also shows in white are the flow lines of the map X_t(x) our method produces.

横轴是空间 x,纵轴是时间 t,曲面高度是插值密度 ρ_t(x):t=0 处是标准高斯,t=1 处是三峰高斯混合,中间时刻是连续过渡的密度路径;白色流线是速度场 ODE 的轨迹 X_t(x),把每个基样本平滑输运到目标。读法:密度路径完全由插值函数 I_t 决定,而流线由回归出的速度场决定——这张图同时展示「路径定义」与「速度拟合」两件事。它是全文核心直觉的图形化:生成模型可以看作在密度空间里选一条有限时间路径并学会沿它输运。

Figure 2 p.7 key

2D 密度估计(左)与无解析密度的数据集间插值(右,5 个时刻快照)

2D 密度估计(左)与无解析密度的数据集间插值(右,5 个时刻快照)

原文 caption:Left: 2-D density estimation. Right: Learning a flow map between densities when neither are analytically known.

左列是 2D toy 上「学到的流」与「真实密度」的核密度估计对比(80k 样本,3×256 MLP、10k epochs),用于直观检验生成分布是否贴合目标。右列是 swirl↔checkerboard 数据集间插值:两行分别是 t=0,0.25,0.5,0.75,1 的目标密度(上)与生成样本(下),两侧分布都没有解析形式,只有样本——证明速度场可以在任意两分布之间有限时间连通,且能检查中间时刻的速度是否正确(而扩散/score 方法通常要求一侧是高斯)。这是「一般插值」主张的直接实验证据。

Figure 3 p.9 supportive

无条件图像生成样本:128×128 Oxford Flowers(左)、ImageNet-32(右上两行)、CIFAR-10(右下两行)

无条件图像生成样本:128×128 Oxford Flowers(左)、ImageNet-32(右上两行)、CIFAR-10(右下两行)

原文 caption:Left: InterFlow samples training on 128×128 flowers dataset. Right: Samples from flow trained on ImageNet-32×32 (top) and CIFAR-10 (bottom).

三组生成的样本网格:左侧 128×128 花朵是 ODE flow 首次以 ab-initio(从零、非 MLE)方式上到这个分辨率(单张 A100),此前 MLE CNF 在该分辨率不可行;右上 ImageNet-32、右下 CIFAR-10 样本用于定性评估无条件图像质量。读法:这张图只有定性证据——论文在图像任务上的定量指标(CIFAR-10 NLL 2.99 BPD/FID 10.27,IN-32 3.48/8.49)在表 2 右半,128×128 没有 FID 或似然数字,这是该实验的证据边界。

🎧 音频版

时长 25:20 · Edge TTS

Stochastic Interpolants(对话版·泛读)

开场:这篇论文解决什么问题,为什么值得专门做一期

小播:老播,这期标题叫《随机插值》,后面还跟着一句阅读提示「Flow Map Matching 和 MeanFlow 的数学都从这里长出来」。先给我一个最朴素的问题:这篇论文解决什么问题,值不值得专门做一期?

老播:值得,而且它是整个 flow 谱系里最容易被低估的一篇。一句话背景:2022 年的时候,想训练一个连续时间归一化流——让粒子沿着一条速度场从噪声走到数据——主流做法是极大似然训练,每走一步都要解一遍常微分方程、再反向传播一次,又贵又不稳。这篇论文(Michael Albergo 和 Eric Vanden-Eijnden,纽约大学,ICLR 2023)换了个思路:先选一条连接基分布和目标分布的插值路径,然后证明这条路径上的速度场是一个二次最小二乘问题的解。一句话结论:训练一个生成流,从「模拟 ODE 再反传」降级成「采样做回归」,而且学到的速度还能直接换算成扩散模型要的 score。本期会把这套东西一层层拆开,最后讲清楚 Flow Map Matching 和 MeanFlow 这两个后续方法怎么从这里长出来。

小播:先说明一下,这期面向什么听众?

老播:假定你有机器学习基础——知道分布、梯度、回归、期望这些概念——但可以没做过生成模型。每个术语第一次出现我给定义,所有数字都带设置和对照。今天四步走:背景、核心思想、关键实验、谱系定位和局限。

背景:学一个「流」在 2022 年有多贵

小播:先把「连续时间归一化流」这个词拆开。它到底是什么?

老播:生成模型的通用目标是造一张地图:从一个简单的分布撒点,比如标准高斯噪声,让这些点沿着一条路径移动,最后变成数据分布的形状。连续时间归一化流就是把「移动」写成一条常微分方程:每个点每时每刻按速度场 v_t 走,从 t=0 走到 t=1。这里的 v_t 是一个函数,输入位置和时间,输出速度向量。学流,就是学这个速度场。

小播:那怎么学速度场?2022 年之前主流是什么?

老播:主流是极大似然训练,代表作是 FFJORD,2019 年 Grathwohl 等人的工作。它的做法是:给定一条轨迹,把起点密度经过变换后的对数似然写出来,里面有一个体积变化项,要沿着整条 ODE 积分,训练时还要把梯度沿求解器的计算图反向传播。每一步迭代都是一次完整的 ODE 数值求解加一次反传,成本随模型变大、随训练变复杂。论文附录里有个很说明问题的实测:用完全相同的网络架构,FFJORD 每训练一个 epoch 的耗时随着训练推进往上涨,而本文的方法耗时恒定,在 43 维的 MiniBooNE 数据集上,每 epoch 时间最终差了约 400 倍。

小播:为什么算一次似然这么贵?难点到底在哪?

老播:难点在「体积变化」。沿 ODE 走完一条轨迹后,起点的小邻域会被拉伸或压缩,密度值要除以这个体积伸缩量才能保持质量守恒;连续时间下,对数似然等于起点对数密度减去整条轨迹上速度场散度的积分。散度是速度场每个分量对空间位置的导数之和,要沿轨迹数值积分,训练梯度还要穿过这些积分。每一步迭代都是一次完整的 ODE 求解加反向传播,所以训练成本被绑死在求解器上。

小播:400 倍这个数字很能说明问题。那旁边那条 score-based 扩散路线呢?它也火,为什么这篇文章还要另起炉灶?

老播:扩散模型(ScoreSDE、DDPM)训练稳定,但它学的是 score——对数密度关于数据的梯度——而且路径被一个固定的随机过程锁住。这个随机过程叫 Ornstein-Uhlenbeck 过程,通俗讲就是「加噪声的布朗运动」:从数据加噪到纯噪声,理论上要无限长时间才能彻底连通,路径形状基本定死,想换一条更直的路径,需要重新推导整个训练目标。这篇文章的切口就在这:把「选一条路径」和「学这条路径的速度」拆成两件事——路径由插值函数显式指定,速度用一个稳定的小目标去回归。这个「解耦」是全篇最核心的立场,后面还会反复回到它。

核心思想:先选一条插值路,再学路上的速度

小播:好,进入正题。「随机插值」四个字,先解释一下插值是什么。

老播:插值就是用一个公式把两个端点拼起来。这里选一个时间可微的插值函数 I_t(x0, x1),要求 t=0 时它等于 x0,t=1 时它等于 x1。x0 是从基分布 ρ0 里抽的样本,x1 是从目标数据分布 ρ1 里抽的样本,两者独立。论文用的标准实例是三角函数:I_t = cos(πt/2)·x0 + sin(πt/2)·x1。这个式子要回答的问题:给一对端点样本,怎么生成中间任意时刻的状态?逐符号看:t=0 时 cos 是 1、sin 是 0,I_0 就是 x0;t=1 时反过来,I_1 就是 x1;中间的 t 就是两个端点按角度混合。关键在,任何满足端点条件的插值函数都可以用,三角函数只是默认选项——这就是标题里「一般插值」的意思:路径形状是设计出来的自由度,没有被某个具体算法锁死。

小播:那「随机」加在哪里?

老播:每次训练都独立抽一对 (x0, x1),令 x_t = I_t(x0, x1),于是 x_t 是一个随机变量,它有一个边际密度 ρ_t。因为端点条件,t=0 时 ρ_t 就是 ρ0,t=1 时就是 ρ1,中间时刻就是一条从基分布滑向目标分布的密度路径。密度沿时间演化要守质量守恒,写成连续性方程:∂_t ρ_t + ∇·(v_t ρ_t) = 0。这个式子的意思是,密度在某处的增减,等于速度场把粒子搬进搬出的净流量。

小播:中间密度 ρ_t 怎么算出来?它会不会和端点对不上?

老播:ρ_t 有一个显式的构造式:ρ_t(x) = ∫ δ(x − I_t(x0,x1))·ρ0(x0)ρ1(x1) dx0 dx1。先给预期:这个式子把「中间时刻的密度」写成所有端点样本对的加权平均。逐符号看:δ 是 Dirac delta 函数,只在自变量为零处取无穷、其余位置为零,作用是把「插值位置正好落在 x 的那些样本对」选出来;积分对 x0、x1 的所有取值求和;权重是两个端点的密度值。因为端点条件,t=0 时只有 x0 恰好等于 x,积分退化成 ρ0(x),t=1 时退化成 ρ1(x)——ρ_t 自动满足两端边界,中间密度和端点天然一致。这个构造式同时给出速度场:把被积函数里乘上 ∂_t I_t 再除以 ρ_t,就得到 v_t,也就是前面说的条件期望。

小播:所以现在的问题是:这条路径上的速度场 v_t 怎么求?

老播:这是全篇第一个主定理,论文编号 Proposition 1:v_t 是下面这个二次目标 G 的唯一极小点:G(ẑ) = E[|ẑ|² − 2·∂_t I_t·ẑ]。先给预期:这是一个最小二乘问题,逼候选速度 ẑ 去匹配每对样本的真实移动速度 ∂_t I_t。逐符号看:ẑ 是网络输出的速度;∂_t I_t 是插值函数对时间的偏导,就是这对端点样本在时刻 t 的瞬时速度;E 是对时间、x0、x1 的联合期望,训练时直接采样估计。把目标展开会发现它等价于 ∫(|ẑ|²ρ_t − 2ẑ·j_t)dxdt,j_t 叫概率流,是「粒子流量」的密度。对 ẑ 求极小值,一阶条件给出 ẑ = j_t/ρ_t,正是这条路径上的真实速度 v_t。v_t 还有一层等价写法:v_t(x) = E[∂_t I_t | x_t = x]——给定中间状态,所有端点样本对速度的条件平均。请记住这个条件期望写法,后半段讲 Flow Map Matching 和 MeanFlow 全靠它。

小播:等等,这个式子看起来就是一个回归,训练真的就这么简单?

老播:对,训练全程就是一个最小二乘:采样 t、x0、x1,算 x_t 和 ∂_t I_t,让网络在 x_t 处回归 ∂_t I_t。没有 ODE 积分,没有对求解器反传。时间 t 还可以按 Beta 分布重加权——把采样重心往目标一侧偏——论文证明任何正权重都不改变极小点,这是一个免费的调节旋钮。而且损失的最小值有闭式:G(v) = −E|v_t|²,于是把损失平移一下,定义一个当模型最优时等于 0 的诊断量,训练中直接监控它就能判断收敛,连样本都不用看。这是今天第一件要记住的事:训练目标是一颗简单稳定的二次损失,生成流的训练成本从「模拟 ODE 加反传」降成「回归」。

小播:能不能给一个更具体的例子,让我对这个条件期望有点手感?

老播:拿最简单的线性插值举例:I_t = (1−t)·x0 + t·x1,这也是后来 Flow Matching 论文的默认路径。这时插值对时间的偏导 ∂_t I_t = x1 − x0,是一个常向量,就是从起点指向终点的位移。速度的条件期望变成 v_t(x) = E[x1 − x0 | x_t = x]:在中间状态 x 处,把所有「可能走到 x」的样本对的位移向量做平均。三角插值做的事情一样,只是把位移换成一个随 t 旋转的向量。这个视角在后续工作里反复出现:Flow Matching 把「条件速度匹配」写成回归 x1 − x0,Rectified Flow 的「直线化」也是围绕这条期望表示做重排。看到 E[∂_t I_t | x_t] 这一行,就等于看到整个 flow 匹配家族的核心公式,也是本期后半段 FMM 和 MeanFlow 的接入口。

小播:损失小,能保证生成的样本好吗?

老播:论文给了理论保证,Proposition 3:W2²(ρ1, ρ̂1) ≤ e^{1+2K̂}·H(ẑ)。先解释符号:ρ̂1 是用学到的速度解 ODE 得到的生成分布;W2 是 Wasserstein-2 距离,一种「搬运距离」,度量把一个分布变成另一个分布要搬多少;H(ẑ) 是加权速度误差,衡量学到的速度离真实速度差多远;K̂ 是速度场的 Lipschitz 常数,衡量它变化有多剧烈。这个不等式的意思:回归误差小,生成分布离目标分布就一定有上界。它把「损失小」翻译成「采样质量有保证」,在当时的 flow 训练里不多见。

小播:那「速度/score 分离」怎么理解?score 是扩散模型的概念吧?

老播:是,score 的定义是:概率密度取对数,再对数据 x 求梯度。论文的 Proposition 4 给了一个闭式换算:当基分布取标准高斯、插值取三角函数时,∇log ρ_t(x) = −x − (2/π)·tan(πt/2)·v_t(x)。逐符号看:−x 来自高斯先验的形状;tan 项在 t=1 时发散,所以端点用洛必达法则单独处理。有了这个公式,同一个网络学出的速度 v̂ 直接就能算出每个时刻的 score,从而构造一条采样用的随机微分方程 SDE。这意味着一个模型同时供两条生成路线:确定性 ODE 路线,可以算似然、做隐编码;随机 SDE 路线,就是扩散模型那套。论文的立场是:速度全程良态,而对应 SDE 在端点奇异,所以可以完全绕过 SDE,直接工作在 ODE 层面。这就是「分离」:路径设计、速度拟合、score 换算三件事被拆开,但中间有明确的桥。这是今天第二件要记住的事。

小播:还有一个问题,插值函数如果选得不好,路径绕路怎么办?

老播:论文的 Proposition 2 回答:可以把插值本身也变成可优化的。Benamou–Brenier 最优输运理论说,两个分布之间存在一条路径长度最短的输运,对应的速度是某个势函数的梯度。本文证明:对插值参数做「极大—极小」优化,也就是最大化损失的最小值,插值密度会收敛到那条最优路径。这意味着路径长度可以被优化,采样步数可以更少。不过论文自承这部分只是开了头,实验验证比较单薄,细节放在附录。

小播:好,核心思想这趴我大概接住了。帮我压成三句话?

老播:一条插值定义路径,一个二次损失学速度,一条闭式公式桥接速度与 score。训练不用模拟 ODE,路径还能被优化变短。剩下的事就是拿实验验证这套框架。

关键实验:表格、图像,还有第一次上 128×128

小播:理论讲完了,看实验。先看最简单的 2D toy,它说明了什么?

老播:2D 实验用 3 层、每层 256 个神经元的 ReLU 网络,训练 1 万轮,拿 8 万个样本画核密度图。目标选了三种多峰分布:8 个分离的高斯、棋盘、各向异性曲线。结果全部模式都被捕获,没有拉伸或涂抹。更有意思的是「数据集间插值」:把 swirl 分布插值到 checkerboard,两边都没有解析密度、只有样本。论文检查 t=0.25、0.5、0.75 的中间时刻样本,确认中间速度也是对的——这点值得强调:score 扩散通常要求一侧是标准高斯,而这里两侧可以是任意分布,这是「一般插值」主张的直接证据。

小播:这张图具体怎么读?

老播:Figure 2 分左右两半。左半是 2D 密度估计:两列分别是学到的流和真实密度,各画 8 万个样本的核密度估计,用来做定性对照——模式有没有被捕获、有没有多出假模式。右半是数据集间插值:横向是 5 个时刻 t=0、0.25、0.5、0.75、1,上下两行分别是目标的密度和学到的样本。读法是看每一列上下是否对应:t=0.25 时样本应该已经长出一半棋盘纹理,t=0.5 时黑白格应该基本成形。中间时刻对得上,说明速度场在整条路径上都被学对了,而 score 扩散通常只能间接检查端点。

小播:然后是表格数据,这是它有定量指标的主战场吧?

老播:对。5 个 UCI 数据集,维度从 6 到 63:POWER、GAS、HEPMASS、MINI-BOONE、BSDS300。设置是:基分布取标准高斯 N(0,I_d),网络 4 到 5 层、宽 512,BSDS300 用 1024 宽加 ELU 激活,训练 10 万步、学习率 0.003。指标是测试集上的负对数似然,越低越好。和当时最强的连续流基线 FFJORD 对照:GAS 上从 FFJORD 的 −8.59 做到 −12.35,差 3.76 个 nats,论文称相对基线最高有 30% 以上的提升;POWER 上 −0.57 对 −0.46,HEPMASS 14.85 对 14.92,MINI-BOONE 10.42 对 10.43,全部持平或更好。唯一略逊的是 BSDS300:−156.22 对 FFJORD 的 −157.40,落后约 0.6%。

小播:除了最终数字,训练过程本身有没有可验证的东西?

老播:有。论文把前面说的诊断量——平移后的损失——画在训练曲线上:POWER 数据集上它一路收敛到 0 并保持住。作者强调这是「必要但非充分」的收敛信号,好处是训练中不用频繁抽样去看样本质量。效率对比也值得记:同架构下,本方法每 epoch 耗时恒定,FFJORD 随训练增长,MiniBooNE 上最终约 400 倍差距;收敛速度上本方法用更少的步数就追平 FFJORD 的似然。这套「更便宜且更快」的组合,是 simulation-free 训练相对极大似然的直接卖点。

小播:图像上呢?它要和扩散模型正面比。

老播:图像用 DDPM 的 U-Net 架构,单张 NVIDIA A100,无条件生成、无数据增强。CIFAR-10 上 NLL 2.99 bits/dim、FID 10.27;ImageNet-32 上 NLL 3.48、FID 8.49。对照要看清楚:CIFAR-10 的似然 2.99 和 ScoreSDE 的 2.99 持平,比 ScoreFlow 的 2.81 略高,VDM 的 ≤2.65 是变分界;但 FID 落后明显——ScoreSDE 是 2.92、DDPM++ 是 2.90,这里是 10.27。作者自己解释了原因:没做 EMA、截断、学习率 warmup 这些扩散训练的标配技巧,也没调优。ImageNet-32 上倒是能打:NLL 3.48 优于 ScoreFlow 的 3.76,FID 8.49 优于 ScoreFlow 的 10.18、接近 Soft Truncation 的 8.42。

小播:那 128×128 是怎么回事?FID 落后这么多,它还拿这个当卖点。

老播:128×128 的价值在「第一次」:Oxford Flowers 数据集上,这是第一次有人把从零训练的 ODE flow 做到这个分辨率——所谓从零训练,就是不靠极大似然预训练、不靠特殊初始化,单张 A100、15 万步直接训出来。此前 FFJORD 这类方法在这个尺度上根本训不动。代价是证据单薄:只有定性样本,没有 FID、没有似然数字。所以读这篇论文要分清楚:框架验证是充分的,图像定量指标只能算「竞争性」,128×128 是里程碑式的可行性演示。

小播:Figure 3 上那组花,怎么判断好坏?

老播:Figure 3 是生成样本网格:左边两行是 128×128 的牛津花,右边上两行是 ImageNet-32、下两行是 CIFAR-10。读这种图的标准是看全局结构:花瓣纹理是否连续、背景是否干净、有没有大面积的形状扭曲。论文只展示样本,没有给这个分辨率的定量指标,所以它承担的论证是「这个尺度能训出来」,质量对比留给后续工作。和它并列的对比点是当时 MLE 连续流的实际能力:FFJORD 这类方法在 128×128 上训练不可行。

谱系定位:它和 Flow Matching 是同一批,FMM 和 MeanFlow 从这里长出来

老播:时间线上,这篇是 2022 年秋天三篇并行工作之一。Rectified Flow(Liu 等人)和 Flow Matching(Lipman 等人)共享同一个核心:在两分布之间定义插值过程、回归速度。三家的分工大致是:Rectified Flow 强调把路径「拉直」的重排流程,Flow Matching 把条件速度匹配和边际目标等价性论证做透、大规模刷了图像,本文的侧重点在一般性——任意插值、速度与 score 的闭式桥、用插值优化逼近最优输运。三者互相引用,共同构成后面 flow-based 生成模型的理论地基。至于 Flow Map Matching(Neklyudov 等人,2024)和 MeanFlow(Bernstein 等人),关键就在前面那个条件期望写法:v_t(x) = E[∂_t I_t | x_t = x]。FMM 在论文里明确写,它基于随机插值框架提出两时间 flow map 的训练损失和从预训练速度场蒸馏的损失,把「单步速度」推广成「任意时间跨度 s 到 t 的映射」;MeanFlow 把「平均速度」定义为 flow map 的条件期望,用一条恒等式连接平均速度和瞬时速度。两个方法的数学起点都是随机插值里的 x_t = I_t(x0, x1) 和速度的条件期望表示。「从这里长出来」是一句准确的技术陈述。

局限:FID 落后、解析密度依赖、最优输运只开了头

小播:最后说局限。论文自己承认了哪些?

老播:至少三条是论文自认的。第一,图像 FID 明显落后最佳扩散:CIFAR-10 上 10.27 对 ScoreSDE 的 2.92,作者归因于没用 EMA、截断、warmup 这些技巧也没调优,「和扩散打平」的说法要按此打折。第二,训练依赖基分布 ρ0 有解析密度,实验一律取标准高斯;换成一般插值,ρ_t 没有解析形式,还要处理 ρ0 加权因子,论文只留了 future work。第三,最优输运部分需要较强的数学假设——论文叫 interpolable 密度,缩短路径的实验只在附录里用棋盘 toy 做了简要演示,属于提出路线、验证单薄。

小播:还有没有我们读出来的?

老播:还有两条。速度到 score 的端点换算不顺手:t=1 处要洛必达法则和速度的时间导数,关联的 SDE 在 t=0 和 t=1 奇异,想双向使用要额外处理。另外提醒一个文献坑:清单里这篇登记的名字是《Stochastic Interpolants: A Unifying Framework for Flows and Diffusions》,但 PDF 正文标题是《Building Normalizing Flows with Stochastic Interpolants》,同一篇论文两个标题;「统一框架」更系统的表述其实在作者后续的同名论文里(2023 年,arXiv 2303.08797),读后续工作前先核对版本。

小播:采样效率上呢?它有没有像后来那些方法一样研究少步数采样?

老播:没有。论文的采样统一用自适应步长的 Dormand–Prince 求解器,对少步数采样没有系统研究——你在后续 Flow Matching 和整流那批工作里看到的「固定几步也能出图」,这篇没有对应实验。加上 128×128 只有定性样本,「少步采样」和「高分辨率定量质量」这两块证据都是缺口,要靠后续工作补上。

收尾:今天记住三件事

小播:好,收尾。老播,用三句话总结,今天最该带走什么?

老播:第一,随机插值用一根两端固定的插值函数定义密度路径,路径上的速度场是一个二次最小二乘的解——训练生成流从此不用模拟 ODE、不用反向传播,这是全篇最大的方法论贡献。第二,速度与 score 可以闭式互转,同一个网络同时供确定性 ODE 和随机 SDE 两条路线,论文主张 ODE 侧更简单。第三,速度的条件期望表示 v_t = E[∂_t I_t | x_t] 是 Flow Map Matching 和 MeanFlow 的数学源头,这套谱系从这篇开始。这三个结论开场预告过、中间展开过,现在收尾再压一遍。

小播:那它对后续工作的意义,用一句话说?

老播:它把「生成」还原成「选一条密度路径,再回归路径上的速度」两件事,并且证明这两件事可以分开做——后面整流、Flow Matching、flow map 蒸馏、平均速度这些方向,全都在这套解耦的地基上盖楼。今天这期就到这里,下期见。