GAN 学习笔记-1 -leah

GAN基本概念(proposed in 2014)

例如:一个能够生成二次元图像的GAN
训练一个generator(G),输入一个vector,输出一个image
同时训练一个discriminator(D),输入一个image,输出一个score,评价image有多真实
两者相互对抗,目标是G生成出足以骗过well-trained D 的图片

训练过程

  1. 准备一个二次元图像库,随机sample一些vector
  2. 把vector输入G生成图片,固定G参数,训练D给图像库里真实图片的和G生成的图片分类
  3. 固定D,训练G使得随机向量生成的图片在D中获得高分
  4. 回到2-3的循环
  5. G即为所求

每个输入向量都代表一个输出图像,连续的输入可以得到在某个属性上连续的输出图像

GAN as structured learning

structure learning 代表着输出结构化信息的machine learning,包括图片,文本等
这类学习很难,因为信息空间太大,机器要学会创造没见过的sample,需要有大局观
传统的stuctured learning有bottom up(G)和top down (D)两个方向,结合起来就成为了GAN

G and D necessary?

只有G行不行?
变成了auto-encoder : input图片输入encoder得到vector(code),把vector输入decoder,得到图片,训练使得输入和输出的图片相同,问题是得到的decoder对于连续的输入向量不能得到正确的连续的输出(reasonable image)。
为了解决这个问题有了VAE(variational auto-encoder):encoder产生vector和每个dimension的bias。随机sample一组noise,与bias相乘,加到vector上去,然后再输入decoder,这样可以使decoder能够抵抗一些输入中的noise
但问题是,此处的pixel error充当loss可能会使得decoder牺牲语义来提高像素上的准确,比如像素的空间一致性难以保证,需要比GAN更大的网络。

只有D行不行?
穷举所有的图片,找到在D中得到高分的(给爷爬!)
好吧 假设真的有办法合理的穷举,那如何训练一个好的D,需要大量的假的图片,尽量覆盖图片空间中的所有区域,所以就先训练D,再穷举,再用穷举得到的图片训练D。。。开始循环
以上出现在一些早古graphical model方法中,bayesian network; markov random field之类的

个人猜想:信息的表象是无意义的,有意义的是发布者和接受者之间达成的共识,GAN模拟出了这一过程

评价指标

FID score:表示图有多真实,一般是个挺大的范围

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值