返回 深度学习 思维导图
中文·English
🧠 深度学习ID: gan

GAN 对抗训练

GAN Adversarial Training
🎯核心定义
GAN 由生成器 GG 与判别器 DD 组成, 玩零和 min-max 博弈: minGmaxDV(D,G)=Expdata[logD(x)]+Ezpz[log(1D(G(z)))]\min_G\max_D V(D,G) = \mathbb{E}_{x \sim p_{data}}[\log D(x)] + \mathbb{E}_{z \sim p_z}[\log(1 - D(G(z)))]。固定 GG 时对 DD 求导得最优判别器是似然比 D(x)=pdata(x)pdata(x)+pg(x)D^*(x) = \frac{p_{data}(x)}{p_{data}(x) + p_g(x)}; 代入目标得 V(D,G)=log4+2JSD(pdatapg)V(D^*, G) = -\log 4 + 2 \cdot JSD(p_{data} \Vert p_g), 即 GAN 等价于最小化真实分布与生成分布的 Jensen-Shannon 散度, 当且仅当 pdata=pgp_{data} = p_g 时取全局最优 log4-\log 4
💡使用场景
图像生成 (DCGAN/ProGAN/StyleGAN)、超分辨率、图像域迁移; 面试必考 min-max 目标与 DD^* 推导、训练不稳定与模式坍缩的机理。
解决的核心痛点
相比 VAE 显式逼近密度、用逐像素重构损失, GAN 不假设分布形式、生成样本更锐利; 代价是 DD/GG 交替训练逼近的是纳什均衡而非极小化损失, 收敛困难: DD 过强时 JSD 饱和、生成器梯度消失, DD 过弱时信号噪声大, 典型失败模式为模式坍缩与训练震荡。
🎯5 个高频面试考点 (Exam Points)
1
写出 GAN 的 min-max 目标函数, 并推导最优判别器 D(x)D^*(x)?
2
DD^* 代入后为什么 GAN 等价于最小化 JSD(pdatapg)JSD(p_{data} \Vert p_g)?
3
GAN 训练为什么不稳定? 梯度消失与模式坍缩的机理?
4
为什么 GAN 容易模式坍缩而 VAE 不会? 两者生成质量有何差异?
5
缓解 GAN 训练不稳定的常用技巧 (label smoothing / TTUR / spectral norm)?
📖 关联深度指南:📄 gan-and-generative-basics
更新于 2026-08-12
🎯
检验攻克程度:针对「GAN 对抗训练」专属刷题排雷
做单选排雷题、推导选项机制,答错自动收录进专属错题本。
🚀 开始本考点专项刷题
上一个知识点GAT 注意力下一个知识点WGAN 与 Wasserstein

🔗 更多 深度学习 知识点卡片

激活函数演进Adam/AdamWAutograd 动态图BatchNorm 批归一化