技术专论 · 连续生成模型 · 2026 年 9 月 21 日
摘要
流匹配可以通过在噪声与数据之间进行直线插值来构造训练样本。但这种简单性并不意味着生成器沿直线运动,也不意味着一次数值积分就能得到目标分布。本文分析从条件速度到其条件均值的转换,并推导一个完全可解的高斯案例。精确向量场可以把 N(0,1) 变为 N(3,4),但一次欧拉更新却会把所有样本压缩到点 3。我们在明确的向量场计算预算下比较欧拉法与 Heun 法,并区分学习误差、概率路径和数值积分。这给出了一个可验证的例子:即使生成器拥有正确的向量场,也可能产生错误的分布。
前置知识与贡献。阅读需要导数、条件概率和高斯分布的基本知识。本文是附有实际计算的教学推导,不是新的生成方法,也不是图像基准测试的复现。我们不训练神经网络,而是使用已知的精确向量场,仅研究概率运输与数值采样。
1. 学习的是什么,积分的又是什么?
连续生成模型从一个简单随机变量 X₀ 出发,例如高斯噪声,将其变换为分布接近数据的随机变量。时间 t 属于 [0,1],并不代表图像场景中的物理时间。向量场 v(t,x) 为每个位置 x 指定速度。生成样本是满足 dX/dt = v(t,X) 的轨迹的终点。
这段描述已经包含两个不同对象:每个时刻的样本分布,以及每个样本的运动轨迹。不同向量场可以运输同一种分布。指定概率质量应当到达哪里,并不能唯一决定所有轨迹。在多维空间中,某些运动可以改变轨迹而不改变特定密度。
流匹配的基础论文将学习表述为速度场回归,并构造了可计算的条件目标。本文重点研究原方法明确区分的条件场与边缘场。我们选择一个标量案例,使每个步骤都能完整算出。[1,第 3—4 节]
需要避免一种术语误解:“无需模拟的训练”是指构造训练样本时不必积分模型的常微分方程,并不意味着生成过程无需积分。要得到新样本,仍然必须精确或近似地求解一个动力系统。
2. 从样本对到速度回归
从初始分布选取 X₀,从目标分布选取 X₁,暂时让它们彼此独立。定义插值及其导数:
L(θ) = E[‖vθ(t,Xt)−U‖²]. (1)
时间均匀采样。因为知道样本对的两个端点,所以目标 U 可以直接计算。但网络只接收 t 和 Xt,看不到隐藏的端点。不同样本对可能在同一中间位置对应不同速度。因此,即使模型容量无限,也未必能精确重建每个样本的速度。
平方损失的最优解是条件均值。固定时间和位置,写成 U = E[U|Xt] + R,其中残差 R 的条件均值为零。展开平方后交叉项消失,得到:
E[‖v−U‖²] = E[‖v−v*‖²] + E[‖U−v*‖²]. (2)
第二项与网络参数无关。因此,训练损失为正也可以对应完美的边缘场。如果在比较不同概率路径的损失绝对值时忽略这一不可约分量,就可能错误判断模型质量。
为什么条件均值能运输正确的分布?取一个光滑测试函数 f。根据链式法则,dE[f(Xt)]/dt = E[∇f(Xt)·U]。对 Xt 取条件期望后,可以用 v* 替换 U。这就是边缘场对应连续性方程的弱形式。该论证需要足够的正则性与可积性,以交换求导和期望;仅有回归公式并不足以忽略这些假设。
3. 一个完全可解的高斯案例
考虑相互独立的 X₀ ∼ N(0,1) 与 X₁ ∼ N(μ,σ²)。插值仍为高斯分布,其均值是 m(t) = tμ,方差是 D(t) = (1−t)² + t²σ²。速度 U 满足 E[U] = μ,且 Cov(U,Xt) = tσ²−(1−t)。
联合高斯变量的条件均值是仿射函数。代入刚刚计算的量可得:
v*(t,x) = μ + [c(t)/D(t)](x−tμ). (3)
当 σ > 0 时,分母在整个区间内保持正值。这个案例的边缘场在端点处没有奇异性。它对 x 的依赖是线性的,但系数随时间变化。“对状态线性”与“轨迹随时间呈直线”是不同的性质。
以 z 为初值的常微分方程具有显式解:
φ(0,z)=z, φ(1,z)=μ+σz. (4)
验证时注意 D′(t)=2c(t)。对解求导得到 μ + c(t)z/√D(t)。把 x=φ(t,z) 代入式(3),结果完全相同。如果 z 服从标准正态分布,那么该解的均值恰好为 tμ,方差为 D(t)。这同时验证了动力学与分布,而不依赖点云图像看起来是否正确。
本文计算取 μ=3、σ=2。方差起初下降:D(t)=1−2t+5t² 在 t=0.2 达到最小值 0.8,随后上升至 4。流先收缩再扩张。对于非零 z,√D(t) 使轨迹随时间不再是仿射函数,尽管构造训练目标时使用的是条件直线插值。
4. 样本对的直线并不是生成器的轨迹
直线 (1−t)x₀+tx₁ 保留了某个初始样本对的身份。边缘场则汇总了与当前位置相容的速度。一般来说,它的轨迹不会保留原始 x₀ 与 x₁ 的配对关系。在本例中,常微分方程总是终止于 μ+σx₀,而训练样本对中的 x₁ 与 x₀ 是独立的。
这并不矛盾:两种构造具有相同的中间边缘分布,却具有不同的端点依赖关系。生成器需要产生最终分布,并不必须重现构造目标时所用的随机耦合。把分布和耦合混为一谈,会让一个直接的条件期望运算显得难以理解。
还可以改变耦合方式。若取 X₁=μ+σX₀,而不是独立采样,插值就变成 Xt=tμ+[1+t(σ−1)]X₀。此时每条轨迹都是直线,中间方差为 [1+t(σ−1)]²,给定 Xt 后条件速度没有歧义。端点分布没有改变,改变的是连接它们的道路。
这个比较说明了配对方式的作用。实际中,我们通常不知道噪声与复杂数据之间的精确运输映射。高斯情形的简便性不能直接推广到图像,但足以证明:目标分布本身并不能决定回归或采样的难度。
5. 完美向量场也可能具有正损失
在独立耦合下,速度的条件方差不随位置变化,但随时间变化。高斯条件分布公式给出:
当 σ=2 时,这个量在起点为 4,在 D 的最小值处为 5,在终点为 1。它们不是网络误差,而是独立耦合产生的目标歧义。展开 (1+σ²)D−c² 后恰好得到 σ²,从而验证最后一个等式。对照条件方差为零的确定性耦合,就能看出为什么损失不是脱离上下文也能比较的通用指标。
网络仍然能够从带噪目标中学到有用的均值。式(2)解释了原因:最小化条件损失会减小相对于边缘场的偏差,即使仍有不可消除的分量。这是统计回归现象,不要求每一个训练样本都能被精确重建。
6. 已执行的实验:一步就可能破坏分布
我们使用均匀步长,以显式欧拉法和 Heun 法积分精确场(3)。欧拉法每步计算一次向量场,Heun 法计算两次。令 h=1/n,两种更新规则分别为:
Heun: k₁=v(tj,xj), k₂=v(tj+h,xj+hk₁)
xj+1 = xj + h(k₁+k₂)/2. (6)
当 n=1 时,欧拉法计算 v(0,z)=3−z,因此对任意 z,输出都是 z+(3−z)=3。噪声完全消失,结果是点质量分布,尽管目标为 N(3,4)。均值正确,但方差为零。如果只检查均值,就会把一个完全错误的采样器判为成功。
由于向量场与积分器都对状态保持仿射结构,数值输出仍是 z 的仿射变换。只需对 z=0 和 z=1 积分,就能精确确定其均值与标准差,无需蒙特卡洛采样。我们测量一维高斯分布之间的二阶 Wasserstein 距离:W₂²=(m−3)²+(s−2)²,其中 m 和 s 是数值输出的均值与标准差。该公式也包含退化情形 s=0。
| 方法 | 步数 | 计算次数 NFE | 标准差 | W₂ |
|---|---|---|---|---|
| Euler | 1 | 1 | 0.000000 | 2.000000 |
| Euler | 4 | 4 | 1.362162 | 0.637838 |
| Heun | 2 | 4 | 1.530000 | 0.470000 |
| Euler | 16 | 16 | 1.822732 | 0.177268 |
| Heun | 8 | 16 | 1.980850 | 0.019150 |
| Euler | 64 | 64 | 1.954221 | 0.045779 |
| Heun | 32 | 64 | 1.999010 | 0.000990 |

