Pytorch框架实现DCGAN(比较容易理解)

2023-05-16

目录

1.了解DCGAN

2.本文DCGAN网络模型结构

(1)生成模型结构

(2)判别模型结构

(3)DCGAN模型结构

3.数据集下载 

4.GAN代码实现

5.mainWindow窗口显示生成器生成的图片

拓展


GAN原理及Pytorch框架实现GAN(比较容易理解)

1.了解DCGAN

  • 最初的GAN网络主要基于全连接层实现生成器G和判别器D的(上面的连接给出了GAN的基本原理及实现),由于图片的维度比较高,网络参数量巨大,训练的效果不是很优秀。
  • DCGAN提出了使用转置卷积(Transpose Convolution)层实现的生成网络,普通卷积层来实现的判别网络,大大降低了网络参数量,同时图片的生成效果也大幅度的提升,展现了GAN模型在图片生成效果上远远超过VAE模型的潜质。
  • DCGAN提出了一系列经验性的GAN网络训练技巧,这些技巧在GAN提出之前被证实有利于网络的稳定训练。

2.本文DCGAN网络模型结构

(1)生成模型结构

 以深度卷积神经网络作为生成模型,其中以随机噪声作为生成模型的输入,输入向量通过五个反卷积映射为二维的输出图像(RGB)。

gen = Generator()
summary(gen, input_size=(1,100,1,1))

(2)判别模型结构

同样,以深度卷积神经网络作为生成模型,判别模型结构和生成模型结构相反。

dis = Discriminator()
summary(dis,input_size=(1,3,64,64))

(3)DCGAN模型结构

3.数据集下载 

链接:https://pan.baidu.com/s/1i_VU3aQpLkCx4Z5fhDVKHA 
提取码:79y3

4.GAN代码实现

提示:代码放在了Github上,读者自行下载:https://github.com/KeepTryingTo/Pytorch-GAN

5.mainWindow窗口显示生成器生成的图片

提示:这里编写了一个显示生成器显示图片的程序(mainWindow.py),加载之前训练之后保存的生成器模型,之后可使用该模型进行随机生成图片,如下:

(1)运行mainWindow.py 初始界面如下

(2)点击生成图片

拓展

pytorch中的detach作用

参考文章:

《TensorFlow深度学习》

《机器学习原理,算法与应用》

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Pytorch框架实现DCGAN(比较容易理解) 的相关文章

随机推荐