A GAN is a type of model that competes against itself to improve. It does this with two different machine learning models. One neural network. called the generator, generates an image and the other neural network, called the discriminator, tries to predict which one is real or fake. The generator’s goal is to fool the discriminator while the discriminator's goal is to predict the real image from the one generated from the generator.
As the name suggests, this type of machine learning model generates media. Typically, for GAN’s they generate images but they can create anything. For this project, I wrote a GAN software from scratch and had it try to create new English-sounding words. To train the GAN, I grabbed a bunch of word data from Wikipedia and trained it right in the browser.
Below is a working model of one! It does however produce mediocre results because of how unstable this type of machine learning model is.
|