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()


相关文章
|
4月前
|
机器学习/深度学习 Dragonfly 人工智能
基于蜻蜓算法优化支持向量机(DA-SVM)的数据多特征分类预测研究(Matlab代码实现)
基于蜻蜓算法优化支持向量机(DA-SVM)的数据多特征分类预测研究(Matlab代码实现)
133 1
|
3月前
|
机器学习/深度学习 算法 调度
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
401 0
|
3月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于WOA鲸鱼优化的XGBoost序列预测算法matlab仿真
基于WOA优化XGBoost的序列预测算法,利用鲸鱼优化算法自动寻优超参数,提升预测精度。结合MATLAB实现,适用于金融、气象等领域,具有较强非线性拟合能力,实验结果表明该方法显著优于传统模型。(238字)
|
4月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于PSO粒子群优化的XGBoost时间序列预测算法matlab仿真
本程序基于Matlab 2024b实现,结合粒子群优化(PSO)与XGBoost算法,用于时间序列预测。通过PSO优化XGBoost超参数,提升预测精度。程序包含完整注释与操作视频,运行后生成预测效果图及性能评估指标RMSE。
|
4月前
|
机器学习/深度学习 传感器 数据采集
【23年新算法】基于鱼鹰算法OOA-Transformer-BiLSTM多特征分类预测附Matlab代码 (多输入单输出)(Matlab代码实现)
【23年新算法】基于鱼鹰算法OOA-Transformer-BiLSTM多特征分类预测附Matlab代码 (多输入单输出)(Matlab代码实现)
376 0
|
5月前
|
机器学习/深度学习 人工智能 算法
AP聚类算法实现三维数据点分类
AP聚类算法实现三维数据点分类
205 0
|
2月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
313 0
|
2月前
|
数据采集 分布式计算 并行计算
mRMR算法实现特征选择-MATLAB
mRMR算法实现特征选择-MATLAB
224 2
|
3月前
|
传感器 机器学习/深度学习 编解码
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
231 3
|
2月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
190 8

热门文章

最新文章