Diff2Flow中扩散和流匹配的对齐探索

Diff2Flow通过数学上的对齐转换,能直接将已训练好的扩散模型转化为流匹配模型。

Diff2Flow兼顾扩散模型的高质量生成与流匹配模型的快速推理优势。

这里尝试梳理Diff2Flow的将扩散模型转化为流匹配模型的对齐过程。

这是将扩散模型转化为流匹配模型的第一步。

1 扩散模型

扩散模型定义了一个离散的前向加噪过程(),形式化如下。

其中是预定义的噪声调度,满足方差保持(VP)条件:

基于该符号体系,加噪样本即插值可写为:

模型通过训练网络来预测噪声,损失函数为:

另一种v-parameterization-预测参数化定义为:

v-parameterization参考链接如下所示

​​​​​​https://arxiv.org/abs/2202.00512

2 流匹配模型

流匹配定义在连续时间上,采用线性插值路径:

模型训练网络来预测速度场,其目标是与真实路径方向一致:

流匹配模型采样时通过解常微分方程ODE实现,具体可采用MidPoint欧拉法等。

2 Diff2Flow对齐

这里探索如何将扩散模型和流匹配模型对齐。

2.1 时间步缩放

扩散模型采用离散的时间步,t={1, 2, ..., T},而流匹配使用连续时间步

所以对齐扩散模型和流匹配模型,首先需要重新缩放时间步,建立映射s = g(t)。

具体可以采用

线性映射

或等价地

这使得流匹配模型的连续时间步与扩散模型的离散步建立起初步的对应。

在降连续时间步映射到离散时间步,需要采用线性插值等策略,后文会进一步探索。

2.2 关键值对齐

这里假设为真实样本值,为随机噪声,

对于扩散模型,从的扩展过程中,在于时间步t,x的值可以表示为

对于流匹配模型,在从转化到的过程中,在时间t,在[0, 1]空间对应值为s,则此时x位置可以表示为。

为使两者在概率分布上对齐,需要建立如下对应关系。

1)对应扩散噪声即(标准高斯)

2)对应干净数据

因此,对于扩散模型,

可以将时刻t对应的扩散模型时间步tDM扩散后x的值改写为

依据扩散模型方差调度规则,显然有

对于流匹配模型,

可以将时刻t对应的时间tF,x插值后的位置表示如下

2.3 可逆映射

如何将扩散模型的值映射到流匹配模型的连续时间步,并确保映射过程可逆。

1)正变换

首先设计移动轨迹中,在t时刻时的位置x_DM的转化函数。

这个转化函数从形式上看相当于x_tdm的缩放版本。

它将扩散模型空间的值x_tdm映射到流匹配模型空间,并且整个转化过程可逆。

转化后由于相当于流匹配空间的值,对应系统满足和为1的约束。

因此,对于时间步t,也可以建立如下的可逆映射关系。

2)函数逆变换

由于扩散时间步是离散的,所以在做逆变换时,需要考虑插值方法。

比如,FM空间,在扩散空间中,逆变换后语气最近的分别为tDM1和tDM2。

所以,对于FM空间,在DM空间需要采用插值的方法确定。

此时,f_t是可逆。

对于流匹配的位置值x_FM,在扩散过程中对应值计算如下

3)参数求逆

进一步,采用类似的插值思路计算

1)可以先找到tDM1和tDM2对应的alpha和simga,

2)采用二分插值的方法

过程与根据FM空间计算DM空间的过程类似。

在逆算过程中,除了x在扩散过程中值的确定外,包括最近线性插值,还包括扩散过程中alpha和simga参数的确定,这两个参数是扩散方差调度的核心参数,与时间步密切相关。

reference


Flow Matching的训练和推理过程探索

https://blog.csdn.net/liliang199/article/details/156769922

Diff2Flow: Training Flow Matching Models via Diffusion Model Alignment

https://arxiv.org/abs/2506.02221

Progressive distillation for fast sampling of diffusion models

https://arxiv.org/abs/2202.00512

相关推荐
星浩AI17 小时前
Skill 的核心要素与渐进式加载架构——如何设计一个生产可用的 Skill?
人工智能·agent
树獭非懒18 小时前
告别繁琐多端开发:DivKit 带你玩转 Server-Driven UI!
android·前端·人工智能
阿尔的代码屋18 小时前
[大模型实战 07] 基于 LlamaIndex ReAct 框架手搓全自动博客监控 Agent
人工智能·python
小小小怪兽18 小时前
🔨聊一聊Skills
人工智能·agent
穿过生命散发芬芳18 小时前
OpenClaw:开启OpenCloudOS 操作系统智能运维初体验
人工智能·aigc
老金带你玩AI18 小时前
Claude Code自动记忆来了!配合老金三层记忆系统全开源!加强Plus!
人工智能
Halo咯咯18 小时前
无限免费 OpenClaw:接入本地模型后,你的 AI Agent 就可以 24 小时自动干活(Mac Mini 可用)
人工智能
NAGNIP1 天前
一文搞懂深度学习中的通用逼近定理!
人工智能·算法·面试
冬奇Lab1 天前
一天一个开源项目(第36篇):EverMemOS - 跨 LLM 与平台的长时记忆 OS,让 Agent 会记忆更会推理
人工智能·开源·资讯
冬奇Lab1 天前
OpenClaw 源码深度解析(一):Gateway——为什么需要一个"中枢"
人工智能·开源·源码阅读