核心是一场竞赛
GAN 的训练是在两个网络之间安排一场对抗博弈。生成器把随机噪声映射成图像;判别器拿到真图和生成图混在一起的样本,必须逐张判定。判别器的训练目标是抓假,生成器的训练目标是骗过它。
谁都不可能一直赢。判别器每变敏锐一点,它回传的信号就等于告诉生成器「你哪里露馅了」,于是生成器跟着变强。理论上的均衡是:生成器的输出与训练分布无法区分,此时判别器只能靠瞎猜。
这套设计带来两个性质,足以解释今天 GAN 的全部去处:
- 推理只有一次前向。 没有迭代去噪,也没有步数这回事。训完之后出结果几乎是瞬时的,这对交互式场景和大批量处理很关键。
- 训练很脆。 两个网络必须以相近的速度变强。判别器太强,生成器就拿不到有用的梯度、原地卡住;生成器找到了便宜的伎俩,就停止探索。所以对抗训练一直有「难调」的名声,而扩散训练没有这个问题。
扩散模型为什么在生成上取代了它
这次交替并不是因为它在窄领域的最终画质差,StyleGAN 的人脸至今仍然惊人。真正起作用的是生产更在意的三件事:
- 覆盖面。 扩散模型学的是整个分布,用提示词能横跨极大范围的题材。而一个在人脸上训出来的 GAN,只会出人脸。
- 可干预性。 扩散是分几十步生成的,你可以在步与步之间插手:引导强度、负面提示词、蒙版、控制图、重绘幅度。单次前向的架构能插手的地方少得多。
- 大规模训练的稳定性。 扩散的目标函数在数十亿张图上训练表现可预测;对抗目标在这个量级上要维持平衡困难得多。
| 维度 | GAN | 扩散模型 |
|---|---|---|
| 推理 | 一次前向,毫秒级 | 多步,秒级 |
| 可控性 | 有限 | 高 |
| 题材覆盖 | 窄领域 | 极广 |
| 训练 | 不稳,需要配平 | 可预测 |
| 现在主要用于 | 放大、修复、增强 | 文生图、视频 |
它今天仍然是正确选择的地方
如果你每天用 AI 工具,其实早就在用它了,只是没注意。这些场景的共同点是:输入到输出的映射定义清晰、要求快、并且不需要开放式提示词。
- 放大。 Real-ESRGAN 及其后代仍是「便宜快速提分辨率」的现实默认项。
- 人脸修复。 GFPGAN 一类模型能从低分辨率、糊掉或受损的源图里还原出人脸。
- 人像与皮肤增强。 一个窄而可重复的变换,一次前向的速度就是它的全部意义。
- 潜空间属性编辑。 StyleGAN 那种性质良好的潜空间,至今仍能做出平滑的年龄、表情、朝向调整,精度是扩散模型不容易干净复现的。
- 端侧与实时。 任何必须跑在视频通话或手机相机管线里的处理。
一个实操上的警告
因为这类模型学的是「产出合理纹理」而不是「还原真实信息」,放大时它会非常自信地把不存在的东西造出来。睫毛、牙齿、布料织纹、远处的人脸、小号字母,全都会被填上一个像样的东西。两个习惯有用:接受结果之前按 100% 比例和源图对照一遍;人脸上宁可用较小倍率放两次,也别一次拉到极限,因为倍率每翻一次,编造出来的细节也跟着叠加。