BIT 从文本直接插值到图像,一张扩散桥同时覆盖图生文

There and Back Again: Bidirectional Diffusion Bridges for Multimodality Translation

Gabe Guo, Elon Litman, Thanawat Sornwanee, Jose Blanchet, Stefano Ermon

cs.LG

2026-08-28

Stanford 的 BIT 用扩散桥从文本嵌入直接插值到图像,反向同一条路径就能出 caption。十亿参数在 GPIC 上 FID 2.54;对照里噪声扩散略好,确定性 flow 的 FID 崩到 279。

这篇在解决什么

主流文生图走噪声到数据:图像从高斯噪声起步,文本只作为 sidecar 条件(多数是 cross-attention)喂进 drift 网络。中间状态跟 prompt 没有 mutual information,轨迹走完也抽不出 caption。图生文只能另训一个自回归 VLM。

SDEdit 这类沿轨迹编辑的算法也吃这个亏。往噪声端走得越远,参考图的信息丢得越狠;没有原始条件时,很难生成语义相关的变体。

BIT 要的是四件事:建模模态之间的联合分布(一个 prompt 对应很多图,确定性映射不够),中间轨迹本身带着源模态信息,任意时刻可反转,文生图和图生文共用一套框架。

方法

BIT 全称 Bidirectional Image-Text Diffusion Bridges,来自 Stanford。它不从噪声起步,直接在文本表示和图像表示之间搭一条随机桥。

底层是一条与数据无关的 scaled Brownian motion。再用 Girsanov 定理和 Doob 的 h-transform 把路径钉到真实图文对上。前向 SDE 从文本走到图像,反向 SDE 是同一条过程的时间反转,从图像走到文本。两端 drift 都用神经网络估,训练目标是加权 L2,去拟合 base process 上闭式可算的 score。端点由路径的连续延拓给出,真正拿来模拟的是时间 1 之前的有限时域 SDE。

文本是离散的,SDE 要连续状态。每个 token 被独立送进 Qwen3-Embedding-8B,做成一张固定查找表,不用上下文 hidden state。如果 token 之间互相 attend,同一个词会对应无数种连续向量,解码会乱。Matryoshka 把每个 token 截到 64 维。caption 截断或 padding 到 64 个 token,总维度 64×64=4096,正好对齐 Stable Diffusion VAE 在 256×256 上的 latent(4×32×32=4096)。反向用一个小 MLP 把 embedding 解回 token,交叉熵训练,噪声条件下准确率仍高于 99%。

采样时可以把端点条件 drift 和无条件 drift 做 CFG 式外推。论文写明这是经验启发式,并不对应一个解析上的引导分布。

Theorem 3 证明:在源端点附近,data-to-data 桥对目标的 mutual information 高于无条件的噪声到数据桥。这个比较只对「状态本身要记住源信息」的设定成立。标准条件文生图全程把 prompt 当 side information 拿着,定理不给排序。

确定性 flow matching 作为对照。ODE 没有噪声,表达不了「一个 prompt 对应多张图」这种多峰条件分布。FlowTok、CrossFlow 靠变分编码器额外注入噪声才绕开这个问题;BIT 的随机性直接来自桥 SDE。

结果

主对照用 GPIC 约 1 亿图文对,图像走 SD VAE latent,文本走 Qwen embedding。对照实验固定 SDE 波动率日程,架构尽量对齐。表 1 是 ω=0、500 步、T2I 5 万样本、I2T 1 万样本:

方法FID↓CLIP T2I↑Gen PPL↓CLIP I2T↑
BIT6.2327.10123.426.99
噪声扩散(去掉数据端点)5.7327.13178.226.42
Flow(去掉随机性)279.1320.13169.227.25

