DCGAN原理
DCGAN是GAN的直接扩展,最早由Radford等人在论文中提出,其中文名称为深度卷积对抗生成网络。它与GAN的不同之处在于,它会分别在判别器和生成器中使用卷积和转置卷积层。
数据操作
transforms = [
vision.Resize(image_size),
vision.CenterCrop(image_size),
vision.HWC2CHW(),
lambda x: ((x / 255).astype("float32"))
]
该函数能对数据进行增强
先是通过create_dict_iterator
函数将数据转换成字典迭代器,然后使用matplotlib
模块来将部分训练数据可视化。
当处理完数据后,按照DCGAN论文中的描述,所有模型权重均应从mean
为0,sigma
为0.02的正态分布中随机初始化。
生成器
生成器的功能是将隐向量映射到数据空间,该功能是通过一系列Conv2dTranspose
转置卷积层来完成的。
目的
一、训练判别器
目的是最大程度地提高判别图像真伪的概率;
二、训练生成器
目的是产生更好的虚假图像。