642 字
3 分钟
Flow Matching 与语言生成
定义
Flow Matching 语言生成是一类将 Flow Matching(连续时间流匹配)框架应用于语言建模的方法。与在离散 token 空间做扩散(如 MDLM、Duo)不同,这类方法在连续嵌入空间构建从噪声到数据的流路径,仅在最后一步将连续表示映射回离散 token。
为什么重要
- 历史背景:扩散模型在图像/视频等连续域取得巨大成功(Stable Diffusion、Flow Matching),但迁移到语言时,离散方法(MDLM、Duo)一直领先连续方法(Diffusion-LM、CDCD)
- 核心问题:连续 DLM 性能差,是因为语言本质离散,还是设计不够好?ELF 的实验表明,改进设计可以显著缩小差距
- 技术瓶颈:之前连续方法每步都做离散化(rounding loss、simplex 约束、token-level CE),约束了连续轨迹,限制了流路径的灵活性
核心机制
Flow Matching 基础
Flow Matching 定义连续时间流路径:z_t = t·x + (1-t)·ε,其中 t∈[0,1],学习 velocity field v = dz/dt = x - ε。
ELF 的关键创新
- 仅最后一步离散化:去噪全程在嵌入空间,t=1 时才用 unembedding 映射到 token
- x-prediction:直接预测干净嵌入而非 velocity,使去噪和解码可共享权重
- CFG 天然可用:连续空间可直接应用 classifier-free guidance,离散 DLM 很难做到
与 Latent Diffusion 的区别
| 方面 | Latent Diffusion (LDM) | ELF |
|---|---|---|
| 空间 | 低维压缩潜空间 | 高维嵌入空间(768d) |
| Decoder | 单独训练的 decoder | 共享权重,无额外推理开销 |
| 训练 | 两阶段(VAE + Diffusion) | 端到端单阶段 |
方法谱系
| 方法 | 去噪空间 | 离散化方式 | Decoder | CFG 支持 |
|---|---|---|---|---|
| Diffusion-LM (2022) | 嵌入空间 | 每步 rounding | 不需要 | ❌ |
| CDCD (2023) | 嵌入空间 | 每步 CE loss | 不需要 | ❌ |
| LD4LG (2023) | 压缩潜空间 | VAE decoder | 单独训练 | ❌ |
| SSD-LM (2023) | Simplex | Simplex 约束 | 需要 | ❌ |
| TESS (2024) | Simplex | Simplex 约束 | 需要 | ❌ |
| MDLM (2024) | 离散 token | 吸收态掩码 | 不需要 | ❌ |
| Duo (2024) | 离散 token | 均匀分布 | 不需要 | ❌ |
| FLM/FMLM (2025) | Simplex/one-hot | 每步 CE + distill | 需要 | 弱 |
| LangFlow (2025) | 嵌入空间 | 每步 CE loss | 需要 | 弱 |
| ELF (2026) | 嵌入空间 | 仅 t=1 | 共享权重 | ✅ |
潜在应用
- 并行生成:扩散模型天然支持并行 token 生成,可能比 AR 模型更快
- 可控生成:CFG 提供质量-多样性权衡,可调性更强
- 多模态统一:与图像/视频扩散模型共享框架,便于多模态建模
- 少步蒸馏:ELF 不需要蒸馏就在 32 步超越蒸馏后的离散方法
相关阅读
Flow Matching 与语言生成
https://blog.lpkt.cn/posts/concepts/flow-matching-language-generation/