一 GAN
1.1 GAN
由于在前面,我们对于图形方面 讨论的大部分都是如何分类,如给出一堆猫与狗的数据,我们进行模型的设计用来将图片进行分类判别那些是属于狗和猫.这种的操作称为分类模型。但是神经网络能做的事不仅如此.例如 通过一堆狗的大量数据,神经网络根据这些狗的数据 进行特征提取等操作,生成一种全新的狗的图像.这种操作称之为生成模型.因此,具有数据生成能力的这类模型成为研究热点,如PixelRNN、PixelCNN、PixelCNN++、VAE 模型等,上述模型主要依靠明确的密度函数。于是,Ian Goodfellow 提出生成对抗网络(GAN),不依靠明确的密度函数,就能有效的生成数据。
1.2 (Discrimiator)分类模块的损失函数
因为我们需要损失函数来评估我们的模型,而这个损失函数的值越小则证明分类效果越好.而损失函数我们选用:
1.3 (Generator) 生成模块的损失函数
同时我们要判断我们生成模型的效果,同样也可以用上面的评估函数来估量,但是由于我们生成的为假数据,因此这个评估函数越大 则证明我们的数据也越逼真.当我们的数据为假时,则此时的y=0.所以可以化简得:
又假设我们的分类模型表现的非常完美,所有假的数据都能分出,那么就会导致D(G(z))约等于0,从而影响评估函数使其接近为0,从而导致相应的梯度函数接近为0,故评估函数修改为:
二 DCGAN
2.1 DCGAN
DCGAN 的判别器和生成器都使用了卷积神经网络(CNN)来替代GAN 中的多层感知机,同时为了使整个网络可微,拿掉了CNN 中的池化层,另外将全连接层以全局池化层替代以减轻计算量。
2.2 反卷积
反卷积的计算公式,假设 我们采用的图形为nh×nw=16×16的,卷积核为kh×kw=4×4的,步幅为sh=sw=2,补充行列为ph=pw=1,则输出的图形为32×32