Skip to content

This project implements a Network Intrusion Detection System using unsupervised machine learning techniques like Isolation Forests and Autoencoders to detect anomalous patterns in network traffic. These anomalies could signal security breaches, malware, or system malfunctions.

License

Notifications You must be signed in to change notification settings

vigkrishna/Computer-Network-Intrusion-Detection

Repository files navigation

πŸ” Network Intrusion Detection System (NIDS) - Unsupervised Learning

This project implements a Network Intrusion Detection System using unsupervised machine learning techniques like Isolation Forests and Autoencoders to detect anomalous patterns in network traffic. These anomalies could signal security breaches, malware, or system malfunctions.

πŸ“Œ Objective

To identify potential threats or unusual behavior in network traffic without requiring labeled data, leveraging the KDD Cup 1999 dataset for training and evaluation.

🧠 Techniques Used

  • Isolation Forest: Tree-based algorithm that isolates anomalies rather than profiling normal instances.
  • Autoencoder (Keras): Deep neural network trained to reconstruct input; anomalies are identified based on high reconstruction error.

πŸ“Š Dataset

βš™οΈ Features

  • Preprocessing of categorical and numerical network features
  • Feature normalization using StandardScaler
  • Dual anomaly detection pipelines:
    • IsolationForest with contamination tuning
    • Deep Autoencoder using reconstruction error
  • Export of labeled anomalies to CSV for analysis

πŸ“ Output

  • anomaly_results_kdd.csv contains:
    • anomaly_isolation_forest: -1 = anomaly, 1 = normal
    • anomaly_autoencoder: 1 = anomaly, 0 = normal

πŸš€ Future Enhancements

  • Real-time network traffic analysis
  • Anomaly visualization using PCA/t-SNE
  • Performance comparison with supervised classifiers (e.g., SVM, Random Forest)
  • Containerization (Docker) for deployment

πŸ“¦ Installation

pip install pandas scikit-learn tensorflow keras

About

This project implements a Network Intrusion Detection System using unsupervised machine learning techniques like Isolation Forests and Autoencoders to detect anomalous patterns in network traffic. These anomalies could signal security breaches, malware, or system malfunctions.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages