生成式对抗网络对比(GAN--pix to pix--cycleGAN)

  • 神经网络只要有非线性激活函数,就可以去拟合任意的函数,那么分布也是一样,所以可以用一直正态分布,或者高斯分布,取样去训练一个神经网络,学习到一个很复杂的分布。

GAN

  • 单向
  • 用于生成图片
  • 为生成一个生成器,该生成器可以产生新的原训练集中没有的数据
  • 如有一系列猫的图片,①给鉴别器判别他们是真的图片,②训练生成器时输入随机变量,生成器随机生成一张图片(此图片随机)③把这张图片拿去训练鉴别器,鉴别器会输出假 ④用鉴别器去训练生成器,让生成器可以生成更好的图片,使得这一代鉴别器判别为真,则训练鉴别器... 不断重复操作。
  • 注意:通过损失函数来训练,其中G、F(映射函数)等函数都是在训练过程中确定(开始为随机值),并不断修改
  • 虽然最终生成器能产生随机的真的图像,但因为你是拿你的数据集,如你的数据集里是各种各样猫的图片,则最终生成器产生的也会是猫的图片,不过不在训练集里,因为你是拿猫的图片训练鉴别器,所以它会认为“哦,原来这种图片是真的图片啊”,即如果你拿一张狗的拍的真实的图片给鉴别器判别,它会说这是假的,所以记住,机器是很傻的,只有通过一种一种的训练它才会.
  • 生成器和鉴别器相互博弈,最终使二者都成为专家

e.g

首先,有一个一代的 generator,它能生成一些很差的图片,然后有一个一代的 discriminator,它能准确的把生成的图片,和真实的图片分类,简而言之,这个 discriminator 就是一个二分类器,对生成的图片输出 0,对真实的图片输出 1。

接着,开始训练出二代的 generator,它能生成稍好一点的图片,能够让一代的 discriminator 认为这些生成的图片是真实的图片。然后会训练出一个二代的 discriminator,它能准确的识别出真实的图片,和二代 generator 生成的图片。以此类推,会有三代,四代。。。n 代的 generator 和 discriminator,最后 discriminator 无法分辨生成的图片和真实图片,这个网络就拟合了。

  • 生成器:

训练一个 encoder,把 input 转换成 code,然后训练一个 decoder,把 code 转换成一个 image,然后计算得到的 image 和 input 之间的 MSE(mean square error,一般是每一个像素上的均方差,但会有一些鉴别不出)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值