aioz-ai / FADNet

Deep Federated Learning for Autonomous Driving (IV'22)
https://ai.aioz.io/research/FADNet1/
MIT License
35 stars 5 forks source link
autonomous autonomous-driving deep-federated-learning deep-learning federated-learning

Deep Federated Learning for Autonomous Driving

Autonomous driving is an active research topic in both academia and industry. However, most of the existing solutions focus on improving the accuracy by training learnable models with centralized large-scale data. Therefore, these methods do not take into account the user's privacy. In this paper, we present a new approach to learn autonomous driving policy while respecting privacy concerns. We propose a peer-to-peer Deep Federated Learning (DFL) approach to train deep architectures in a fully decentralized manner and remove the need for central orchestration. We design a new Federated Autonomous Driving network (FADNet) that can improve the model stability, ensure convergence, and handle imbalanced data distribution problems while is being trained with federated learning methods. Intensively experimental results on three datasets show that our approach with FADNet and DFL achieves superior accuracy compared with other recent methods. Furthermore, our approach can maintain privacy by not collecting user data to a central server.

Fig-1

Figure 1: The architecture of our Federated Autonomous Driving Net (FADNet).

This repository is the implementation of a decentralized federated learning approach for Autonomous Driving. We benchmark our method on three public datasets: Udacity, Carla, and Gazebo.

For the detail, please refer to link.

This repository is based on and inspired by @Othmane Marfoq work. We sincerely thank for their sharing of the codes.

Summary

Prerequisites

PYTHON 3.6

CUDA 9.2

Please install dependence package by run following command:

pip install -r requirements.txt

Datasets

Federated Learning for Autonomous Driving

Important: Before running any command lines in this section, please run following command to access 'graph_utils' folder:

cd graph_utils

And now, you are in 'graph_utils' folder.

Please download graph data at link and put into data folder.

Training

bash train_gazebo_gaia.sh

Pretrained models and Testing

We provide the pretrained models which are trained on GAZEBO dataset with GAIA network by our method at the last epoch. Please download at link and extracted them into the "pretrained_models/DRIVING-GAZEBO_GAIA" folder.

The models can be evaluated in GAZEBO train and test set via:

bash test_gazebo_gaia.sh

Update 20/09/2022

Citation

If you use this code as part of any published research, we'd really appreciate it if you could cite the following paper:

@inproceedings{nguyen2022_DFL,
  title={Deep Federated Learning for Autonomous Driving},
  author={Nguyen, Anh and Do, Tuong and Tran, Minh and Nguyen, Binh X and Duong, Chien and Phan, Tu and Tjiputra, Erman and Tran, Quang D},
  booktitle={33rd IEEE Intelligent Vehicles Symposium},
  year={2022}
}

License

MIT License

More information

AIOZ AI Homepage: https://ai.aioz.io