生成对抗网络GAN原理 学习笔记

Generative Adversarial Nets

1. GAN究竟在做什么?

学习样本集的数据分布

A.学习数据分布有什么用?

(1) 学习到高维抽象的分布函数
(2) 模拟预测未来数据
(3) 处理缺省数据问题:如半监督学习
(4) 生产真实样本
建立模型,分析数据特征,还原数据,……

B.如何生成真实样本?

这里写图片描述

C.生成模型的一些常见方法:

这里写图片描述

D.生成模型常见方法的比较:

显式:或多或少的需要知道或者假设模型的分布;大多通过Markov chains方法
隐式:使用隐藏编码,无需假设模型,无需Markov chains,以最终生成图像的相似性作为目标

2. GAN如何做的?

思想:二人零和博弈(two-player game)
博弈双方,两个模型:
生成模型(G),判别模型(D) (分类器/网络结构)
判别模型:是一个二分类器(看作0-1二分类),用于判断样本是真是假;(分类器输入为样本,输出概率大于0.5为真,否则为假)
生成模型:是一个样本生成器,把一个噪声包装成另一个逼真的样本,使得判别器误认为是真样本;(输入为噪声,输出为样本维度相同的噪声(假样本))
这里写图片描述
这里写图片描述

3.GAN是如何训练的?

几个问题:
(1)我们有什么?
有且仅有真实训练样本集,无label
(假样本集:随机制造而来,无label)
(2)无监督训练or有监督训练?
有监督,监督信号:真1假0
(3)我们的目的是什么?
生成逼真的假样本,越真越好
这里写图片描述
精髓:假样本在训练过程中的真假变换,这也是博弈得以进行的关键之处。
原文目标函数:
这里写图片描述
算法伪代码:
这里写图片描述
原文结论
这里写图片描述

4.GAN性质小结

(1)自动的学习原始真实样本集的数据分布,无需假设额外的分布模型;
(2)自动学习潜在的损失函数,判别网络潜在学习到的损失函数隐藏在网络之中;
(3)提供无监督的学习方法,无监督学习是机器学习领域的终极目标

Problem:
(1)不收敛的问题:网络不稳定,难以训练;
(2)网络需要调才能得到较好的结果,比如交替迭代次数,对结果的影响就较大

参考内容:
https://blog.csdn.net/on2way/article/details/72773771
以及他的视频分享:http://www.mooc.ai/open/course/301
论文链接:https://arxiv.org/pdf/1406.2661.pdf

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值