目录
目录README.md

CGAN_jittor

一个基于 Jittor 深度学习框架的 Conditional GAN (CGAN) 实现。

项目简介

本项目实现了条件生成对抗网络(Conditional GAN),使用 Jittor 深度学习框架进行训练和推理。CGAN 在传统 GAN 的基础上增加了条件控制,能够根据指定标签生成特定类别的图像。

环境要求

  • Python 3.7+
  • Jittor 1.3.7+
  • NumPy
  • Pillow

安装 Jittor

通过 pip 安装: pip install jittor

或从官网下载安装: 访问:https://cg.cs.tsinghua.edu.cn/jittor/download/

项目结构

CGAN_jittor/ ├── CGAN.py # 主训练代码 ├── README.md # 项目说明 ├── .gitignore # Git忽略文件 ├── result.png # 生成的结果图像 ├── report.pdf # 实验报告 └── requirements.txt # 依赖包列表(可选)

使用方法

1. 训练模型

python CGAN.py –n_epochs 100 –batch_size 64 –lr 0.0002

2. 主要参数说明

–n_epochs: 训练轮数 (默认: 100) –batch_size: 批大小 (默认: 64) –lr: 学习率 (默认: 0.0002) –latent_dim: 潜在空间维度 (默认: 100) –n_classes: 类别数量 (默认: 10,对应MNIST 0-9) –img_size: 图像尺寸 (默认: 32) –sample_interval: 采样间隔 (默认: 1000)

3. 生成指定数字序列的图像

在代码中修改以下部分(可以改为任意数字序列):

number = "2313983"  

模型架构

生成器 (Generator)

  • 输入:噪声向量 + 标签嵌入
  • 结构:全连接层 + BatchNorm + LeakyReLU
  • 输出:32×32的灰度图像

判别器 (Discriminator)

  • 输入:图像 + 标签嵌入
  • 结构:全连接层 + Dropout + LeakyReLU
  • 输出:真实性评分(0/1)

训练过程

  1. 训练判别器:区分真实图像和生成图像
  2. 训练生成器:生成更逼真的图像以欺骗判别器
  3. 使用损失函数:均方误差 (MSE) 损失
  4. 优化器:Adam 优化器

结果示例

运行训练后,生成的图像将保存为 result.png,显示指定数字序列对应的生成图像。

文件说明

  • CGAN.py: 完整的训练和生成代码
  • result.png: 最终生成的图像结果
  • report.pdf: 详细的实验报告,包含训练过程、结果分析和项目地址

开源信息

  • 框架: Jittor
  • 模型: Conditional GAN
  • 数据集: MNIST
  • 许可证: MIT License

参考资源

贡献

欢迎提交 Issue 和 Pull Request 来改进本项目。

许可证

MIT License

关于

A Jittor implementation of Conditional GAN (CGAN).

39.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号