生成对抗网络记录(一)

        最近看了李宏毅老师关于gan的课程,并阅读了一些相关的论文,做一些笔记以便日后回顾。

        Gan网络主要是给定一个数据Pdata的分布,让机器去学习一个分布PG,让PG与Pdata分布尽可能接近。学习PG的过程,可以通过最大似然去实现。通过一系列的证明,可以看到最大似然与最小kl散度相等。

 

        传统的PG使用一个高斯分布去拟合图像的分布,因为图像分布与高斯分布不太一致,所以生成的图像往往都很模糊。如何学习一个复杂的PG,可以通过一个网络去学习分布。

        因此最终generator的目标函数为

        如何衡量两者的divergence呢,通过discriminator去衡量。Discriminator的思想是如果数据从原始分布中采样出来的,那判别器生成的概率要越大,如果来自于generator生成的概率分布中采样的,那么对应的判别器的概率要越小。

        判别器的作用是最大化该目标函数。

        判别器的目标函数是一种divergence函数,是JS divergence。通过下面的公式转换:

        因此最大化v其实是最大化

        该目标函数可以通过求解梯度求解discrimiator

        最终求解的局部最优点

        将d带到原来的公式

        而js divergence的公式是

        因此最终的目标函数是

 

        训练时,固定g,寻找最优的d最大化divergence。基于当前的d,更新g。

        由于generator会基于上一次的最优d更新g,而generator变化,d也会跟着变化,因此,不能更新太多geneator,以使上一次的最优d约等于当前的最有d。

        由于discriminator求解时是求期望,实际求解时往往通过采样求解。

因此最终的算法为

 

        由于generator更新时在开始时微分很小,因此将其更新为下面的式子,因此只需训练时将其生成的标签为改为1。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值