win10环境 python添加xgboost包

来源:互联网 发布:sql 分组小计 编辑:程序博客网 时间:2024/06/03 23:00
最近参加比赛,发现用这个包的很多,效果也不错。所以想安装下来使用下。
网上大多数博客写的还是下载下来以后找到windows文件夹。。。
但官网最新版本已经没有这个文件夹了,所以自己总结了一下。
1、准备:
python安装  我用的是anaconda安装包
git安装   网上教程很多 ,大家自己参考哈
MINGW http://www.mingw.org/

在 git bash中cd到想安装的路径
$ git clone --recursivehttps://github.com/dmlc/xgboost
$ cd xgboost
$ git submodule init
$ git submodule update

下载MINGW安装时注意如下这一步的选择

 
最后一步时记住安装路径并将其路径下的bin添加到windows的path中
我的是

C:\ProgramFiles\mingw-w64\x86_64-7.1.0-posix-seh-rt_v5-rev0\mingw64/bin/mingw32-make

添加后重新打开git bash(win10系统还需重新开下机)

$ which mingw32-make检查是否添加成功

2、编译

切换到xgboost目录下编译

$ cd dmlc-core

$ make -j4

$ cd ../rabit

$ make lib/librabit_empty.a -j4

$ cd ..

$ cp make/mingw64.mk config.mk

$ make -j4

3、安装(仍是使用git bash)

xgboost目录下进入python-package

cd \xgboost\python-package

python setup.py install

4、检测

打开python编辑界面

importos

mingw_path ='C:\\Program Files\\mingw-w64\\x86_64-5.3.0-posix-seh-rt_v4-rev0\\mingw64\\bin'

os.environ['PATH']= mingw_path+ ';'+ os.environ['PATH']

importxgboostas xgb
importnumpyas np

data =np.random.rand(5,10)# 5 entities, each contains 10 features
label =np.random.randint(2,size=5)# binary target
dtrain =xgb.DMatrix(data, label=label)

dtest =dtrain

param ={'bst:max_depth':2,'bst:eta':1,'silent':1,'objective':'binary:logistic'}
param['nthread']= 4
param['eval_metric']= 'auc'

evallist  =[(dtest,'eval'),(dtrain,'train')]

num_round =10
bst =xgb.train(param, dtrain,num_round, evallist)

bst.dump_model('dump.raw.txt'


参考:

https://xgboost.readthedocs.io/en/latest/build.html#building-on-windows

https://github.com/dmlc/xgboost