--- license: cc-by-nc-4.0 language: - en - de metrics: - accuracy - f1 - precision - recall - roc_auc tags: - IDS, - SecIDS-CNN - Cybersecurity - automotive - pi - jetson - CNN - fast - small --- # SecIDS-CNN: Advanced Convolutional Neural Network for Intrusion Detection in Cybersecurity and Automotive Applications ### Model Description SecIDS-CNN is a high-performance Convolutional Neural Network (CNN) model developed specifically for Intrusion Detection Systems (IDS) in cybersecurity and automotive network applications. Leveraging temporal patterns in network traffic, SecIDS-CNN identifies and classifies malicious activity with high accuracy, designed to meet the real-time security demands of vehicular and automotive networks. This model supports proactive threat mitigation, helping to protect in-vehicle and connected systems against cyber threats that could impact operational safety. - **Developed by:** Keyvan Hardani - **Model Type:** Convolutional Neural Network (CNN) for Intrusion Detection - **Languages:** English, German - **License:** Creative Commons Attribution Non Commercial 4.0 (cc-by-nc-4.0) - **Finetuned from model:** None ### Model Sources - **Repository:** https://github.com/Keyvanhardani/SecIDS-CNN.git ## Uses ### Direct Use SecIDS-CNN can be directly deployed for real-time intrusion detection within cybersecurity monitoring systems. Its design supports seamless integration into automotive communication networks, enabling anomaly detection within complex, connected vehicular systems. ### Downstream Use Potential applications include broader network monitoring platforms and integrated security systems in automotive and connected vehicle environments. ### Out-of-Scope Use SecIDS-CNN is not suited for non-network data or applications outside the network security and automotive domains. Misuse may include attempts to deploy it in systems without real-time requirements or in unrelated cybersecurity needs. ## Bias, Risks, and Limitations SecIDS-CNN, while highly accurate, may have a minor bias toward benign traffic when optimized for recall, which could lead to rare false negatives. Additionally, its effectiveness depends on access to live network data, essential for real-time intrusion detection. ### Recommendations Users should be aware of the model’s optimal use cases in real-time network environments and its limitations in handling unrelated or non-automotive network types. ## How to Get Started with SecIDS-CNN To get started with SecIDS-CNN, you can import the model and use it in your Python project. Follow the steps below: ### Step 1: Install Dependencies Clone the repository and install the necessary dependencies: ```bash git clone https://github.com/Keyvanhardani/SecIDS-CNN.git cd SecIDS-CNN pip install -r requirements.txt ``` ### Step 2: Import the Model Once dependencies are installed, you can import the model into your Python project: ```python from secids_cnn import SecIDSModel ``` ### Step 3: Load and Use the Model To evaluate SecIDS-CNN’s real-time detection on sample network traffic data: ```python # Initialize the model model = SecIDSModel() # Load your network traffic data (example) data = load_network_data('path/to/your/data.csv') # Make predictions predictions = model.predict(data) # Output results print("Intrusion Detection Results:", predictions) ``` This setup allows you to test SecIDS-CNN on provided sample data or integrate it into larger projects for real-time intrusion detection. ## Training Details ### Training Data The dataset for SecIDS-CNN consists of labeled network traffic, distinguishing between benign and malicious activity. It includes data from general network and automotive sources, with features capturing packet flows, timing, and network behavior. ### Training Procedure The model’s training pipeline encompasses data preprocessing, feature extraction, and training on temporal network data patterns. #### Training Hyperparameters - **Precision Type:** FP32 - **Batch Size:** 32 - **Epochs:** 50 ### Compute Requirements SecIDS-CNN was trained on a multi-GPU setup, with optimizations for real-time performance in security-critical applications. ## Evaluation ### Testing Data and Metrics #### Testing Data The model was evaluated on a balanced set of benign and malicious network traffic records, sourced from both general cybersecurity and automotive domains. #### Metrics SecIDS-CNN’s evaluation included accuracy, precision, recall, F1-score, ROC curve, and AUC, chosen for their relevance to classification performance in security applications. ### Results - **Accuracy:** 97.72% - **Precision:** 97.74% - **Recall:** 97.72% - **F1-Score:** 0.9772 SecIDS-CNN demonstrated high reliability, achieving almost 98% accuracy in intrusion detection and benign traffic classification. ## Model Examination Feature importance was analyzed using SHAP (SHapley Additive exPlanations) to gain insight into feature contributions. This interpretability measure supports transparency and offers guidance for refining the model for intrusion detection. - **Top Features:** Packet_Length_Mean, Flow_Duration - **Least Impactful Features:** Bwd_Packet_Length_Mean, Idle_Mean ## Environmental Impact The estimated carbon footprint for training SecIDS-CNN was calculated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute). - **Hardware:** Multi-GPU setup (NVIDIA RTX 4070, RTX 4090Ti) - **Training Duration:** Batch Size: 32 Epochs: 50 Training Duration: ~72 hours on RTX 4090Ti Emissions: ~15 kg CO₂ ## Technical Specifications ### Model Architecture SecIDS-CNN utilizes a multi-layer convolutional architecture, optimized for high-throughput analysis of network traffic data, with an emphasis on capturing time-based patterns. ### Compute Infrastructure - **Software:** TensorFlow, Python, Keras ### Supported Hardware This model is lightweight and versatile for inference across a wide range of hardware, including: - **CPUs**: Compatible with standard CPUs, allowing easy deployment on nearly any system. - **GPUs**: Optimized for all GPUs (primarily used for training), but also enables faster inference if needed. - **Microcontrollers and Edge Devices**: With a small model size (~700 KB), it supports microprocessors and edge devices, such as Raspberry Pi, NVIDIA Jetson Nano, and other embedded systems. This compatibility ensures flexibility for various applications in automotive and cybersecurity environments. ## Citation **BibTeX:** ```bibtex @misc{secids-cnn, author = {Keyvan Hardani}, title = {SecIDS-CNN: Advanced Convolutional Neural Network for Intrusion Detection}, year = {2023}, note = {Available under CC BY-NC 4.0} } @misc {keyvan_hardani_2024, author = { {Keyvan Hardani} }, title = { SecIDS-CNN (Revision 5daf4a4) }, year = 2024, url = { https://huggingface.co/Keyven/SecIDS-CNN }, doi = { 10.57967/hf/3351 }, publisher = { Hugging Face } }