什么是流匹配(Flow Matching)?一种免模拟训练连续归一化流的方法
流匹配(Flow Matching)是 2022 年 arXiv 论文《Flow Matching for Generative Modeling》提出的一种生成建模方法,用于训练连续归一化流(Continuous Normalizing Flows, CNFs)。它通过回归固定条件概率路径的向量场来训练模型,不需要在训练过程中做数值模拟,因而可以在更大规模上训练 CNF。
流匹配(Flow Matching, FM)是一种用于生成建模的方法,建立在连续归一化流(Continuous Normalizing Flows, CNFs)之上。按照提出它的论文《Flow Matching for Generative Modeling》的描述,流匹配是一种「免模拟」(simulation-free)的训练方式:它通过回归固定条件概率路径的向量场来训练 CNF,而不需要在训练过程中对常微分方程做数值求解。它要解决的问题是,此前训练 CNF 通常依赖昂贵的模拟过程,规模难以做大;流匹配给出了一条绕开模拟的训练路径,使 CNF 的训练可以在前所未有的规模上进行。
为什么重要
要理解流匹配的意义,需要先看它出现之前的路是怎么走的。
连续归一化流是一类生成模型:它把简单的噪声分布,沿着一个由神经网络参数化的向量场,连续地变换成数据分布。这个变换由常微分方程(ODE)定义,从噪声出发积分到终点,就得到一个样本。CNF 的吸引力在于它是连续时间的、可逆的,理论上可以精确计算似然。
但它的训练代价很高。要评估一个样本的似然,或者要计算训练所需的目标,通常必须对 ODE 做数值积分,也就是「模拟」整条轨迹。这个模拟过程既慢又需要保存中间状态,训练成本随规模迅速上升。正因为如此,在流匹配提出之前,CNF 很难在大规模数据上训练,实际使用中往往被扩散模型(diffusion models)等方法取代。
论文指出,流匹配的价值在于它把训练从模拟中解放出来。它不要求先跑一遍 ODE 再算损失,而是直接构造一个可以回归的目标:给定条件概率路径,让模型去拟合对应的向量场。这样一来,训练就变成了一个普通的回归问题,可以在大规模数据上展开。
论文还给出了一个值得注意的观察:流匹配与一大类高斯概率路径兼容,而这类路径把已有的扩散路径作为特例包含在内。也就是说,用流匹配配合扩散路径来训练,可以看成是训练扩散模型的一种替代方案;论文称这种做法在训练上更稳健、更稳定。同时,流匹配也打开了使用非扩散概率路径的大门,这是此前的方法不容易做到的。
工作机制
流匹配的核心做法可以拆成几个要点。
第一,以连续归一化流为底座。模型学习的对象是一个随时间变化的向量场,它定义了一条从噪声分布到数据分布的概率路径。样本的生成过程,就是从这个向量场出发求解 ODE。
第二,构造固定的条件概率路径。流匹配不直接去拟合难以处理的无条件概率路径,而是先指定一族条件概率路径。这些路径是「固定」的,也就是说它们由设计者选定,而不是由模型学出来。论文强调,流匹配与一大类高斯概率路径兼容,可以在噪声样本与数据样本之间做变换。
第三,回归向量场,而不是模拟轨迹。训练目标是让模型的向量场去逼近这些条件路径对应的向量场。因为条件路径是已知且固定的,对应的目标向量场可以直接写出来,训练就退化为一个回归问题。这就是「免模拟」的含义:训练时不需要对 ODE 做数值积分。
第四,路径的选择决定了性能。论文特别提到一类有意思的选择:用最优传输(Optimal Transport, OT)位移插值来定义条件概率路径。论文称,这类路径比扩散路径更高效,训练和采样都更快,并且泛化更好。这说明在流匹配框架下,概率路径的设计是一个可以调节的维度,而不像扩散模型那样被路径形式绑住。
第五,采样用现成的数值 ODE 求解器。训练完成后,生成样本只需要用通用的数值 ODE 求解器对学到的向量场做积分。论文称,在 ImageNet 上使用流匹配训练 CNF,在似然和样本质量两方面都持续优于基于扩散的替代方法,并且可以用现成的数值 ODE 求解器实现快速、可靠的样本生成。
典型例子
论文中给出的具体用法与结果包括以下几项。
- 用扩散路径训练扩散模型。论文发现,把流匹配用在扩散路径上,会得到一种训练扩散模型的更稳健、更稳定的替代方案。这是流匹配与既有方法直接对接的一个例子。
- 用最优传输位移插值定义条件路径。论文把这一选择列为特别值得关注的实例,并称这些路径比扩散路径更高效,训练和采样更快,泛化更好。
- 在 ImageNet 上训练 CNF。论文报告称,用流匹配在 ImageNet 上训练 CNF,在似然和样本质量两项指标上都持续优于基于扩散的替代方法,并支持用现成的数值 ODE 求解器做快速、可靠的样本生成。
需要说明的是,以上效果均出自该论文自身的报告,属于论文作者的主张,而非独立复现的结论。
边界与常见误解
第一,流匹配不是一种新的模型架构,而是一种训练范式。它训练的对象仍然是连续归一化流,改变的是训练目标怎么构造、要不要模拟。把它理解成「另一种网络结构」是常见的偏差。
第二,「免模拟」说的是训练阶段,不是采样阶段。流匹配在训练时不需要对 ODE 做数值积分,但生成样本时仍然要用数值 ODE 求解器去积分学到的向量场。论文在描述采样时明确提到了使用现成的数值 ODE 求解器。
第三,流匹配与扩散模型不是互斥关系。论文明确指出,流匹配兼容的高斯概率路径族把已有的扩散路径作为特例包含在内。因此「流匹配取代扩散」这种说法并不准确;更贴近论文表述的说法是,流匹配为训练扩散模型提供了一种替代路径,同时允许使用扩散之外的路径。
第四,路径的选择会带来取舍。论文称最优传输路径比扩散路径更高效、训练和采样更快、泛化更好,但这是论文在其设定下报告的结果,不能推广成「任何任务上最优传输路径都更好」。
第五,论文报告的性能数字有具体条件。ImageNet 上的比较、似然与样本质量的结论,都来自该论文的实验设置,涉及具体的数据集、评价指标与求解器选择。脱离这些条件引用结论,容易失真。
第六,流匹配并不能消除 ODE 求解本身的代价。采样阶段仍然需要数值积分,步数与求解器的选择会影响生成速度与质量;论文所说的「快速」是相对于其所比较的方法而言。