Evolving Generative Adversarial Networks | Two Minute Papers #242

Generative adversarial networks pit a generator against a discriminator, but training is unstable and often produces limited image variety. An evolutionary algorithm trains multiple generators as a population, selecting the fittest based on image quality and diversity, yielding more stable training and better results on faces and bedrooms.
Chapters
Dear fellow scholars, this is two minute papers. With the recent ascendancy of neural network based techniques, we have witnessed amazing algorithms that are able to take an image from a video game and translate it into reality and the other way around. Or they can also translate daytime images to their nighttime versions, or change summer to winter and back. Some AI based algorithms can also create near photorealistic images from our sketches. So the first question how is this wizardry even possible? These techniques are implemented by using generative adversarial networks GANs. In short, this is an architecture where two neural networks battle each other. The generator network is the artist who tries to create convincing real looking images. The discriminator network is the critic that tries to tell a fake image from a real one. The artist learns from the feedback of the critic and and will improve itself to come up with better quality images. And in the meantime, the critic also develops a sharper eye for fake images. These two adversaries push each other until they both become adept at their tasks. However, the training of these GANS is fraught with difficulties. For instance, it is not guaranteed that this process converges to a point and therefore it matters a great deal when we stop training the networks. This makes reproducing some works very challenging and is generally not a desirable property of GANs. It is also possible that the generator starts focusing on a select set of inputs and refuses to generate anything else. A phenomenon we refer to as mode collapse. So how could we possibly defeat these issues? This work presents a technique that mimics the steps of evolution in evaluation, selection and variation. First, this means that not one but many generator networks are trained and only the ones that provide sufficient quality and diversity in their images will be preserved. We start with an initial population of generator networks and evaluate the fitness of each of them. The better and more diverse images they produce, the more fit they are. The more fit they are, the more likely they are to survive the selection step, which where we eliminate the most unfit candidates. Okay, so now we see how a subset of these networks become the victim of evolution. This is how networks get eaten, if you will. But how do we produce new ones? And this is how we arrive to the variation step, where new generator networks are created by introducing variations to the networks that are still alive in this environment. This simulates the creation of an offspring and will provide the next set of candidates for the next selection step. And. And we hope that if we play this game over a long time, we get more and more resilient offsprings. The resulting algorithm can be trained in a more stable way, and it can create new bedroom images when being shown a database of bedrooms. When compared to the state of the art, we see that this evolutionary approach offers high quality images and more diversity in the outputs. It can also generate new human faces that are quite decent. They are clearly not perfect, but a technique that can pull this off consistently will be an excellent baseline for newer and better research works in the near future. We are also getting very close to an era where we can generate thousands of convincing digital characters from scratch, to name just one application. What a time to be alive. Thanks for watching and for your generous support and I'll see you next time.










