Understanding CNNs and implementing GANs
Convolutional neural networks (CNNs) are great for computer vision tasks. For example, you might partly depend on facial recognition techniques to secure your computing devices, buildings, or other infrastructure. By adding facial recognition to names and passwords (or other biometrics), you provide a second level of protection. However, as shown in the Seeing adversarial attacks in action section of Chapter 3, Mitigating Inference Risk by Avoiding Adversarial Machine Learning Attacks, it’s somewhat easy to fool the facial recognition application.
The problem isn’t the facial recognition application but rather the underlying model, which has been trained with good pictures of the various employees. The way around this problem is to create a dataset that contains both real and fake images of the employees so that the CNN learns to recognize the difference. Figure 10.18 shows a potential setup for training purposes.