xgboost系列:windows和linux下xgboost安装指南

原创 2017年06月10日 21:48:51

前言:

帮某人装了一下 xgboost,顺带记录了一下windows下xgboost的安装,考虑到windows下使用pip命令安装下载包速度慢,所以这里是直接下载安装的。linux下不管是编译还是直接安装都很简单,但是windows下的编译就比较麻烦。。。

值得一提的是,很多人都是下载源码来进行编译然后安装,这样的安装不能说不好,但是麻烦,像我们这种偷懒的人,用别人编译好的dll库就好了,没必要自己编译了。不然又要下载mingw来进行编译,此外还需要处理一些依赖问题,本文直接使用别人编译好的dll进行安装,此外也介绍了一些其他安装方法。



一、windows下的使用别人编译好的库文件进行安装(简单)

(0)前提是,你得下载好anaconda,并且安装之,我的下载地址如下(python3 windows 64位)

https://repo.continuum.io/archive/Anaconda3-4.4.0-Windows-x86_64.exe


(1)下载xgboost源码(这里直接用官方最新的源码,这里我们不需要用git clone --recursive,因为用的是编译好的dll,因此不需要下载那么完整,只需要python-package完整即可),你可以通过下面的连接下载源码即可。

https://github.com/dmlc/xgboost/archive/master.zip


(3)解压下载好的源码

解压之后,进入文件夹,找到master\python-package\xgboost目录


(4)下载windows下的编译好的xgboost库文件

这里我选择的是2017年6月10号编译的dll,也就是当前源码对应的那一天的dll

http://ssl.picnet.com.au/xgboost/20170610/x64/libxgboost.dll

大家请在页面:http://www.picnet.com.au/blogs/guido/post/2016/09/22/xgboost-windows-x64-binaries-for-download/

选择最新编译的dll,因为最新的dll与xgboost的源码更为适配。


下载好之后将这个库文件放入到master\python-package\xgboost目录

注意:如果你有NVIDIA的GPU,可以下载http://ssl.picnet.com.au/xgboost/20170610/x64_gpu/libxgboost.dll,这个是GPU版本的动态链接库


(5)安装xgboost即可

进入master\python-package目录,执行以下命令行

python setup.py install


即可完成安装

然后你进入python之后import xgboost即可使用。


问题1:我的windows下有其他版本的python,我该怎么办?

这个问题好办,你可以临时设置PATH的环境变量为下面的路径,这样就可以指定使用哪个python了,如果你的python在C:\Program Files\Python 3.5目录的话。

原理:因为如果PATH变量中如果有多个版本python的路径的话,最后一个路径就是实际生效的。

set PATH=%PATH%;C:\Program Files\Python 3.5

问题2:如何卸载之前安装的xgboost

pip uninstall xgboost


二、windows下源码编译并进行安装(复杂)

为了保持完整性,还是介绍一下windows下通过源码进行编译的步骤,不过我不大喜欢在windows下使用mingw进行编译,主要是windows下没有一个较好的包管理工具,并不能处理一些依赖的包,依赖安装起来较为复杂,可能依赖的包也需要进行编译。这就是为什么我不喜欢在windows下编译一些linux下的工具的原因。


(0)下载好anaconda,并且安装之,我的下载地址如下(python3 windows 64位)

https://repo.continuum.io/archive/Anaconda3-4.4.0-Windows-x86_64.exe

(1)下载git,并安装之(这里我下载的是windows 64位版本的),具体大家可以在这个页面选择。https://git-scm.com/download/win
https://github.com/git-for-windows/git/releases/download/v2.13.0.windows.1/Git-2.13.0-64-bit.exe

(2)使用git下载代码(这里需要用git clone --recursive来处理链接
如果你有shadowsocks代理的话,你可以先给git设置代理,这样下载会快一些。
git config --global http.proxy 'socks5://127.0.0.1:1080'
打开终端,输入
git clone --recursive https://github.com/dmlc/xgboost
然后进入xgboost目录执行
git submodule init
git submodule update



(3)下载mingw,请到如下页面下载mingw-get-setup.exe
https://sourceforge.net/projects/mingw/files/Installer/


三、linux下使用pip直接进行安装(简单)

很简单,一个命令解决问题(注意,这里我考虑到国外的网速使用的是国内USTC的源)

sudo -H pip install -i  https://mirrors.ustc.edu.cn/pypi/web/simple xgboost



四、windows下最偷懒的安装方法(支持python3.5和3.6版本,windows 32位和64位系统)(最简单)

(1)首先下载xgboost编译好的whl包

下载路径为:http://www.lfd.uci.edu/~gohlke/pythonlibs/#xgboost

请你根据自己python的版本以及你操作系统的版本来下载对应的whl包

如何确定python版本:

进入python之后,就会显示python的版本,比如我的机器是2.7.11的,并且操作系统是64位的(当然,我的python是不被支持的,所以也安装不了:)  )

