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算法相关推荐

  1. 【机器学习基础】数学推导+纯Python实现机器学习算法17:XGBoost

    Python机器学习算法实现 Author:louwill Machine Learning Lab 自从陈天奇于2015年提出XGBoost以来,该模型就一直在各大数据竞赛中当作大杀器被频繁祭出.速 ...

  2. Python机器学习笔记:XgBoost算法(亲测)

    前言 1,Xgboost简介 Xgboost是Boosting算法的其中一种,Boosting算法的思想是将许多弱分类器集成在一起,形成一个强分类器.因为Xgboost是一种提升树模型,所以它是将许多 ...

  3. Xgboost算法原理详解及python实现

    Xgboost算法(回归树) 1.算法原理 2.对数据的要求(无需规范化) 3.算法的优缺点 4.XGB.GBDT.LR与RF 5.python代码实现 导入相关包 读取数据并预处理 训练 贝叶斯初步 ...

  4. xgboost算法_第113天: Python XGBoost 算法项目实战

    Python 实现机器学习 如果你的机器学习预测模型表现得不尽如人意,那就用XGBoost.XGBoost算法现在已经成为很多数据工程师的重要武器. XGBoost 算法 说到XGBoost,不得不提 ...

  5. 基于Python贝叶斯优化XGBoost算法调参报错“TypeError: ‘float‘ object is not subscriptable”

    基于Python贝叶斯优化XGBoost算法调参运行情况如下: iter target colsam- gamma max_depth min_ch- subsample 1 0.9398 0.804 ...

  6. 数学推导+纯Python实现机器学习算法:GBDT

    Datawhale推荐 作者:louwill,Machine Learning Lab 时隔大半年,机器学习算法推导系列终于有时间继续更新了.在之前的14讲中,笔者将监督模型中主要的单模型算法基本都过 ...

  7. ML之RFXGBoost:分别基于RF随机森林、XGBoost算法对Titanic(泰坦尼克号)数据集进行二分类预测(乘客是否生还)

    ML之RF&XGBoost:分别基于RF随机森林.XGBoost算法对Titanic(泰坦尼克号)数据集进行二分类预测(乘客是否生还) 目录 输出结果 设计思路 核心代码 输出结果 设计思路 ...

  8. 【机器学习基础】数学推导+纯Python实现机器学习算法30:系列总结与感悟

    Python机器学习算法实现 Author:louwill Machine Learning Lab 终于到了最后的总结.从第一篇线性回归的文章开始到现在,已经接近有两年的时间了.当然,也不是纯写这3 ...

  9. 【机器学习基础】数学推导+纯Python实现机器学习算法24:HMM隐马尔可夫模型

    Python机器学习算法实现 Author:louwill Machine Learning Lab HMM(Hidden Markov Model)也就是隐马尔可夫模型,是一种由隐藏的马尔可夫链随机 ...

  10. 【机器学习基础】数学推导+纯Python实现机器学习算法28:CRF条件随机场

    Python机器学习算法实现 Author:louwill Machine Learning Lab 本文我们来看一下条件随机场(Conditional Random Field,CRF)模型.作为概 ...

最新文章

  1. cap = cv2.VideoCapture(0).read()摄像头读取图片用法
  2. python中的[:-1] [:,:-1] python矩阵numpy中array的冒号 逗号
  3. 小程序页面之间的通讯利器 - nsevent
  4. dm9000 driver 2
  5. 在keil uVision 2/uVision 3下使用伟福系列仿真器的方法:
  6. android启动画面白屏,Android app启动时黑屏或者白屏的原因及解决办法
  7. linux 主机的网络属性基本配置:
  8. [导入]Asp.net 2.0 自定义控件开发[创建自定义浮动菜单FloadMenu控件][示例代码下载]...
  9. 将DEX反编译成Java源代码
  10. Pycharm 相关使用方法
  11. Axure RP安装破解汉化以及发布到至AxureShare
  12. (视频分辨率介绍)混淆的概念:SIF与CIF、4CIF与D1
  13. matlab中clear;close;clc的作用说明
  14. excel组合汇总_Excel汇总20150105
  15. 数据分析/机器学习 350+ 数据集链接整理,免费下载点开就用
  16. (七)设定目标:原理与方法
  17. YouTorrent - 全新的“实时”BT种子搜索站
  18. 二维码门禁的解决方案
  19. 元宇宙开发者的乐园 解析元宇宙协议Caduceus生态价值
  20. 解决报错:Fan in and fan out can not be computed for tensor with fewer than 2 dimensions

热门文章

  1. jdk StringBuilder实现
  2. 微服务架构:spring cloud之服务注册和服务发现
  3. 9102,用原生js造一个轮播组件
  4. NoSQL、memcached介绍、安装memcached、查看memcached状态
  5. zabbix所有键值
  6. 30而立--男人必须明白的事
  7. 显示隐藏dataGrid控件的标题栏,改变标题栏高度.
  8. JSP连接SQLServer数据库特别要注意一个小问题得到解决
  9. Sql语句分页,有待优化
  10. 支付宝“手机网站支付”开发的相关文档和工具