Using Adversarial Defense Methods to Improve the Performance of Deep-Neural-Network-Controlled Automatic Driving Systems
Date
2022
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Tartu Ülikool
Abstract
Machine learning approaches to Automatic Driving Systems (ADS) that rely upon
computer vision and deep neural networks have demonstrated encouraging results in the
past. Some believe that the so-called end-to-end strategy is the only way to deploy ADS
at scale in the future. However, training ADS neural networks requires large amounts of
data in various weather and lighting conditions to attain satisfactory results.
Literature suggests that adversarial machine learning attacks, which are designed to
stealthily fool neural networks, and their counterdefense measures, can be used to help
Convolutional Neural Networks (CNNs) to generalize to unseen conditions. However,
there is no understanding of how adversarial defenses can improve the capacity of an
end-to-end self-driving CNN to generalize to never-seen-before lighting conditions.
This thesis project aims to understand how adversarial attacks and their counterdefense
training methods can help machine learning neural networks increase resilience
and generalize better to different lighting conditions. First, a scaled driving platform and
a neural network architecture to train CNNs were selected. Then, an experiment was
designed and implemented to evaluate the trained CNNs’ performance in a real-world
setup.
In conclusion, the results have shown that adversarial defense methods lead to better
performance. Shorter training times become possible because it solves the problem of
collecting data in different lighting conditions.
TensorFlow 2 and Keras were used for training, and a Raspberry Pi 4 computer was
used for driving a scaled ADS in a real-world setting. The system operates at 20 frames
per second.
Description
Keywords
Automatic Driving Systems, adversarial attacks, adversarial machine learning, opensource, CNN, deep learning, Raspberry Pi, behavioral cloning