XGBClassifier是xgboost的sklearn版本。代码完整的展示了使用xgboost建立模型的过程,并比较xgboost和randomForest的性能。

  1 # -*- coding: utf-8 -*-
2 """
3 # 作者:wanglei5205
4 # 邮箱:wanglei5205@126.com
5 # 博客:http://cnblogs.com/wanglei5205
6 # github:http://github.com/wanglei5205
7 """
8 ### 导入模块
9 import pandas as pd
10
11 ### load_data
12 titanic = pd.read_csv('http://biostat.mc.vanderbilt.edu/wiki/pub/Main/DataSets/titanic.txt')
13 X = titanic[['pclass', 'age', 'sex']] # 输入空间
14 y = titanic['survived'] # 输出空间
15 X.age.fillna(X.age.mean(), inplace=True) # 填充缺失值(均值),inplace=True(无返回值,原地替换)
16
17 ### split_data
18 from sklearn.cross_validation import train_test_split
19 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=33)
20
21 ### feature_extraction
22 from sklearn.feature_extraction import DictVectorizer
23 vec = DictVectorizer(sparse=False)
24 X_train = vec.fit_transform(X_train.to_dict(orient='record'))
25 X_test = vec.transform(X_test.to_dict(orient='record'))
26
27 ### create_model
28 # rfc
29 from sklearn.ensemble import RandomForestClassifier
30 rfc = RandomForestClassifier()
31 rfc.fit(X_train, y_train)
32
33 # xgbc
34 from xgboost import XGBClassifier
35 xgbc = XGBClassifier()
36 xgbc.fit(X_train, y_train)
37
38 ### model_score
39 print ('rfc.score=',rfc.score(X_test, y_test))
40 print('xgbc.score=',xgbc.score(X_test, y_test))
41 """
42 rfc.score= 0.787234042553
43 xgbc.score= 0.787234042553
44 """

【机器学习】集成学习之xgboost的sklearn版XGBClassifier使用教程的更多相关文章

  1. 机器学习—集成学习(XGBoost)

    一.原理部分: 二.xgboost实现 看看大神的博客瞬间了解:https://blog.csdn.net/han_xiaoyang/article/details/52665396

  2. 机器学习——集成学习(Bagging、Boosting、Stacking)

    1 前言 集成学习的思想是将若干个学习器(分类器&回归器)组合之后产生一个新学习器.弱分类器(weak learner)指那些分类准确率只稍微好于随机猜测的分类器(errorrate < ...

  3. [机器学习]集成学习--bagging、boosting、stacking

    集成学习简介 集成学习(ensemble learning)通过构建并结合多个学习器来完成学习任务. 如何产生"好而不同"的个体学习器,是集成学习研究的核心. 集成学习的思路是通过 ...

  4. 机器学习--集成学习(Ensemble Learning)

    一.集成学习法 在机器学习的有监督学习算法中,我们的目标是学习出一个稳定的且在各个方面表现都较好的模型,但实际情况往往不这么理想,有时我们只能得到多个有偏好的模型(弱监督模型,在某些方面表现的比较好) ...

  5. python大战机器学习——集成学习

    集成学习是通过构建并结合多个学习器来完成学习任务.其工作流程为: 1)先产生一组“个体学习器”.在分类问题中,个体学习器也称为基类分类器 2)再使用某种策略将它们结合起来. 通常使用一种或者多种已有的 ...

  6. 吴裕雄 python 机器学习——集成学习随机森林RandomForestRegressor回归模型

    import numpy as np import matplotlib.pyplot as plt from sklearn import datasets,ensemble from sklear ...

  7. 吴裕雄 python 机器学习——集成学习随机森林RandomForestClassifier分类模型

    import numpy as np import matplotlib.pyplot as plt from sklearn import datasets,ensemble from sklear ...

  8. 吴裕雄 python 机器学习——集成学习梯度提升决策树GradientBoostingRegressor回归模型

    import numpy as np import matplotlib.pyplot as plt from sklearn import datasets,ensemble from sklear ...

  9. 吴裕雄 python 机器学习——集成学习AdaBoost算法回归模型

    import numpy as np import matplotlib.pyplot as plt from sklearn import datasets,ensemble from sklear ...

随机推荐

  1. 如何成为专业的PHP开发者

    如何才能成为一名专业的PHP开发者?资深Web开发者Bruno Skvorc在其博客上分享了一些心得. 当阅读各种和PHP相关的博客.Quora问题.Google+社区.资讯和杂志的时候,Bruno ...

  2. Java智能图表类库JChartLib使用介绍

    http://www.codeceo.com/article/java-jchartlib.html JChartLib是一款基于Java的智能图表类库,JChartLib不仅有着漂亮的外观,而且支持 ...

  3. usb2.0 协议分析

    转:https://blog.csdn.net/u011594613/article/details/48291307 一.USB硬件介绍1.1.概述 一条USB传输线分别由地线.电源线.D+和D-四 ...

  4. rem布局原理

    昨天去面试,面试官竟然说他们用媒体查询针对不同的屏幕宽度做了9个不同的rem布局,呵呵... eg: html{font-size:20px;} div{width:16rem;height:100p ...

  5. Linux之Xinetd服务介绍

    一.概念:1.独立启动的守护进程:stand-alone,每个特定服务都有单独的守护进程,这个处理单一服务的始终存在的进程就是独立启动的守护进程. 2.超级守护进程:多个服务统一由一个进程管理,该进程 ...

  6. 算法总结之 删除链表的中间节点和a/b处的节点(链表中间节点的重要思想)

    给定链表的表头节点head,实现删除链表的中间节点的函数 推展: 给定链表的头节点,整数a 和 整数 b,实现删除a/b处节点的函数 先来分析原问题, 长度1  直接返回 长度2 将头节点删除 长度3 ...

  7. java深入探究08-连接池,分页

    1.连接池 1)自定义连接池 思路:定义一个类Pool->添加4个属性(最大连接数,初始化连接数,当前连接数,用来存放连接对象的LinkList集合对象)->定义一个createConne ...

  8. javascript 内置对象及常见API

    javascript 内置对象及常见API 2012-09-02 15:17 571人阅读 评论(0) 收藏 举报 javascript正则表达式文档浏览器urlstring Javascript内置 ...

  9. SoapUI使用方法-01发送http请求

    soap ui http://blog.csdn.net/russ44/article/details/51680083 一.发送HTTP请求消息 1.打开soapUI. 2.新建一个项目,实例如下: ...

  10. 根据图片名字在drawable中得到图片

    int imageId = context.getResources().getIdentifier("图片的名字","drawable", "包名& ...