文生图上 BIT 和噪声扩散几乎贴着,噪声扩散在 FID 和 CLIP 上有一点点优势,论文称 95% 置信水平显著。图生文上 BIT 的生成 perplexity 明显更好(123.4 vs 178.2)。确定性 flow 的 FID 是 279.13,CLIP T2I 掉到 20.13,印证多峰条件分布不该用光秃 ODE 去建。flow 的 I2T CLIP 反而是三家里最高的 27.25,论文解释 GPIC 上的 caption 任务条件熵可能本来就低,但它的 perplexity 最差,句法没学稳。

十亿参数的 DiT-XL/2(1,054,621,840 参数,122,500 步,batch 1792,双向共用一张网)加上 CFG 之后:

方法FID↓CLIP T2I↑Gen PPL↓CLIP I2T↑
BIT ω=0.04.3927.7578.129.4
BIT ω=0.52.5428.8061.129.5
Qwen-3-VL-4B-Instructn/an/a37.731.9
Stable Diffusion 1.59.9233.15n/an/a

ω=0.5 时 FID 2.54,好过 SD 1.5 的 9.92,CLIP 28.80 仍低于 SD 1.5 的 33.15。图生文 perplexity 61.1、CLIP 29.5,仍落后给 GPIC 写 caption 的 Qwen-3-VL-4B(37.7 / 31.9)。这些外部对照的训练数据、算力和架构都不同,只能当锚点。ω=0 已经全面好过表 1,规模和工程能把同一套桥再抬一截。

往返变体任务沿桥走一段再走回来,BIT 在更高 corruption 下保真度掉得更慢。噪声扩散多样性更高,因为它的噪声端点把源状态信息清光了。

科学侧用 LARRY 谱系追踪,从 day-2 progenitor 生成 day-6 细胞状态。cosine-volatility 共享网络桥平均排名 2.67,最好;fate kNN 准确率 0.445,也是最高。端点回归点对 MSE 最低(前向 1.195),但 fate kNN 0.336、clone kNN 0.047、MMD 0.0847,结构和生物学指标最差。Rectified flow 的 MMD 和 cycle error 还行,前向 MSE 2.444,配对的 state-fate 映射没保住。这些是单次运行的描述性排名,没有不确定性估计。

为什么重要

对做生成模型的人,这篇的可跟进点不是「又一个更强的文生图」。对照实验里噪声扩散在 FID 上还略胜。换了的是起点:文生图可以不从高斯噪声起步,文本表示本身可以当 SDE 的一端。

这带来两件立刻能用的事。一张网同时做 T2I 和 I2T,不用另训 caption 模型。中间状态带着源信息,SDEdit 这类沿轨迹编辑的算法有了更合理的路径。细胞命运这种科学翻译任务也能直接套同一套桥,框架不绑死在图文上。

工业上还没到能换掉 Flux 或 SD 的程度。CLIP 低于 SD 1.5,caption 落后专用 VLM,分辨率停在 256。更接近一份把「噪声起点是不是必须的」问清楚的受控实验。

局限与存疑

Theorem 3 只在源端点附近成立,而且不跟「全程拿着 prompt」的标准条件采样比。CFG 外推没有解析保证。有限样本训练的网络不继承 population-oracle 的路径定律。论文把这些写进了定理的适用条件。

实验上也有软肋。主表的文生图 BIT 没有超过噪声扩散,只是接近。十亿模型的外部对照不是 like-for-like。图生文仍落后 Qwen-3-VL-4B。文本端截到 64 token、64 维,长 caption 会被砍。token 独立嵌入丢掉了上下文,句法靠后面的桥去补,这也能解释 perplexity 还追不上专用 VLM。LARRY 没有误差条,平均排名不能当统计优胜。FlowTok / CrossFlow 那种带变分编码器的 data-to-data 方案没有直接对比,只打了「光秃 ODE」这一端。

未来工作提到跨文本-图像-音频,以及端点几何如何影响桥的表现,这两块现在都还没做。

术语

原文与代码

社区讨论

相关论文

全部论文解读