update readme file
本项目是第三届计图人工智能挑战赛 - 热身赛的代码实现。本项目基于 Jittor 框架,在数字图片数据集 MNIST 上训练了一个将随机噪声和类别标签映射为手写数字图片的 Conditional GAN (CGAN) 模型,能够生成指定数字序列对应的图片。
GAN 模型包括一个生成器 G 与一个判别器 D。对于输入的一个随机向量,前者需要输出一幅图片 G(z),而后者需要将真实图片 x 与合成图片 G(z) 区分开来,从而不断增强 G 的生成能力。CGAN 在 G 的输入中加入了一个类别标签 c,使得 G 能够生成特定类别的图片。
具体而言,可以用以下标准评估生成器 G 和判别器 D 的性能: $ L(G, D) = \log D(y) + \log(1 - D(G(z))) $ 对判别器 D 而言,L 越大区分效果越好;而对生成器 G 而言,判别器越难以区分真实图片与合成图片的差别,说明生成效果越好,即 L 越小生成效果越好。因此,模型的优化目标是 $G^* = \arg\min_G \max_D L(G, D)$。
提供一个经过 20 个 epoch 的预训练模型模型,下载地址为 CGAN-Jittor-Pretrained,下载后放入根目录下即可。
训练时将自动下载数据集,无需手动处理。
运行以下命令:
python CGAN.py
可使用命令行选项指定训练参数。使用 -h 查看可使用的选项详情。
-h
A Jittor implementation of Conditional GAN (CGAN).
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
CGAN-Jittor
简介
本项目是第三届计图人工智能挑战赛 - 热身赛的代码实现。本项目基于 Jittor 框架,在数字图片数据集 MNIST 上训练了一个将随机噪声和类别标签映射为手写数字图片的 Conditional GAN (CGAN) 模型,能够生成指定数字序列对应的图片。
GAN 模型包括一个生成器 G 与一个判别器 D。对于输入的一个随机向量,前者需要输出一幅图片 G(z),而后者需要将真实图片 x 与合成图片 G(z) 区分开来,从而不断增强 G 的生成能力。CGAN 在 G 的输入中加入了一个类别标签 c,使得 G 能够生成特定类别的图片。
具体而言,可以用以下标准评估生成器 G 和判别器 D 的性能: $ L(G, D) = \log D(y) + \log(1 - D(G(z))) $ 对判别器 D 而言,L 越大区分效果越好;而对生成器 G 而言,判别器越难以区分真实图片与合成图片的差别,说明生成效果越好,即 L 越小生成效果越好。因此,模型的优化目标是 $G^* = \arg\min_G \max_D L(G, D)$。
安装
运行环境
预训练模型
提供一个经过 20 个 epoch 的预训练模型模型,下载地址为 CGAN-Jittor-Pretrained,下载后放入根目录下即可。
数据预处理
训练时将自动下载数据集,无需手动处理。
训练与测试
运行以下命令:
可使用命令行选项指定训练参数。使用
-h
查看可使用的选项详情。致谢