理解与学习深度卷积生成对抗网络
一.GAN
引言:生成对抗网络GAN,是当今的一大热门研究方向。在2014年,被Goodfellow大神提出来,当时的G神还是蒙特利尔大学的博士生。据有关媒体统计:CVPR2018的论文里,有三分之一的论文与GAN有关。由此可见,GAN在视觉领域的未来多年内,将是一片沃土。而我们入坑GAN,首先需要理由,GAN能做什么,为什么要学GAN。
》》GAN的初衷就是生成不存在于真实世界的数据,类似于使得 AI具有创造力或者想象力。应用场景如下:
》AI作家,AI画家等需要创造力的AI体;
》将模糊图变清晰(去雨,去雾,去抖动,等);
》进行数据增强,根据已有数据生成更多新数据供以feed,可以减缓模型过拟合现象。
接下来我们对GAN进行讨论:
(1)GAN的思想是是一种二人零和博弈思想(two-player game),博弈双方的利益之和是一个常数,比如两个人掰手腕,假设总的空间是一定的,你的力气大一点,那你就得到的空间多一点,相应的我的空间就少一点,相反我力气大我就得到的多一点,但有一点是确定的就是,我两的总空间是一定的,这就是二人博弈,但是呢总利益是一定的。
引申到GAN里面就是可以看成,GAN中有两个这样的博弈者,一个人名字是生成模型(G),另一个人名字是判别模型(D)。他们各自有各自的功能。比如,我们有一些真实数据,同时也有一把乱七八糟的假数据。(G)拼命地把随手拿过来的假数据模仿成真实数据,并揉进真实数据里。(D)则拼命地想把真实数据和假数据区分开。这里,(G)就是一个生成模型,类似于卖假货的,一个劲儿地学习如何骗过 (D)。而(D)则是一个判别模型,类似于警察叔叔,一个劲儿地学习如何分辨出(G)的骗人技巧。如此这般,随着(D)的鉴别技巧越来越牛,(G)的骗人技巧也越来越纯熟了。
相同点是:
这两个模型都可以看成是一个黑匣子,接受输入然后有一个输出,类似一个函数,一个输入输出映射。
不同点是:
生成模型(G)功能:比作是一个样本生成器,输入一个噪声/样本