《智能系统与技术丛书 生成对抗网络入门指南》—3.3GAN的可视化理解
3.3 GAN的可视化理解
本节我们用一个可视化概率分布的例子来更深入地认识一下生成对抗网络。Ian Goodfellow的原文[1]中给出了这样一个GAN的可视化实现的例子:图3-10中的点线为真实数据分布,曲线为生成数据样本,生成对抗网络在这个例子中的目标在于,让曲线(也就是生成数据的分布)逐渐逼近点线(代表的真实数据分布)。
虚线为生成对抗网络中的判别器,在实验中我们赋予了它初步区分真实数据与生成数据的能力,并对于它的划分性能加上一定的白噪声,使得模拟环境更为真实。输入域为z(图3-10中下方的直线)在这个例子里默认为一个均匀分布的数据,生成域为x(图3-10中上方的直线)为不均匀分布数据,通过生成函数x = G(z)形成一个映射关系,正如图3-10中的那些箭头所示,将均匀分布的数据映射成非均匀数据。
图3-10 GAN可视化理解
从图3-10a到d的四张图可以展现整个生成对抗网络的运作过程。在a图中,可以说是一种初始的状态,生成数据与真实数据还有比较大的差距,判别器具备初步划分是否为真实数据的能力,但是由于存在噪声,效果仍有缺陷。b图中,通过使用两类标签数据对于判别器的训练,判别器D开始逐渐向一个比较完善的方向收敛,最终呈现出图中的结果,最终判别器的形式为。当判别器逐渐完美后,我们开始迭代生成器G,如图3-10c所示。通过判别器D的倒数梯度方向作为指导,我们让生成数据向真实数据的分布方向移动,让生成数据更容易被判别器判断为真实数据。在反复的一系列上述训练过程后,生成器与判别器会进入图d的最终状态,此时pg会非常逼近甚至完全等于pdata,当达到理想的pg = pdata的时候,D与G都已经无法再更进一步优化了,此时G生成的数据已经达到了我们期望的目的,能够完全模拟出真实数据的分布,而D在这个状态下已经无法分辨两种数据分布(因为它们完全相同),此时。
- 点赞
- 收藏
- 关注作者
评论(0)