GAN
概述
GAN(Generative Adversarial Network)
生成对抗网络是一种深度学习模型,用于无监督机器学习的人工智能算法。模型通过至少两个模块进行训练:生成模型(Generative Model
)和判别模型(Discriminative Model
)进行相互博弈产生输出。
生成模型和判别模型目标
- 生成模型:防止被判断模型检测为假数据,降低判断模型的准确率
- 判别模型:提高检测假数据的能力,提高模型的准确率
实现原理
实现原理通过两个简短的阶段来进行介绍
第一阶段
- 选用固定的判别模型D, 由生成模型G生成假数据
- 判别模型D对假数据进行判断
- 不断训练生成模型G,来降低判断模型D的准确率
- 当生成模型G变的强大时,判别模型D识别的准确率只有
50%
第二阶段
- 固定生成模型G,训练判别模型D
- 生成模型G生成假数据
- 由判别模型D对假数据进行判断
- 不断训练判别模型D,提高D的鉴别能力
重复第一阶段和第二阶段,得出最完美的生成模型和判别模型
优势
- 更好建模数据分布(图像更锐利、清晰)
- GAN理论上可以训练任何一种生成器网络,其他框架可能需要特定的函数形式输出,比如高斯函数
- 在训练或生成样本期间不需要任何马尔可夫链或展开的近似推理网络
缺点
- 在训练期间 D 必须与 G 很好地同步, 很难训练,不够稳定
- 模式缺失,生成器开始退化,无法生成新的样本
参考文献
"Generative Adversarial Networks." Ian J. Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, Yoshua Bengio. ArXiv 2014.
GAN
https://www.weiyalong.top/2022/09/13/GAN/