目录
为什么用GAN?
于我而言,想用GAN做静态数据的拟合,而GAIL做的是与env环境交互的,不断产生新的交互数据的,这所导致的问题就是要把环境等都设计好,才能作模仿学习。这个博文正好是用静态数据的方法,则入手容易。此外,掌握了GAN 的结构,则GAIL的理解也会更加透彻。
GAN的基本结构
GAN的主要结构包括一个生成器G(Generator)和一个判别器D(Discriminator)
GAN 充分利用“对抗过程”训练两个神经网络,这两个网络会互相博弈直至达到一种理想的平衡状态,我们这个例子中的警察和罪犯就相当于这两个神经网络。其中一个神经网络叫做生成器网络 G(Z),它会使用输入随机噪声数据,生成和已有数据集非常接近的数据,它学习的是数据分布;另一个神经网络叫鉴别器网络 D(X),它会以生成的数据作为输入,尝试鉴别出哪些是生成的数据,哪些是真实数据。鉴别器的核心是实现二元分类,输出的结果是输入数据来自真实数据集(和合成数据或虚假数据相对)的概率。
前面所说的 GAN 最终能达到一种理想的平衡状态,是指生成器应该能模拟真实的数据,鉴别器输出的概率应该为 0.5, 即生成的数据和真实数据一致。也就是说,它不确定来自生成器的新数据是真实还是虚假,二者的概率相等(这样熵最大)。
数据分布概念:如高斯分布
鉴别器的核心:二元分类,判断输出的结果来自真实数据集的概率
参考资料
强化学习(二)--让你轻松玩转生成对抗网络(GAN)与生成对抗模仿学习(GAIL)_Robert--cao的博客-CSDN博客_生成对抗模仿学习