计算使用 Python 3.14.0,仅依赖标准库。由于运算是确定性的,不需要随机种子。对精确解的导数进行有限差分检查,最大偏差约为 6.07×10⁻¹⁰。完整结果还包括其他中间步数,并与代码一同提供。
在 16 次向量场计算的预算下,Heun 法误差约为 0.01915,欧拉法约为 0.17727。这是本光滑问题的结果,并不保证 Heun 法在所有神经生成器中都更高效。这里计算向量场的成本很小;真实模型还涉及批次大小、精度、架构、内存与每次求值成本。NFE 是有用的结构性指标,但不是计时器。
7. 选择生成器前,先区分三类误差
第一类是统计误差:有限数据和模型容量可能妨碍学习 v*。第二类与目标和概率路径有关:构造所定义的最终分布可能是数据的正则化版本,或者耦合方式使向量场难以学习。第三类是数值误差:即使向量场完美,过于粗糙的求解器仍会产生错误样本。本实验消除了第一类误差,并单独研究第三类。
更低的损失本身并不能说明哪类误差减小了。增加步数不能系统地修复错误向量场,只会更准确地积分错误动力学。反过来,如果采样器主导最终误差,更好的网络也可能无法体现优势。因此,应分别改变模型、路径与积分方式。
有信息量的实验先固定向量场研究数值收敛,再固定一个足够准确的求解器比较学习到的场。对于图像,分布和质量并不能简化为均值与方差;本文的解析 W₂ 不能替代适合实际领域的指标和评估。这个例子的教学优势恰恰在于拥有精确真值,可以逐步核验。
2025 年的 MIT 讲义讨论了概率路径、边缘场与学习之间的关系,可作为扩展本分析的参考。本文不比较最新生成架构,也不宣布谁代表最先进水平,而是研究理解这些模型所需的一个基本机制。[2,第 2—4 节]
8. 复现材料与结论
附带程序实现 D(t)、向量场、精确解和两种积分器。运行命令为 python experiment.py --out results.json。绘图脚本需要 Matplotlib;压缩包包含说明与版本信息。不需要模型权重、数据集或外部服务。
def variance(t):
return (1-t)**2 + 4*t*t
def velocity(t, x):
return 3 + (-1+5*t)/variance(t) * (x-3*t)
def exact(t, z):
return 3*t + math.sqrt(variance(t))*z
结论很明确:让条件样本沿直线运动,并不足以让边缘流也沿直线运动。模型学习的是条件均值,生成器积分的是这个场。中间分布、样本对耦合、回归歧义和数值精度是不同层面。在本例中,向量场精确、最终均值正确,但一步更新仍会破坏全部目标变异性。严谨理解生成模型,依赖的是对这些假设的检查,而不是插值表面上的简单性。
参考文献
- Lipman, Y., Chen, R. T. Q., Ben-Hamu, H., Nickel, M., Le, M. Flow Matching for Generative Modeling。arXiv:2210.02747v2,2023 年。方法:第 3—4 节;实验协议:第 6 节。
- Holderrieth, P., Erives, E. An Introduction to Flow Matching and Diffusion Models。MIT 6.S184 讲义,arXiv:2506.02070v1,2025 年。路径、向量场与回归:第 2—4 节。
本文在 AI 辅助下完成。实验为合成教学案例,并非 EL-AI 企业研究成果。封面为 AI 生成的示意图;科学图表来自随文计算。

