chinmayee-04/NeuroGuard-Adaptive-Cognitive-Threat-Mitigation-System

GitHub: chinmayee-04/NeuroGuard-Adaptive-Cognitive-Threat-Mitigation-System

NeuroGuard 是一个结合多种机器学习与深度学习模型的网络入侵检测系统,旨在通过数据驱动方式将网络流量自动分类为正常或攻击。

Stars: 0 | Forks: 0

# NeuroGuard:自适应认知威胁缓解系统 ![Python](https://img.shields.io/badge/Python-3.9+-blue) ![License](https://img.shields.io/badge/License-MIT-green) ![Status](https://img.shields.io/badge/Status-Phase%20I-orange) ![University](https://img.shields.io/badge/University-Sathyabama-red) ## 概述 NeuroGuard 是一个基于 KDD Cup 数据集训练的实时网络入侵检测系统。它应用了多种机器学习和深度学习模型,将网络流量分类为正常或攻击,并具备实时流量模拟和自动化威胁响应功能。 ## 数据集 - **KDDTrain+.txt** - 包含 43 个网络流量特征的 NSL-KDD 数据集 - 标签分类为:`normal` 或 `attack` - 特征包括:duration、protocol_type、service、flag、src_bytes、dst_bytes 以及 38 个额外的网络级属性 ## 已实现的模型 | 模型 | 类型 | |-------|------| | 逻辑回归 | 分类 | | K-Nearest Neighbors (k=20) | 分类 | | 高斯朴素贝叶斯 | 分类 | | 线性 SVC | 分类 | | 决策树 | 分类 | | 随机森林 | 分类(最佳模型) | | XGBoost | 回归 | | 深度神经网络 | 二分类 | | PCA + 随机森林 | 降维 + 分类 | ## 工作流程 1. 数据加载 - 从 Google Drive 加载 KDDTrain+.txt 2. 数据预处理 - 分配列名,对标签进行编码,使用 RobustScaler 对特征进行缩放 3. 探索性数据分析 (EDA) - 使用饼图可视化协议类型和攻击分布 4. 特征工程 - 应用 PCA(20 个主成分)进行降维 5. 模型训练 - 训练并评估所有模型,比较准确率、精确率、召回率和 F1 分数 6. 深度学习 - 使用 TensorFlow/Keras 构建并训练全连接神经网络 7. 保存最佳模型 - 随机森林被保存为 `best_random_forest_model.pkl` 8. 实时模拟 - 使用经过 PCA 转换的测试数据模拟实时流量,并逐行预测威胁 ## 技术栈 | 类别 | 工具 | |----------|-------| | 编程语言 | Python 3.9+ | | 深度学习 | TensorFlow, Keras | | 机器学习 | Scikit-learn, XGBoost | | 数据处理 | Pandas, NumPy | | 数据可视化 | Matplotlib, Seaborn | | 降维 | PCA(20 个主成分) | | 模型保存 | Joblib | | 平台 | Google Colab | | 数据集 | NSL-KDD (KDDTrain+.txt) | ## 仓库结构 NeuroGuard/ ├── notebooks/ │ └── MCSA__ipynb.ipynb ├── dataset/ │ └── KDDTrain+.txt ├── models/ │ └── best_random_forest_model.pkl ├── report/ │ └── final_report_42614152.pdf ├── research/ │ └── Neuroguard_research_paper.pdf ├── README.md └── requirements.txt
标签:Apex, Python, 无后门, 机器学习, 深度学习, 网络安全, 逆向工具, 隐私保护