python实现xgboost算法
import matplotlib.pyplot as plt
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
from xgboost import XGBClassifier
from xgboost import plot_importance
# 加载手写数字数据集
digits = datasets.load_digits()
print(digits.data.shape)
x_train,x_test,y_train,y_test = train_test_split(digits.data,digits.target,test_size = 0.3,random_state = 33)
model = XGBClassifier(learning_rate=0.1,#n_estimatores#含义:总共迭代的次数,即决策树的个数n_estimators=1000,#max_depth#含义:树的深度,默认值为6,典型值3-10。max_depth=6,#min_child_weight#调参:值越大,越容易欠拟合;值越小,越容易过拟合#(值较大时,避免模型学习到局部的特殊样本)。min_child_weight = 1,#惩罚项系数,指定节点分裂所需的最小损失函数下降值。gamma = 0,#subsample#含义:训练每棵树时,使用的数据占全部训练集的比例。# 默认值为1,典型值为0.5-1。subsample = 0.8,#colsample_bytree#含义:训练每棵树时,使用的特征占全部特征的比例。默认值为1,典型值为0.5-1。colsample_btree = 0.8,#objective 目标函数#multi:softmax num_class=n 返回类别objective = 'multi:softmax',#scale_pos_weight#正样本的权重,在二分类任务中,当正负样本比例失衡时,设置正样本的权重,模型效果更好。例如,当正负样本比例为1:10时,scale_pos_weight=10scale_pos_weight = 1,random_state= 27)model.fit(x_train,y_train,eval_set=[(x_test,y_test)],eval_metric = 'mlogloss',early_stopping_rounds = 10,verbose = True)
#保存模型
pickle.dump(model, open("xgb.pkl", "wb"))
fig,ax = plt.subplots(figsize=(15,15))plot_importance(model,height=0.5,ax=ax,max_num_features=64)
plt.show()
#加载模型
xgb_model_loaded = pickle.load(open("xgb.pkl", "rb"))
#y_pred=xgb_model_loaded.predict(test)
y_pred = model.predict(x_test)
accuracy = accuracy_score(y_test,y_pred)
print("accuarcy: %.2f%%" % (accuracy * 100.0))
python实现xgboost算法相关推荐
- 【机器学习基础】数学推导+纯Python实现机器学习算法17:XGBoost
Python机器学习算法实现 Author:louwill Machine Learning Lab 自从陈天奇于2015年提出XGBoost以来,该模型就一直在各大数据竞赛中当作大杀器被频繁祭出.速 ...
- Python机器学习笔记:XgBoost算法(亲测)
前言 1,Xgboost简介 Xgboost是Boosting算法的其中一种,Boosting算法的思想是将许多弱分类器集成在一起,形成一个强分类器.因为Xgboost是一种提升树模型,所以它是将许多 ...
- Xgboost算法原理详解及python实现
Xgboost算法(回归树) 1.算法原理 2.对数据的要求(无需规范化) 3.算法的优缺点 4.XGB.GBDT.LR与RF 5.python代码实现 导入相关包 读取数据并预处理 训练 贝叶斯初步 ...
- xgboost算法_第113天: Python XGBoost 算法项目实战
Python 实现机器学习 如果你的机器学习预测模型表现得不尽如人意,那就用XGBoost.XGBoost算法现在已经成为很多数据工程师的重要武器. XGBoost 算法 说到XGBoost,不得不提 ...
- 基于Python贝叶斯优化XGBoost算法调参报错“TypeError: ‘float‘ object is not subscriptable”
基于Python贝叶斯优化XGBoost算法调参运行情况如下: iter target colsam- gamma max_depth min_ch- subsample 1 0.9398 0.804 ...
- 数学推导+纯Python实现机器学习算法:GBDT
Datawhale推荐 作者:louwill,Machine Learning Lab 时隔大半年,机器学习算法推导系列终于有时间继续更新了.在之前的14讲中,笔者将监督模型中主要的单模型算法基本都过 ...
- ML之RFXGBoost:分别基于RF随机森林、XGBoost算法对Titanic(泰坦尼克号)数据集进行二分类预测(乘客是否生还)
ML之RF&XGBoost:分别基于RF随机森林.XGBoost算法对Titanic(泰坦尼克号)数据集进行二分类预测(乘客是否生还) 目录 输出结果 设计思路 核心代码 输出结果 设计思路 ...
- 【机器学习基础】数学推导+纯Python实现机器学习算法30:系列总结与感悟
Python机器学习算法实现 Author:louwill Machine Learning Lab 终于到了最后的总结.从第一篇线性回归的文章开始到现在,已经接近有两年的时间了.当然,也不是纯写这3 ...
- 【机器学习基础】数学推导+纯Python实现机器学习算法24:HMM隐马尔可夫模型
Python机器学习算法实现 Author:louwill Machine Learning Lab HMM(Hidden Markov Model)也就是隐马尔可夫模型,是一种由隐藏的马尔可夫链随机 ...
- 【机器学习基础】数学推导+纯Python实现机器学习算法28:CRF条件随机场
Python机器学习算法实现 Author:louwill Machine Learning Lab 本文我们来看一下条件随机场(Conditional Random Field,CRF)模型.作为概 ...
最新文章
- cap = cv2.VideoCapture(0).read()摄像头读取图片用法
- python中的[:-1] [:,:-1] python矩阵numpy中array的冒号 逗号
- 小程序页面之间的通讯利器 - nsevent
- dm9000 driver 2
- 在keil uVision 2/uVision 3下使用伟福系列仿真器的方法:
- android启动画面白屏,Android app启动时黑屏或者白屏的原因及解决办法
- linux 主机的网络属性基本配置:
- [导入]Asp.net 2.0 自定义控件开发[创建自定义浮动菜单FloadMenu控件][示例代码下载]...
- 将DEX反编译成Java源代码
- Pycharm 相关使用方法
- Axure RP安装破解汉化以及发布到至AxureShare
- (视频分辨率介绍)混淆的概念:SIF与CIF、4CIF与D1
- matlab中clear;close;clc的作用说明
- excel组合汇总_Excel汇总20150105
- 数据分析/机器学习 350+ 数据集链接整理,免费下载点开就用
- (七)设定目标:原理与方法
- YouTorrent - 全新的“实时”BT种子搜索站
- 二维码门禁的解决方案
- 元宇宙开发者的乐园 解析元宇宙协议Caduceus生态价值
- 解决报错:Fan in and fan out can not be computed for tensor with fewer than 2 dimensions