Generative Adversarial Network using Sharpened Cosine Similarity
This repo is a modified copy of PyTorch's DCGAN (Deep Convolutional GAN) tutorial but using Sharpened Cosine Similarity instead of convolutions.
The concept of SCS is inspired by Brandon Rohrer (Main SCS repo).
The implementation of SCS in this repo is taken from Lucas Nestler (Gist).
Using the MNIST dataset
Currently SCS does not seem to be much better than deep conv GANs... More tinkering needed.
This is FID calculated on batches of 64 vs 64 images during training of 25 epochs and ndf (controlling feature maps in D) set to 16.
The lines are actually the average of 3 runs with the seeds 1, 2, 3.
Parameters in G: 3,574,656
Parameters in D: 174,784
dcgan.mp4
Parameters in G: 3,572,741
Parameters in D: 173,051
scsgan.mp4
- Make SCS Generator better (find replacement for LeakyReLU?)
- Try more datasets
- Try smaller models without P
- Test new SCS implementation by Lucas Nestler
- Make p optional in SCS
- Compare FID scores
- Compare training time
- Better SCS Generator without ReLU and normal conv
- Update videos to use universally supported codec
- Update all videos to show new architectures