ML之xgboost:利用xgboost算法(sklearn+GridSearchCV)训练mushroom蘑菇数据集(22+1,6513+1611)来预测蘑菇是否毒性(二分类预测)

简介: ML之xgboost:利用xgboost算法(sklearn+GridSearchCV)训练mushroom蘑菇数据集(22+1,6513+1611)来预测蘑菇是否毒性(二分类预测)

输出结

image.png

image.png

image.png


 

设计思

image.png

 

核心代

from sklearn.grid_search import GridSearchCV

param_test = { 'n_estimators': range(1, 51, 1)}

clf = GridSearchCV(estimator = bst, param_grid = param_test, cv=5)

clf.fit(X_train, y_train)

clf.grid_scores_, clf.best_params_, clf.best_score_

grid_scores_mean= [0.90542,  0.94749,  0.90542,  0.94749,  0.90573,  0.94718,

                  0.90542,  0.94242,  0.94473,  0.97482,  0.94887,  0.97850,

                  0.97298,  0.97850,  0.97298,  0.97850,  0.97850,  0.97850,

                  0.97850,  0.97850,  0.97850,  0.97850,  0.97850,  0.97850,

                  0.97850,  0.97804,  0.97774,  0.97835,  0.98296,  0.98419,    

                  0.98342,  0.98372,  0.98419,  0.98419,  0.98419,  0.98419,

                  0.98419,  0.98419,  0.98419,  0.98419,  0.98419,  0.98419,

                  0.98419,  0.98419,  0.98419,  0.98419,  0.98419,  0.98419,

                  0.98419 ]

grid_scores_std = [0.08996,  0.07458,  0.08996,  0.07458,  0.09028,  0.07436,  

                  0.08996,  0.07331,  0.07739,  0.02235,  0.07621,  0.02387,  

                  0.03186,  0.02387,  0.03186,  0.02387,  0.02387,  0.02387,  

                  0.02387,  0.02387,  0.02387,  0.02387,  0.02387,  0.02387,  

                  0.02387,  0.02365,  0.02337,  0.02383,  0.01963,  0.02040,  

                  0.01988,  0.02008,  0.02040,  0.02040,  0.02040,  0.02040,  

                  0.02040,  0.02040,  0.02040,  0.02040,  0.02040,  0.02040,  

                  0.02040,  0.02040,  0.02040,  0.02040,  0.02040,  0.02040,  

                  0.02040  ]

#7-CrVa交叉验证曲线可视化

import matplotlib.pyplot as plt

x = range(0,len(grid_scores_mean))

y1 = grid_scores_mean

y2 = grid_scores_std

Xlabel = 'n_estimators'

Ylabel = 'value'

title = 'mushroom datase: xgboost(sklearn+GridSearchCV) model'

plt.plot(x,y1,'r',label='Mean')                      #绘制mean曲线

plt.plot(x,y2,'g',label='Std')                       #绘制std曲线

plt.rcParams['font.sans-serif']=['Times New Roman']  #手动添加中文字体,或者['font.sans-serif'] = ['FangSong']   SimHei

#myfont = matplotlib.font_manager.FontProperties(fname='C:/Windows/Fonts/msyh.ttf')  #也可以指定win系统字体路径

plt.rcParams['axes.unicode_minus'] = False  #对坐标轴的负号进行正常显示

plt.xlabel(Xlabel)

plt.ylabel(Ylabel)

plt.title(title)

plt.legend(loc=1)  

plt.show()


相关文章
|
7月前
|
机器学习/深度学习 Dragonfly 人工智能
基于蜻蜓算法优化支持向量机(DA-SVM)的数据多特征分类预测研究(Matlab代码实现)
基于蜻蜓算法优化支持向量机(DA-SVM)的数据多特征分类预测研究(Matlab代码实现)
173 1
|
6月前
|
机器学习/深度学习 算法 调度
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
492 0
|
5月前
|
开发框架 算法 .NET
基于ADMM无穷范数检测算法的MIMO通信系统信号检测MATLAB仿真,对比ML,MMSE,ZF以及LAMA
简介:本文介绍基于ADMM的MIMO信号检测算法,结合无穷范数优化与交替方向乘子法,降低计算复杂度并提升检测性能。涵盖MATLAB 2024b实现效果图、核心代码及详细注释,并对比ML、MMSE、ZF、OCD_MMSE与LAMA等算法。重点分析LAMA基于消息传递的低复杂度优势,适用于大规模MIMO系统,为通信系统检测提供理论支持与实践方案。(238字)
|
7月前
|
机器学习/深度学习 传感器 数据采集
【23年新算法】基于鱼鹰算法OOA-Transformer-BiLSTM多特征分类预测附Matlab代码 (多输入单输出)(Matlab代码实现)
【23年新算法】基于鱼鹰算法OOA-Transformer-BiLSTM多特征分类预测附Matlab代码 (多输入单输出)(Matlab代码实现)
477 0
|
8月前
|
机器学习/深度学习 人工智能 算法
AP聚类算法实现三维数据点分类
AP聚类算法实现三维数据点分类
285 0
|
机器学习/深度学习 算法 数据可视化
利用SVM(支持向量机)分类算法对鸢尾花数据集进行分类
本文介绍了如何使用支持向量机(SVM)算法对鸢尾花数据集进行分类。作者通过Python的sklearn库加载数据,并利用pandas、matplotlib等工具进行数据分析和可视化。
1177 70
|
机器学习/深度学习 资源调度 算法
基于入侵野草算法的KNN分类优化matlab仿真
本程序基于入侵野草算法(IWO)优化KNN分类器,通过模拟自然界中野草的扩散与竞争过程,寻找最优特征组合和超参数。核心步骤包括初始化、繁殖、变异和选择,以提升KNN分类效果。程序在MATLAB2022A上运行,展示了优化后的分类性能。该方法适用于高维数据和复杂分类任务,显著提高了分类准确性。
|
移动开发 算法 前端开发
前端常用算法全解:特征梳理、复杂度比较、分类解读与示例展示
前端常用算法全解:特征梳理、复杂度比较、分类解读与示例展示
464 0
|
5月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
514 0
|
5月前
|
数据采集 分布式计算 并行计算
mRMR算法实现特征选择-MATLAB
mRMR算法实现特征选择-MATLAB
339 2

热门文章

最新文章