Zubnet AI学习Wiki › GAN
模型

GAN

别名:生成对抗网络
一种模型架构,其中两个神经网络相互竞争:生成器生成假数据,而判别器试图区分真实与虚假。通过这种对抗性游戏,生成器在生成逼真输出方面变得越来越好。从2014年到~2022年,主导了图像生成领域。

为什么重要

GANs率先实现了逼真的人工智能图像生成,并且仍被用于某些实时应用中。但扩散模型在对质量要求较高的工作中已基本取代了它们,因为GANs更难训练,且输出的多样性较低。

深度解析

GAN 的结构源自博弈论中的零和博弈。生成器接收随机噪声(通常从高斯分布中采样的潜在向量),将其映射到数据样本——通常是图像。判别器接收来自训练集的真实样本和生成器生成的假样本,并输出每个样本为真实样本的概率。生成器被训练以最大化判别器的误差,而判别器被训练以最小化该误差。理论上,这会收敛到纳什均衡,此时生成器生成的输出与真实数据无法区分,而判别器只能以50/50的概率猜测。但在实践中,达到这一状态却是另一回事。

训练问题

多年来,GAN 的训练不稳定性一直是其主要挑战。模式崩溃——生成器学会仅生成可能输出的狭窄切片——困扰了早期架构。如果判别器过早变得过于强大,生成器的梯度信号会消失,学习过程停滞。如果生成器找到一种欺骗判别器的捷径,它会不断利用该方法,而不是学习生成多样化的输出。Wasserstein GAN(WGAN)通过使用提供更有意义梯度的不同损失函数解决了这一问题。渐进增长(ProGAN)从低分辨率逐步构建图像,极大稳定了训练过程。NVIDIA 的 StyleGAN 和 StyleGAN2 进一步优化了这一方法,生成了著名的“这个人不存在”的人脸图像,首次让公众认真看待 AI 图像生成。

速度优势

GAN 的真正超能力一直是速度。因为生成过程只需通过生成器网络进行一次前向传递,训练好的 GAN 可以在毫秒内生成图像。相比之下,扩散模型需要 20-50 次迭代。这就是为什么 GAN 在实时应用中仍占有一席之地:视频游戏纹理超分辨率(NVIDIA DLSS 使用类似 GAN 的架构)、实时人脸滤镜、移动应用中的风格迁移和超分辨率。当你需要以 30+ FPS 生成图像时,扩散模型的迭代优化过程在没有重度蒸馏的情况下太慢。

Ian Goodfellow 于 2014 年引入了 GAN,其架构经历了非凡的演变:DCGAN 带来了卷积结构(2015 年),条件 GAN 实现了类别特定生成,pix2pix 和 CycleGAN 处理了图像到图像的转换,BigGAN 扩展到 ImageNet 级别的质量,StyleGAN 使生成逼真人脸成为常规操作。大约八年的时间里,如果你看到 AI 生成的图像,它几乎肯定来自 GAN。转向扩散模型是因为扩散模型解决了 GAN 无法解决的问题:训练稳定性、输出多样性以及细粒度文本条件控制。你不再需要在对抗训练中玩这种微妙的平衡游戏。

依然活跃

一个值得纠正的误解:GAN 并未死亡。它们不再是图像生成的默认选择,但对抗训练原则无处不在。基于 GAN 的判别器被用作超分辨率和压缩的感知损失函数。对抗训练使模型更抗攻击。一些最快的扩散方法(如 SDXL Turbo 中的对抗扩散蒸馏)实际上使用 GAN 判别器将缓慢的扩散模型蒸馏成快速的几步生成器——这是 GAN 帮助其继任者变得更快速的巧妙循环。

相关概念

← 所有术语
← 基础模型 GPU →
ESC