基于预处理的小麦品种的分类和聚类+高分项目+源码

ml_project_seeds

机器学习算法与应用大作业——基于预处理的小麦品种的分类和聚类

本博文提供了完整的代码和使用教程,适合新入门的朋友参考,完整代码资源文件请转至文末的下载链接。

摘要

本项目基于python实现了seeds数据集的预处理与分类、聚类任务,使用了PCA、KPCA、LDA、KLDA四种算法进行数据预处理,使用SVM、逻辑回归、ANN三种方法对预处理与未预处理的数据进行了分类与评估,使用FCM方法对预处理与未预处理的数据进行了聚类与评估,完整地完成了项目的全部要求。实验过程中,对自己实现的预处理算法与sklearn的提供官方算法进行了对比;对比了预处理与否对分类与聚类精度的影响;对所有的算法均实现了可视化;基于pytorch框架使用自行搭建的MLP(多层感知机)神经网络对数据进行分类处理并总结效果。经过本次项目的实践,我对机器学习常用算法的理解与编程能力有了进一步提升,了解了预处理的重要性,也进行了不同机器学习算法应用在同一个问题上的对比,并认识到了各种算法的优劣,在日后解决科研难题的过程中,应当具体问题具体分析,选择最适合解决问题的那种算法。

环境配置

  • 项目环境基于python3.6构建,为确保不报错,请使用python>=3.6的版本
  • 建议使用conda命令进行python环境构建与依赖包的安装
conda create -n ml_test python=3.6
activate ml_test
  • 所需要的基本依赖包安装命令如下
conda install numpy
conda install scikit-learn
conda install matplotlib
  • 为运行KLDA,需要使用pip安装mlxtend扩充包
pip install mlxtend
  • 为运行神经网络,需要安装pytorch,使用cpu版本即可
conda install pytorch

代码说明

  • 1_1_pca_analysis.py 自己实现的PCA预处理与sklearn实现的PCA预处理效果对比
  • 1_2_kpca_analysis.py 自己实现的KPCA预处理与sklearn实现的KPCA预处理效果对比
  • 1_3_lda_analysis.py 自己实现的LDA预处理与sklearn实现的LDA预处理效果对比
  • 1_4_klda_analysis.py sklearn未实现KLDA,这里只有自己实现的KLDA,部分源码参考博客链接
  • 2_1_1_svm_raw.py 使用SVM对原始数据直接进行分类,包括不同kernel的选取对比
  • 2_1_2_svm_pca.py 使用SVM对PCA预处理后的数据进行分类,包括不同kernel的选取对比
  • 2_1_3_svm_lda.py 使用SVM对LDA预处理后的数据进行分类,包括不同kernel的选取对比
  • 2_2_1_svm_raw.py 使用逻辑回归对原始数据直接进行分类
  • 2_2_2_svm_pca.py 使用逻辑回归对PCA预处理后的数据进行分类
  • 2_2_3_svm_lda.py 使用逻辑回归对LDA预处理后的数据进行分类
  • 2_3_ann.py 使用MLP(多层感知机)对小麦品种分类
  • 3_fcm_analysis.py 使用FCM对小麦进行聚类并评估
  • dataset.py 读取小麦数据集的工具包

代码链接:

(https://download.csdn.net/download/mohen_777/89503737?spm=1001.2014.3001.5503)

  • 43
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

墨痕_777

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值