Python 2.7.11 |Anaconda 2.4.1 (64-bit)| (default, Dec  7 2015, 14:10:42) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org

xgboost‑0.6‑cp35‑cp35m‑win32.whl             这个是python3.5,windows 32位的包

xgboost‑0.6‑cp35‑cp35m‑win_amd64.whl   这个是python3.5,windows 64位的包
xgboost‑0.6‑cp36‑cp36m‑win32.whl             这个是python3.5,windows 32位的包
xgboost‑0.6‑cp36‑cp36m‑win_amd64.whl   这个是python3.6,windows 64位的包

(2)安装xgboost

下载好后进入whl包的目录下执行,可以将下面的文件名替换为你自己下载的文件名,安装即可。

pip install xgboost‑0.6‑cp36‑cp36m‑win_amd64.whl


五、Linux下开启CUDA和OpenMP进行编译安装(简单)


(1)下载代码
git clone --recursive https://github.com/dmlc/xgboost

(2)配置
进入xgboost/make目录,打开config.mk
1) 开启openmp多线程和CUDA

USE_OPENMP = 1
PLUGIN_UPDATER_GPU ?= ON


2) 配置显卡的计算能力,如果你开启了CUDA的话
返回xgboost/目录,打开Makefile找到如下行,将其中的数值设置为 你自己显卡的计算能力,比如我的显卡是gtx titanx maxwell的,因此计算能力是52
具体查看你自己的显卡是什么计算能力,可以参考https://developer.nvidia.com/cuda-gpus#collapse4

COMPUTE ?= 52

(3)编译
make all -j$(nproc)

(4)编译python包
make pippack -j$(nproc)
make pypack -j$(nproc)

(5)安装python包
进入xgboost/xgboost-python
sudo python setup.py install


后续:

谢谢乐乐指出下载代码需要git clone --recursive,这里由于我之前是在linux下是通过确实是通过git clone  --recursive下载代码,并复制到windows的,所以没有注意这一点。

下面解释一下git的recursive,它是指处理git上的链接,并从链接上也下载代码,如果不加就会少下载一部分链接的代码。



enjoy it, by xizero00 updated 2017/6/12

http://blog.csdn.net/xizero00

版权声明:本文为博主原创文章,未经博主允许不得转载。

Windows下安装python版的XGBoost教程(Anaconda)

Widows系统下基于Git的python版本的安装方法
  • Leo_Xu06
  • Leo_Xu06
  • 2016年08月24日 15:28
  • 16798

win10 下xgboost的安装----终极版

前言在最近的比赛中用到了xgboost这个比赛神器,由于在matlab中有大量的现有函数,且切换双系统太麻烦,因袭想在win10上安装xgboost来简化操作。...
  • he_min
  • he_min
  • 2017年04月29日 22:10
  • 3190

win10(64位)python xgboost 详细安装教程

win10(64位)python xgboost 安装教程 在看一些数据挖掘比赛的经验分享,看到很多都用到了xgboost并取得不错效果,于是down了大神们的解决方案,结合他们的代码学习数据挖掘比赛...
  • sb19931201
  • sb19931201
  • 2016年08月18日 00:10
  • 7044

winows下python安装xgboost的包

  • 2016年03月18日 14:48
  • 1.13MB
  • 下载

linux 下安装xgboost

第一步:安装anaconda安装xgboost 有一些依赖包,所以在安装xgboost之前需要安装这些依赖包。为了方便安装,这里推荐直接安装anaconda,这里集成了绝大多数第三方库,安装步骤很方便...
  • u010414589
  • u010414589
  • 2016年05月03日 13:35
  • 11361

安装xgboost

安装xgboost
  • jingyi130705008
  • jingyi130705008
  • 2017年05月08日 21:07
  • 400

win7 64位 xgboost完美安装包

  • 2015年12月10日 20:28
  • 49.99MB
  • 下载

windows 新版xgboost Python包安装教程 win10 64

windows 新版xgboost Python包安装教程 win10 64 第一次写教程,不妥之处望大家海涵 O(∩_∩)O! 写这篇文章的起因是男票让我帮他装xgb,不幸让我装好了~~ 他说这个好...
  • ychanmy
  • ychanmy
  • 2016年03月24日 16:06
  • 9482

XGBoost使用之安装

安装请参考这里
  • wshixinshouaaa
  • wshixinshouaaa
  • 2017年12月25日 21:00
  • 12

64位windows下Xgboost安装血与泪的总结

经过3天安装Xgboost,几乎就要放弃的时候安装成功了,兴奋之余记录一路安装的心酸历程: 1.刚开始本人是在python2.7版本下安装,由于0.6版本没有对应的的.whl下载,所以先下载的低版本然...
  • learn_forlife
  • learn_forlife
  • 2017年12月20日 16:58
  • 26
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:xgboost系列:windows和linux下xgboost安装指南
举报原因:
原因补充:

(最多只允许输入30个字)