昇思25天学习打卡营第19天|DCGAN生成漫画头像
【代码】昇思25天学习打卡营第19天|DCGAN生成漫画头像。
·
1. 克隆/下载
- 教程开始部分提供了如何通过终端命令克隆或下载代码的说明。
- 强调了使用HTTPS协议时,可能需要账号密码验证或配置私人令牌进行安全操作。
2. GAN基础原理
- 简要介绍了生成对抗网络(GAN)的基本概念,以及它们在图像生成中的应用。
3. DCGAN原理
- 详细解释了DCGAN(深度卷积生成对抗网络)的工作原理,包括判别器和生成器的结构。
- 引用了Radford等人的论文,描述了判别器和生成器的层结构和激活函数。
4. 数据准备与处理
- 描述了如何下载和解压动漫头像数据集,以及数据集的目录结构。
- 定义了一些关键参数,如批量大小、图像尺寸、隐向量长度等。
- 提供了数据处理函数
create_dataset_imagenet,包括数据加载、数据增强和批量处理。 - 使用
matplotlib模块展示了部分训练数据的可视化。
5. 构造网络
- 介绍了生成器和判别器的网络结构,包括使用的层类型和初始化方法。
- 生成器
G将隐向量映射到数据空间,生成RGB图像。 - 判别器
D是一个二分类网络,用于判断图像的真实性。
6. 模型训练
- 定义了二进制交叉熵损失函数
BCELoss。 - 设置了两个优化器,分别用于训练生成器和判别器,使用了Adam优化算法。
- 描述了训练判别器和生成器的过程,包括正向逻辑的实现和损失函数的计算。
- 提供了训练过程中损失记录和模型参数保存的方法。
7. 结果展示
- 使用
matplotlib绘制了生成器和判别器损失随训练迭代变化的图表。 - 展示了如何生成动画,展示训练过程中图像质量的提高。
- 最后,提供了加载模型参数并生成图像的代码示例。
鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。
更多推荐


所有评论(0)