XGBoost是近年来很受追捧的机器学习算法,由华盛顿大学的陈天奇提出,在国内外的很多大赛中取得很不错的名次,要具体了解该模型,可以移步GitHub,本文介绍其在Widows系统下基于Git的python版本的安装方法。
需要用到三个软件:
- python软件(本文基于Anaconda,因为自带很多库,比较方便)
- Git for Windows
- MINGW
假设都已经安装好了Anaconda,建议安装python2版本的,虽然python3也可以,但python2较为主流。再安装Git,装完之后在开始菜单里打开Git Bash,首先新建一个文件夹xgboostCode用于存放代码和下载文件,然后在刚刚打开的Bash终端中输入下面命令,定位目录。
- $ cd /c/Users/xgboostCode/
然后用下面的命令从GitHub下载XGBoost。
- $ git clone --recursive https://github.com/dmlc/xgboost
- $ cd xgboost
- $ git submodule init
- $ git submodule update
然后选择x86_64的Architecture,其他的选项默认。
按照指示完成安装,我电脑安装的路径为 C:\Program File
关闭Git Bash终端,再次打开,刚刚添加的路径变量就生效了,输入以下命令检查效果:
- $ which mingw32-make
- /c/Program Files/mingw-w64/x86_64-5.3.0-posix-seh-rt_v4-rev0/mingw64/bin/mingw32-make
再输入下面的命令:
- $ alias make='mingw32-make'
下面就可以安装XGBoost了,首先定位到下载它的路径:
- $ cd /c/Users/xgboostCode/xgboost
- $ cd dmlc-core
- $ make -j4
- $ cd ../rabit
- $ make lib/librabit_empty.a -j4
- $ cd ..
- $ cp make/mingw64.mk config.mk
- $ make -j4
- cd xgboostCode\xgboost\python-package
python setup.py install
安装已经完成,但在调用XGBoost之前,还应该将g++的运行库路径导入到os环境路径变量中,在Anaconda中打开Ipython,或者在python的命令行里,分别输入下面的命令:
安装已经完成,但在调用XGBoost之前,还应该将g++的运行库路径导入到os环境路径变量中,在Anaconda中打开Ipython,或者在python的命令行里,分别输入下面的命令:
- import os
- 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']
下面新建一个python文件,导入XGBoost,并测试下面的代码:
- import numpy as np
- import xgboost as xgb
- 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')
原文:
http://blog.youkuaiyun.com/leo_xu06/article/details/52300869