Self-Flow 证明了一个反直觉的事实:生成模型不需要借助判别模型的表征。通过 Dual-Timestep Scheduling 制造训练时的信息不对称,模型自己就能长出强语义理解——在图像、视频、音频上全面超越依赖外部编码器的方法,并且遵循预期的 scaling laws。
Flow Matching 会画画,但不「理解」
Flow Matching 的训练目标是预测从噪声到数据的速度场(velocity)。给定一张被加噪的图片 xt,模型学习的是「这些像素应该往哪个方向挪」。
问题在于:这个信号太局部了。模型只需要看周围几个像素的统计规律就能完成去噪——它永远不需要理解「这是一只狗」。像素对了,损失就低了,训练就结束了。
收敛慢——缺乏全局语义指导,模型需要海量迭代才能学到结构。结构错误——六根手指、断裂的文字,因为模型不「理解」对象的结构。内部表征差——中间层特征无法用于分类或检索,生成能力与理解能力脱节。
DINO 越强,生成越差——Scaling 的反面
之前的解法叫 REPA(Representation Alignment):用一个预训练好的判别模型(如 DINO)作为「家教」,让生成模型的内部特征去对齐家教的特征。逻辑很直觉——借一个已经「理解」图像的模型,教会生成模型也去理解。
初始版本确实有效:对齐 DINOv2-B(86M 参数)后 FID 从基线显著下降。自然推论:换一个更大更强的 DINO 应该更好。但实验结果完全相反:
模型越大越强,生成质量反而越差。这不是训练 bug,而是一个结构性矛盾——判别模型和生成模型对「好表征」的定义根本冲突:
同类紧聚,异类隔开。类间留有清晰的鸿沟——对分类很好。但生成需要从一个类连续过渡到另一个类,鸿沟意味着不可采样的死区。
连续过渡、保留纹理和光照细节、平滑流形上处处可采样。不需要分类边界,需要的是每个方向都有意义的平滑梯度。
判别模型做的是破坏性压缩(destructive compression):它主动丢弃纹理、光照、姿态等「分类无关」信息以获得不变性。DINO 越强,丢得越彻底。但生成模型恰恰需要这些被丢弃的细节——你不可能让学生去对齐一个连目标信息都不包含的教师。
用噪声程度的差异制造信息不对称
标准 Flow Matching 对所有 token 施加同一噪声程度 t。模型面对的是一张「均匀模糊」的图——每个像素一样不清楚,局部去噪就够了,不需要跨区域推理。
Dual-Timestep 的核心创新:给不同 token 施加不同程度的噪声。一部分 token 看得清(噪声 s,较小),另一部分看不清(噪声 t,较大)。模型被迫用清楚的推断模糊的——这就需要全局语义联系。
为什么不直接遮掉部分 token(binary masking)?因为推理时所有 token 都是同一噪声水平——训练时搞二值遮掩会产生 train-inference gap。
训练:有 / 无的二值掩码
推理:连续噪声
分布不匹配 → 质量下降
训练:两种不同程度的噪声
推理:连续噪声
分布兼容 → 无缝迁移
每个 token 单独看仍然在正常噪声分布内——只是不同 token 的噪声程度不同。这意味着 Dual-Timestep 训练出的模型可以直接用标准 Flow Matching 推理,零额外成本。
EMA 自蒸馏 + Dual-Timestep = 完整方法
Dual-Timestep 制造了信息不对称,但光有不对称还不够——模型需要一个学习目标来引导表征的方向。Self-Flow 的做法:用自己的 EMA 副本(教师)提供表征目标。
学生看到不均匀加噪的输入(多数 token 噪声为 t,少数为 s),教师看到更清晰的版本(所有 token 噪声均为 s)。学生的任务:从残缺视角重建教师在完整视角下的特征。
为什么这套设计能赢过借用外部编码器的方案?三条结构性原因:
所有模态、所有规模,Self-Flow 均为最优
Self-Flow 在四个模态上用同一套方法超越了各自依赖外部编码器的基线:
| Modality | Metric | Self-Flow | REPA | Winner |
|---|---|---|---|---|
| ImageNet | FID ↓ | 5.70 | 5.89 | Self-Flow |
| Text-to-Image | FID ↓ | 3.61 | 3.92 | Self-Flow |
| Text-to-Video | FVD ↓ | 47.81 | 49.59 | Self-Flow |
| Text-to-Audio | FAD ↓ | 145.6 | 148.9 | Self-Flow |
更关键的是 Self-Flow 在 scaling 时表现出预期的行为——模型越大,效果越好,且与 REPA 的差距持续扩大:
注意 Self-Flow 625M 的绿条已经超过了 REPA 1B 的红条——用 60% 的参数达到更好的效果。这就是 scaling 不被外部瓶颈卡住时的正常样子。
视频和音频的结果尤其有趣:REPA 用的外部编码器(V-JEPA2 用于视频、MERT 用于音频)非但没帮忙,反而降低了生成质量。这进一步印证了核心论点——外部判别模型的表征不适合生成任务,不仅仅是图像如此,跨模态普遍成立。Self-Flow 用同一套方法同时改善了所有模态。
教师网络需要额外一次前向传播,训练开销增加约 30-50%。噪声调度器 p(t) 的形状需要调优。自举(bootstrapping)的理论上限未知——自己教自己是否存在天花板,目前没有证明。
好的表征不是绝对的,它是相对于你要用它干什么而言的。向别人借来的「理解」,再好也不如自己在实践中长出来的。
生成 ⊇ 理解。理解可以从生成中涌现。