sahibjitk562000-del/cyber-threat-intelligence-ml

GitHub: sahibjitk562000-del/cyber-threat-intelligence-ml

应用决策树、随机森林和孤立森林等机器学习算法对恶意IP地址进行分类和异常检测的课程作业项目。

Stars: 0 | Forks: 0

# 网络威胁情报 - 机器学习分类 ## CMP7239 应用机器学习课程作业 **学号:** 25198619 ## 📋 项目概述 本项目应用机器学习技术,使用 **Global Cyber Threat Intelligence Dataset 2026** 对恶意 IP 地址进行分类和优先级排序。 ### 使用的模型: - **Decision Tree** - 可解释的基于规则的分类 - **Random Forest** - 高精度的集成学习 - **Isolation Forest** - 无监督异常检测 ## 📊 数据集 | 属性 | 详情 | |-----------|---------| | 来源 | Kaggle - Global Cyber Threat Intelligence Dataset 2026 | | 记录数 | 6,250 | | 特征数 | 16 | | 格式 | CSV | **数据集链接:** [Global Cyber Threat Intelligence Dataset 2026](https://www.kaggle.com/datasets/chuneeb/global-cyber-threat-intelligence-dataset-2026) ## 📁 仓库结构 ├── code/ # 所有 Python 脚本 ├── visualizations/ # 所有图表和图像 ├── data/ # 数据集(已排除 - 可在 Kaggle 获取) └── report/ # 最终报告 PDF ## 📊 结果 | 模型 | Accuracy | Precision | Recall | F1-Score | |-------|----------|-----------|--------|----------| | Decision Tree | 1.0000 | 1.0000 | 1.0000 | 1.0000 | | Random Forest | 1.0000 | 1.0000 | 1.0000 | 1.0000 | | Isolation Forest | 0.9237 | 1.0000 | 0.9237 | 0.9603 | **关键发现:** Isolation Forest 识别出 **477 个异常**(占总记录数的 7.63%)。 ## 🔧 环境要求 ``` pip install pandas numpy scikit-learn matplotlib seaborn # 导航到 code 文件夹 cd code # 运行 data exploration python step1_load_data.py python step2_view_data.py python step3_data_types.py python step4_missing_values.py python step5_unique_values.py python step6_value_counts.py python step7_country_chart.py python step8_weekday_chart.py python step9_continent_chart.py python step10_hour_chart.py python step11_save_data.py python step12_summary.py # 运行 machine learning models python ml_step1_load_data.py python ml_step2_encode.py python ml_step3_split.py python ml_step4_decision_tree.py python ml_step5_random_forest.py python ml_step6_isolation_forest.py python ml_step7_compare.py python ml_step8_charts.py 📝 Author Sahibjit Kaur Student ID: 25198619 Module: CMP7239 - Applied Machine Learning Birmingham City University 🔗 Dataset Source Global Cyber Threat Intelligence Dataset 2026 - Kaggle ```
标签:Apex, Python, Scikit-learn, 代码示例, 威胁情报分析, 数据分析, 数据分类, 无后门, 机器学习, 逆向工具