ephremkadja01-coder/DATACODE-TRAIN

GitHub: ephremkadja01-coder/DATACODE-TRAIN

基于UNSW-NB15数据集构建机器学习pipeline,通过EDA、特征工程和模型优化实现网络入侵流量的精准分类。

Stars: 1 | Forks: 0

# Cyber-IDS 项目:基于 UNSW-NB15 使用 Machine Learning 进行网络入侵检测 ## 项目简介 本代码库汇集了基于 UNSW-NB15 数据集进行网络入侵检测项目的相关成果。 目标是设计一个 Machine Learning 模型,能够精确识别不同类型的网络流量,无论是合法流量还是恶意流量。 该项目同时也作为实践平台,用于试验高级的 Feature Engineering、数据分析和分类模型优化技术。 主要评估指标:Accuracy。 ## 团队组织 为了加快实验速度并充分发挥每位成员的技能,我们对工作进行了分工。 ### 探索性数据分析 职责: * 分析类别分布 * 分析正常流量与攻击流量之间的不平衡性 * 识别最具信息量的变量 * 分析预测误差 * 分析混淆矩阵 ### 特征工程 职责: * 数据清洗与准备 * 类别变量编码 * 创建具有区分度的新变量 * 降低数据中的噪声 * 改善类别之间的分离度 ### Machine Learning 与优化 职责: * 实施交叉验证 * 处理类别不平衡问题 * 训练模型 * 超参数优化 * 生成提交文件 测试的模型: * CatBoost * LightGBM * XGBoost ## 项目结构 ``` Cyber-IDS/ │ ├── data/ │ ├── train.csv │ ├── test.csv │ └── validation.csv │ ├── notebooks/ │ ├── 1_eda_proportions.ipynb │ ├── 2_feature_generation.ipynb │ └── 3_ml_accuracy_opt.ipynb │ ├── src/ │ └── utils.py │ └── README.md ``` ## 工作 Pipeline 1. 数据探索与理解 2. 变量清洗与准备 3. 创建新特征 4. 交叉验证与实验 5. 模型优化 6. 生成最终预测 7. 性能分析 ## 使用的技术 * Python * Pandas * NumPy * Scikit-Learn * CatBoost * LightGBM * XGBoost * Matplotlib * Seaborn * Jupyter Notebook ## 技术目标 * 理解网络流量的特征 * 有效检测恶意活动 * 减少分类错误 * 构建可复现的 pipeline * 通过 Feature Engineering 提升性能 * 对比多种 Machine Learning 算法 ## 结果 实验主要侧重于: * Feature Engineering 的影响 * 类别不平衡问题的处理 * CatBoost、LightGBM 和 XGBoost 之间的对比 * Accuracy 的逐步提升 获得的实验结果和最佳配置将在实验过程中逐步记录并形成文档。
标签:Apex, NoSQL, Python, 数据科学, 无后门, 机器学习, 特征工程, 网络安全, 资源验证, 逆向工具, 隐私保护