目录
什么是GAN
GAN:对抗网络
属于生成模型中的一种
生成模型:
给定训练集,模型可以产生与训练集同分布的新样本
(即训练集样本的分布和新样本的分布是一致的)
生成模型的分类:
显示的密度估计:显示的定义并求解分布Pdata
隐式的密度估计:学习一个模型Pmodel,而无需显示的定义它
GAN的原理
简单的理解为两个玩家的博弈战
判别网络的目的:准确的区分真假图片
模型的训练过程:生成网络接受一维的噪声输入,通过网络的各种变换,输出1*28*28的图片输出;判断器对生成图片进行打分(0-1),打的分数越低说明生成网络的效果越差,进而计算梯度进行生成网络的优化迭代;而判别器同时获得一个真样本和假样本,看它能否判别效果如何。训练过程中,两者互相博弈,达到平衡。
训练目标
参数解释:
G表示生成网络,D表示判断器(输出是0-1),z为噪声输入,x为样本数据
- 先看max函数(此时训练参数是θd)
要想整个式子最大,只能使得,即判断器对真实图片的输入打1分,即对生成的1*28*28的图片打0分。这个过程就是对判别器进行训练,训练他辨别假样本的能力。
- 再看min函数(此时训练参数是θg)
前半个式子中没有涉及到θg,则只要让后面的式子最小即可,那么最好是让越大越好,就是要让生成网络生成的图片越真越好,使得判别器对他的打分越接近于1.
原文地址:https://www.jb51.cc/wenti/3284340.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。