/The-GAN-World

Everything about Generative Adversarial Networks

The GAN World

Everything about Generative Adversarial Networks

Table of Contents

Introduction

Generative Adversarial Networks are very popular generative models which can be trained to generate synthetic data that is similar to the training data. Basic idea behind GANs is, we have two models, one called Generator and another called Discriminator. Generator takes noise as an input and produces synthetic data. Then, this generated data(fake data) along with original data from training dataset is fed into disciminator. Here, discriminator tries to distinguish between original data and fake data. As learning proceeds generator learns to generate more and more realistic data and discriminator learns to get better at distinguishing generated and fake data. In other words, GANs learn a probability distribution of the training data which we can use later to sample the data from it. Here, we have two networks(generator and discriminator) which we need to train simultaneously. GANs are also famous for their unstable training, they are hard to train. But we have made great progress in this field especially in image generation. As of now, we have GAN models which can generate high-resolution realistic images. GANs are so popular that every week new paper on GAN is coming out. This repository contains various resources which can be used to learn or implement GANs.

Papers and Code

Generative Adversarial Networks [Paper]

Deep Convolutional Generative Adversarial Networks [Paper]

Wasserstein GAN [Paper]

Bayesian GAN [Paper]

DiscoGAN [Paper]

Bayesian GAN [Paper]

Energy-based Generative Adversarial Network [Paper]

Boundary Equilibrium GAN [Paper]

Coupled Generative Adversarial Networks [Paper]

MAGAN: Margin Adaptation for Generative Adversarial Networks [Paper]

InfoGAN : Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets [Paper]

SEGAN : Speech Enhancement Generative Adversarial Networks [Paper]

Conditional Generative Adversarial Nets [Paper]

Boundary-Seeking Generative Adversarial Networks [Paper]

Softmax GAN [Paper]

Cycle GAN [Paper]

GAWWN : Generative Adversarial What-Where Network [Paper]

StackGAN: Text to Photo-realistic Image Synthesis with Stacked Generative Adversarial Networks [Paper]

End-to-end Adversarial Learning for Generative Conversational Agents [Paper]

Unsupervised Cross-Domain Image Generation [Paper]

Generative Adversarial Nets from a Density Ratio Estimation Perspective [Paper]

BCGAN : Bayesian Conditional Generative Adverserial Networks [Paper]

SeqGAN: Sequence Generative Adversarial Nets with Policy Gradient [Paper]

Gang of GANs : Generative Adversarial Networks with Maximum Margin Ranking [Paper]

SketchGAN : Adversarial Training For Sketch Retrieval [Paper]

Unrolled Generative Adversarial Networks [Paper]

TextureGAN : Controlling Deep Image Synthesis with Texture Patches [Paper]

Temporal Generative Adversarial Nets [Paper]

Recurrent Topic-Transition GAN for Visual Paragraph Generation [Paper]

Triangle Generative Adversarial Networks [Paper]

AttnGAN: Fine-Grained Text to Image Generation with Attentional Generative Adversarial Networks [Paper]

Structured Generative Adversarial Networks [Paper]

Projects

  • Image Completion with Deep Learning in TensorFlow[Blog][Github]
  • Image Super Resolution with Deep Learning[Github]
  • Neural Photo Editor : A simple interface for editing natural photos with generative neural networks[Github]
  • iGAN : Interactive Image Generation via Generative Adversarial Networks[Github]
  • CleverHans : A library for benchmarking vulnerability to adversarial examples[Github]
  • VideoGAN : Generating Videos with Scene Dynamics[Blog][Github]

Tutorials, Blogs and Talks

Blogs

Talks

Datasets

Other Resources

Contributing