Ceci n’est pas un canard – Machine Learning and Generative Adversarial Networks

This week I gave a talk on Generative Adversarial Networks (GANs) to the Thursdays Matter skillscast group. A link to the recording of the talk is below.

https://skillsmatter.com/skillscasts/14837-ceci-n-est-pas-un-canard-machine-learning-and-generative-adversarial-networks

The slides from my talk are available on Slideshare:

I've written about GANs a few times in the past on here, so if you've read some of my previous stuff you might be familiar with it.

GANs use two competing neural networks to try and “outfox” each other. One network (the generator) tries to learn to make “fake” versions of the data, and the other one (the discriminator) tries to learn to distinguish the real ones from the fake ones. Both networks iteratively learn from each other. The idea being, the less able the discriminator is to tell the difference between “real” and “fake” then the better the generator is at producing fake versions of the data.

Fawkes – GANs vs GANs

In this talk I also talk about a technique being developed at the University of Chicago for “cloaking” images, called Fawkes.

The idea of Fawkes is to combat facial recognitions systems being deployed more and more in our society. The idea is to “poison” images being put out by people on social media in such a way to prevent machine learning algorithms being able to get a “lock” on them. A bit like digital “Dazzle” camouflage used on ships in the war.

The way facial recognition systems work are to try and detect “features” of someone's face such that it can group them in such a way it can determine a decision boundary between them.

In the slide above (source) you can see in the original images on the left, that an algorithm has managed to group four subjects in such a way it can draw a clear boundary between them all. Fawkes attempts to subtely modify images such that they appear to the algorithm to be somewhere else in the decision space. In the example above on the right, the algorithm is unable to distinguish between Emily and Beyoncé.

The idea is that if you ran all the images of yourself posted online to social media and the likes through Fawkes that a facial recognition system would have a harder time learning your likeness.

Upscaling video

Another example I gave was using GANs to learn to interpolate data on images and video. Given a series of images that have been reduced from colour to monochrome, a GAN can learn how to produce convincing “fake” colour images. This has been used quite effectively to colour, upscale, and smooth old film footage. e.g.: