项目作者: DataXujing

项目描述 :
:art::art:基于PyTorch的生成对抗网络DCGAN的训练
高级语言: Python
项目地址: git://github.com/DataXujing/DCGAN_pytorch.git
创建时间: 2020-03-23T07:01:37Z
项目社区:https://github.com/DataXujing/DCGAN_pytorch

开源协议:

关键词:
dcgan gans pytorch

下载


PyTorch 训练DCGAN

XuJing

结构

  1. Generater(
  2. (main): Sequential(
  3. (0): ConvTranspose2d(100, 512, kernel_size=(4, 4), stride=(1, 1), bias=False)
  4. (1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
  5. (2): ReLU(inplace=True)
  6. (3): ConvTranspose2d(512, 256, kernel_size=(4, 4), stride=(2, 2), padding=(1, 1), bias=False)
  7. (4): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
  8. (5): ReLU(inplace=True)
  9. (6): ConvTranspose2d(256, 128, kernel_size=(4, 4), stride=(2, 2), padding=(1, 1), bias=False)
  10. (7): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
  11. (8): ReLU(inplace=True)
  12. (9): ConvTranspose2d(128, 64, kernel_size=(4, 4), stride=(2, 2), padding=(1, 1), bias=False)
  13. (10): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
  14. (11): ReLU(inplace=True)
  15. (12): ConvTranspose2d(64, 3, kernel_size=(4, 4), stride=(2, 2), padding=(1, 1), bias=False)
  16. (13): Tanh()
  17. )
  18. )
  19. Discriminator(
  20. (main): Sequential(
  21. (0): Conv2d(3, 64, kernel_size=(4, 4), stride=(2, 2), padding=(1, 1), bias=False)
  22. (1): LeakyReLU(negative_slope=0.2, inplace=True)
  23. (2): Conv2d(64, 128, kernel_size=(4, 4), stride=(2, 2), padding=(1, 1), bias=False)
  24. (3): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
  25. (4): LeakyReLU(negative_slope=0.2, inplace=True)
  26. (5): Conv2d(128, 256, kernel_size=(4, 4), stride=(2, 2), padding=(1, 1), bias=False)
  27. (6): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
  28. (7): LeakyReLU(negative_slope=0.2, inplace=True)
  29. (8): Conv2d(256, 512, kernel_size=(4, 4), stride=(2, 2), padding=(1, 1), bias=False)
  30. (9): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
  31. (10): LeakyReLU(negative_slope=0.2, inplace=True)
  32. (11): Conv2d(512, 1, kernel_size=(4, 4), stride=(1, 1), bias=False)
  33. (12): Sigmoid()
  34. )
  35. )

train

Loss

Generator

Real Image vs Fake Generator

Real Data

Fake Generator