Generative Adversarial Networks

Author: Olatomiwa Bifarin
Blogs @ bifarinthefifth.com/ai
Series | AI Talks: A biochemist read AI papers, talks about it.

Blogger's Abstract

Generative adversarial network (GAN) is a type of generative model, model that generates stuffs, as opposed to predictive models, that predicts stuffs. Variational autoencoders is another example of generative models, here I will focus on GAN. GAN is composed of two parts: the generator and the discriminator. The generator - as the name suggests - generate synthetic samples from random vectors while the discriminator discriminates the synthetic samples from the training samples. Effectively, the discriminator acts as a loss function for the generator. Notice what is going on here: the generator is trying to fool the discriminator, while the discriminator doesn't want to be a fool. Hence, what we have here is an adversarial learning. You might have seen numerous products of GAN as in deepfakes (see here and here). However, with a formal training in various areas in biology, I can't help but to think about some great help in drug discovery, protein design, image augumentation for CNN, e.t.c. Many of which are already driving computational biology research today. In this talk, I present the original paper on GAN.

A simple representation of GAN

Talk

You can watch the talk in this notebook below, or you can access it here.

In [1]:
from IPython.display import YouTubeVideo
YouTubeVideo('w3XEKD4frs0', width=500, height=600)
Out[1]:

Paper

If you want you can read the paper in this notebook or read it here.

In [2]:
from IPython.display import IFrame
IFrame('https://arxiv.org/pdf/1406.2661.pdf', width=500, height=600)
Out[2]: