This project focuses on improving the accuracy of an Intrusion Detection System (IDS) by employing Generative Adversarial Networks (GANs) to enhance the representation of minority attack classes in the dataset.
The UNSW-NB15 dataset was used to classify multiple types of network intrusions using machine learning algorithms such as Decision Tree, K-Nearest Neighbors (KNN), and Random Forest.
Initially, the multi-class classification metrics like F1-score, recall, and precision were unsatisfactory due to the imbalance in the dataset.
However, after using a GAN to augment the minority classes, all multi-class metrics improved significantly, achieving 96% across the board. The project was implemented in Python, with TensorFlow used for building the GAN.
1. Build an Intrusion Detection System (IDS) using the NF-UNSW-NB15 dataset to classify multiple types of network attacks.
2. Apply machine learning models such as Decision Tree, K-Nearest Neighbors (KNN), and Random Forest for classification.
3. Analyze and improve multi-class classification metrics (F1-score, recall, precision) that were initially poor due to dataset imbalance.
4. Use a Generative Adversarial Network (GAN) to increase the representation of minority classes and improve the classification performance.
5. Achieve 96% or higher in all multi-class metrics after using GAN for data augmentation.
6. Develop the entire project using Python, with TensorFlow for GAN implementation.
7. Ensure the IDS model can efficiently detect various types of network attacks with enhanced accuracy and reliability.