🎨 生成对抗网络(GAN):原理、应用与实践
🚀 深度学习的奇迹制造机 —— 从假画骗过人眼到生成虚拟世界,GAN 改变了我们看待内容生成的方式。
一、什么是生成对抗网络(GAN)?
生成对抗网络(Generative Adversarial Network,简称 GAN)由 Ian Goodfellow 等人在 2014 年提出,是一种通过对抗训练实现数据生成的深度学习模型架构。
GAN 由两个核心组成部分:
- 🧠 生成器(Generator, G):负责“伪造”数据,目标是以假乱真;
- 👁 判别器(Discriminator, D):判断输入是真实数据还是生成数据。
它们像警察和伪造者,在持续对抗中彼此提升技能,最终生成器能生成以假乱真的数据。
🎯 工作原理简述
生成器和判别器相互博弈:
- 生成器从噪声中生成伪造数据;
- 判别器学习区分真假数据;
- 双方不断优化,直至达到纳什均衡 —— 判别器无法分辨真假。
其目标函数(以最小最大博弈形式)为:
min G max D V ( D , G ) = E x ∼ p data ( x ) [ log D ( x ) ] + E z ∼ p z ( z ) [ log ( 1 − D ( G ( z ) ) ) ] \min_G \max_D V(D, G) = \mathbb{E}_{x \sim p_{\text{data}}(x)}[\log D(x)] + \mathbb{E}_{z \sim p_z(z)}[\log(1 - D(G(z)))] GminDmaxV(D,