对抗生成网络(Generative Adversarial Networks, GAN)是一种生成模型框架,通过对抗过程学习数据分布,可以生成高质量的数据样本。其原理和应用技巧包括:
- 对抗框架
GAN由生成器和判别器组成。生成器生成假数据,判别器判断真假。两者对抗互动,最终学到真实数据的分布。
- minimax游戏
生成器要最大化生成数据真实度来矇骗判别器,判别器要最小化上当概率。这成为一个minimax博弈问题。
- 能量函数
定义判别器输出数据来源(真/假)的能量函数,生成器要降低假数据的能量函数值,使判别器难以判别。
- 模式崩溃
当生成器足够强大时,判别器会难以判断真假,网络训练可能不稳定,需要技巧应对。
- 条件GAN
加入条件变量控制生成输出,如类标签,可以实现生成特定类型数据。
- 应用
GAN可以生成高清图片、视频,也可用于图像风格转换、文本到图像生成等。
GAN使机器可以真正学会数据分布,不再只是记忆训练数据,拥有强大的生成能力。它开创了生成模型的新范式,在诸多领域取得成功应用。