Deep learning image generation

Generative Adversarial Networks

I recently heard about how you could generate datas using 2 neural networks. It is called GAN (stands for Generative Adversarial Network) and is a game with 2 folks :

  • 1 generator
  • 1 discriminator The discriminator is an image classifier and the generator is trying to fool the discriminator by sending a fake image. (i.e. a self generated image).

You can perform function minimization on the difference between fake image and real image. Therefore you will generate an image that looks like a real one.

Deep Convolutional Generative Adversarial Networks

This is just an adaptation with deep classifier. I used 2 fully-strided convolutional layers with Relu as activation function and a fully-connected layer with Sigmoid.

Results

If you want to see a deeper infrastructure (batchnorm + more hidden layers for both generator and discriminator) : Carpedm20 DCGAN

Github Link