prajwalhchalawadi/Android-Malware-Detection-

GitHub: prajwalhchalawadi/Android-Malware-Detection-

利用1D/2D CNN和可解释AI技术对Android应用进行恶意软件静态分析与分类的机器学习项目。

Stars: 0 | Forks: 0

# Android-Malware-Detection- 使用 CNN 和特征分析进行恶意软件分类的机器学习项目 # 使用 CNN 进行 Android 恶意软件检测 # 使用 CNN 与 Explainable AI 进行 Android 恶意软件检测 ## 📌 概述 本项目专注于使用深度学习技术将 Android 应用程序检测为**恶意软件**或**正常软件**。我们利用从应用程序中提取的静态特征来训练卷积神经网络 (CNN),并应用可解释性技术来解释模型的决策。 ## 📊 数据集 - 总样本数:4464 个 Android 应用程序 - 特征:241 个静态特征 - 类别:恶意软件,正常软件 ## ⚙️ 方法论 ### 1D CNN (基于特征的模型) - 使用结构化的 CSV 数据构建 1D CNN - 捕获静态特征之间的关系 ### 2D CNN (基于图像的模型) - 将特征向量转换为灰度图像 - 应用 2D CNN 分析空间特征表示 ### 模型评估 - 应用了 **5 折交叉验证 (5-Fold Cross Validation)** - 与 **Random Forest 模型**的性能进行了比较 ## 🔍 可解释 AI (Explainable AI) - **Grad-CAM**:用于可视化 CNN 模型中的特征重要性 - **LIME**:用于提供预测的局部可解释性 - 有助于理解*为什么*某个预测会被分类为恶意软件 ## 📈 结果 - 达到了 **95–97% 的准确率** - 在交叉验证中表现稳定 - 识别出了影响恶意软件检测的关键特征 ## 🛠️ 技术栈 - Python - TensorFlow / Keras - Scikit-learn - Google Colab - NumPy, Pandas, Matplotlib ## ▶️ 运行说明 1. 在 **Google Colab** 中打开 Notebook 2. 上传数据集 (CSV 文件) 3. 按顺序运行所有单元格 4. 查看: - 模型准确率 - Grad-CAM 可视化 - 特征重要性输出 ## 📸 输出示例 (在此处添加截图:准确率曲线图、Grad-CAM 结果等) ## 📌 核心亮点 - 混合方法:基于特征的 CNN + 基于图像的 CNN - 高度关注 **可解释 AI (Explainable AI)** - 结合真实数据集的实际应用 - 适用于网络安全和 ML 应用程序 ## 👨‍💻 作者 **Prajwal H Chalawadi** 电子与通信工程师
标签:1D CNN, 2D CNN, AMSI绕过, Android恶意软件检测, Apex, CNN, Google Colab, Grad-CAM, Keras, LIME, Matplotlib, NumPy, Python, Scikit-learn, TensorFlow, XAI, 交叉验证, 人工智能安全, 卷积神经网络, 可解释人工智能, 合规性, 图像表示, 威胁检测, 密钥泄露防护, 数据科学, 无后门, 机器学习, 机器学习安全, 深度学习, 特征分析, 资源验证, 逆向工具, 随机森林, 静态特征提取