Needs Google Drive mount for loading data. Download CData file and upload it onto Google Drive. Copy just below top code cell.
from google.colab import drive
drive.mount('/content/drive')
And then copy this below the last one.
dset = pd.read_csv('/content/drive/MyDrive/CData/emnist-balanced-train.csv', header=None)
dset.head()
Finally, comment out the following block.
dset = pd.read_csv('CData/emnist-balanced-train.csv', header=None)
dset.head()
$ git clone https://github.com/marsof02/Handwritten-Character-Generator.git
$ cd Handwritten-Character-Generator
This model is composed by two neural networks: a generator that takes a random distribution as input and outputs some data (typically an image), and a discriminator that takes a fake image from the generator and a real one from the training set as input, and must guess whether the input image is fake or real. The goal of the generator is to trick the discriminator and the goal of the discriminator is to tell fake images from real ones correctly, despite the increased accuracy of the generator's results.
This model was trained on the EMNIST (Extended MNIST) dataset from https://www.kaggle.com/datasets/crawford/emnist
Consulted the following sources for implementation details:
- Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems by Aurélien Géron (https://a.co/aotQFto)
- Deep Convolutional Generative Adversarial Network Tutorial by TensorFlow (https://www.tensorflow.org/tutorials/generative/dcgan)
- Generative Adversarial Networks (GAN) in Tensorflow Tutorial by Sundog Education (https://www.youtube.com/watch?v=LZov6445YAY)
- Alarsan, F.I., Younes, M. Best Selection of Generative Adversarial Networks Hyper-Parameters Using Genetic Algorithm. SN COMPUT. SCI. 2, 283 (2021). (https://doi.org/10.1007/s42979-021-00689-3)
- Google's Introduction to GANs (https://developers.google.com/machine-learning/gan)
- NVIDIA blog post (https://blogs.nvidia.com/blog/2020/12/07/neurips-research-limited-data-gan/#:~:text=It%20typically%20takes%2050%2C000%20to,sample%20images%20at%20their%20disposal.)
Results were compared to the ones of the Variational Autoencoder (VAE) in the book referenced on the previous list using the same dataset.


