XGBoost使用篇(未完成)

1.截止到本文(20191104)sklearn没有集成xgboost算法,需要单独安装xgboost库,然后导入使用

xgboost官网安装说明

Pre-built binary wheel for Python

在源码git页面下载包,然后手动安装。

如何安装包

2.xgboost读取文件的格式?

xgboost的数据输入数据格式DMatrix目前支持两种数据格式:LibSVM和CSV

libsvm数据格式

xgboost可以从libsvm、csv、numpy array、dataframe、xgboost binary buffer file载入训练数据

读入后,数据存储在DMatrix目标文件中。

3.xgboost模型的训练及预测过程?

第一种形式:

xgboost原生接口的实现方法

import xgboost as xgb
# read in data
dtrain = xgb.DMatrix('demo/data/agaricus.txt.train')
dtest = xgb.DMatrix('demo/data/agaricus.txt.test')
# specify parameters via map
param = {'max_depth':2, 'eta':1, 'objective':'binary:logistic' }
num_round = 2
bst = xgb.train(param, dtrain, num_round)
# make prediction
preds = bst.predict(dtest)

第二种形式:

xgboost的sklearn接口,来实现一些模型训练、拟合、效果展示的功能

import xgboost as xgb
import numpy as np
from sklearn.model_selection import KFold, train_test_split, GridSearchCV
from sklearn.metrics import confusion_matrix, mean_squared_error
from sklearn.datasets import load_iris, load_digits, load_boston
digits = load_digits(2)
y = digits['target']
X = digits['data']
kf = KFold(n_splits=2, shuffle=True, random_state=rng)
for train_index, test_index in kf.split(X):
  xgb_model = xgb.XGBClassifier().fit(X[train_index], y[train_index])
  predictions = xgb_model.predict(X[test_index])
  actuals = y[test_index]

  print(confusion_matrix(actuals, predictions))

xgb.XGBClassifier().fit()和xgb.train()的区别?

https://blog.csdn.net/mr_muli/article/details/84798847

第二种形式中的几种用法:

xgboost.XGBRegressor(), implementation of the skleran api for xgboost regression

xgboost.XGBClassifier(), implementation of the skleran api for xgboost classification

xgboost.XGBRanker(), implementation of the sklearn api for xgboost ranking

xgboost.XGBRFRegressor() ,sklearn api for xgboost random forest regression

xgboost.XGBRFClassifier(), SKlearn api for xgboost random forest classification

https://xgboost.readthedocs.io/en/latest/python/python_api.html#module-xgboost.sklearn

4.为什么xgboost有时预测结果为0/1,有时预测结果为概率值?

注意objective变量的设置,不同的设置最后模型预测的结果返回的内容是不一样的。

https://www.cnblogs.com/wzdLY/p/9831282.html

XGBoost参数调优完全指南

xgboost的两种训练方式,以及不同的objective的影响

xgboost不同训练方式,及grid search调参方法

使用GridSearch对xgboost进行调参(全部流程)

5.XGBoost的训练数据格式是ndarray,如果是dataframe的形式要先转换为ndarray(df.values)

6. XGBoost整体流程:

变量处理/特征工程/特征选择/特征变换

grid search或者随机网格搜索

  cross validation(sklearn K折交叉验证):

    三类参数(general parameters/booster parameters/task parameters)

    每个模型的roc曲线/auc值/ks值/精确值

python机器学习笔记:XgBoost算法

XGB总结

XGB基础知识汇总

xgboost中的min_child_weight是什么意思?

参考资料:

用xgboost做分类,预测结果输出的为什么不是类别概率?

模型融合--XGBoost

四个xgb模型融合拿下金融风控冠军,是如何做特征工程的?

 XGBoost实现保险赔偿预测:XGBoost模型建立和保存

posted on 2019-11-04 20:36  静静的白桦林_andy  阅读(2715)  评论(0编辑  收藏  举报

导航