Adversarial Robustness of Neural Networks

Adversarial Robustness of Neural Networks

Neural networks have shown impressive performance across various tasks such as classification, segmentation etc. They consist of interconnected sets of neurons mimicking the human brain. Neural networks are trained using a gradient descent algorithm that updates the parameters of the network. However, neural networks are brittle and are prone to adversarial attacks.

In this project, we will learn techniques to perform adversarial attacks on already trained neural networks. We will also visualize the input images with and without adversarial noise. We will train networks to identify adversarial examples. Finally, we will understand mitigation methods such as adversarial fine-tuning. We will be using the PyTorch library to implement the logic for training neural networks and classifiers. We will also be using Adversarial Robustness Toolbox (ART), a Python library to perform adversarial attacks. The input images will be visualized using the Matplotlib library.