49

http://xgboost.readthedocs.org/en/latest/python/python_intro.html

在 xgboost(上面的链接)的主页上,它说:要安装 XGBoost,请执行以下步骤:

  1. 需要make在项目的根目录下运行

  2. 在 python-package 目录下运行

    python setup.py 安装

但是,当我这样做时,对于第 1 步,出现以下错误: make : 术语“make”未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确并重试。

然后我跳过第1步,直接做了第2步,又出现了一个错误:

Traceback (most recent call last):
  File "setup.py", line 19, in <module>
    LIB_PATH = libpath['find_lib_path']()
  File "xgboost/libpath.py", line 44, in find_lib_path
    'List of candidates:\n' + ('\n'.join(dll_path)))
__builtin__.XGBoostLibraryNotFound: Cannot find XGBoost Libarary in the candicate path, did you install compilers and run build.sh in root path?

有人知道如何在 Windows10 平台上安装 xgboost for python 吗?谢谢你的帮助!

4

18 回答 18

170

如果有人正在寻找不需要自己编译的更简单的解决方案:

  1. 从这里下载 xgboost whl 文件(确保匹配您的 python 版本和系统架构,例如“xgboost-0.6-cp35-cp35m-win_amd64.whl”用于 64 位机器上的 python 3.5)
  2. 打开命令提示符
  3. cd到您的下载文件夹(或保存 whl 文件的任何位置)
  4. pip install xgboost-0.6-cp35-cp35m-win_amd64.whl(或任何你的 whl 文件命名)

如果您发现由于缺少依赖项而无法安装,请先下载并安装依赖项,然后重试。

如果它抱怨访问权限,请尝试以管理员身份打开命令提示符并重试。

这为您提供了 xgboost 和 scikit-learn 包装器,并且使您不必经历自己编译的痛苦。:)

于 2016-10-01T20:19:42.603 回答
32

请注意,从最新版本开始,Microsoft Visual Studio 说明似乎不再适用,因为此链接返回 404 错误:

https://github.com/dmlc/xgboost/tree/master/windows

您可以从 Tianqi Chen 的评论中阅读更多关于删除 MSVC 构建的信息

下面是我在 Windows 上完成 64 位构建时所做的:

  1. 下载并安装 MinGW-64:http: //sourceforge.net/projects/mingw-w64/
  2. 在安装提示的第一个屏幕上,确保将体系结构设置为x86_64,将线程设置为win32
  3. 我安装到 C:\mingw64 (以避免文件路径中的空格)所以我将它添加到我的 PATH 环境变量中:C:\mingw64\mingw64\bin
  4. 我还注意到 bin\mingw64 中包含的 make 实用程序被称为mingw32-make所以为了简化我只是将其重命名为make
  5. 打开 Windows 命令提示符并键入 gcc。您应该会看到类似“致命错误:没有输入文件”的内容
  6. 下一个类型制作。您应该会看到类似“未指定目标且未找到生成文件”之类的内容
  7. 输入 git。如果您没有 git,请安装它并将其添加到您的 PATH 中。

这些应该是构建 xgboost 项目所需的所有工具。要获取源代码,请运行以下几行:

  1. CDC:\
  2. git clone --recursive https://github.com/dmlc/xgboost
  3. cd xgboost
  4. git子模块初始化
  5. git子模块更新
  6. cp make/mingw64.mk config.mk
  7. 使-j4

请注意,我从 Cygwin shell 运行这部分。如果您使用的是 Windows 命令提示符,您应该能够将 cp 更改为复制并获得相同的结果。但是,如果由于任何原因构建失败,我建议您再次尝试使用 cygwin。

如果构建成功完成,您应该在项目根目录中有一个名为 xgboost.exe 的文件。要安装 Python 包,请执行以下操作:

  1. cd python 包
  2. python setup.py 安装

现在你应该可以走了。打开 Python,您可以使用以下命令导入包:

import xgboost as xgb

为了测试安装,我继续运行了包含在项目的 demo/guide-python 文件夹中的 basic_walkthrough.py 文件,并且没有收到任何错误。

于 2016-01-31T21:46:54.303 回答
22

我在 Windows 8 64bit、Python 2.7 和 Visual Studio 2013 中成功安装了 XGBoost(不需要 mingw64)

2017 年 15 月 2 日更新

使用较新版本的 XGBoost,这是我的步骤

步骤 1.安装 cmake https://cmake.org/download/

验证是否cmake安装成功

$ cmake
Usage

cmake [options] <path-to-source>
cmake [options] <path-to-existing-build>
...

步骤 2.克隆 xgboost 源

$ git clone https://github.com/dmlc/xgboost xgboost_dir

步骤 3.创建 Visual Studio 项目

$ cd xgboost_dir
$ mkdir build
$ cd build
$ cmake .. -G"Visual Studio 12 2013 Win64"

步骤 4.构建 Visual Studio 2013 项目

  • xgboost_dir/build/ALL_BUILD.vcxproj使用 Visual Studio 2013打开文件
  • 在 Visual Studio 2013 中,打开BUILD > Configuration Manager...
    • 在活动解决方案配置中选择发布
    • 在 Active 解决方案平台中选择 x64
  • 单击构建 > 构建解决方案(Ctrl + Shift +B)

构建解决方案后,在文件夹中创建了两个libxgboost.dllxgboost.exe文件xgboost_dir/lib

步骤 5.构建 python 包

  • 将文件复制libxgboost.dllxgboost_dir/python-package
  • 将目录更改为xgboost_dir/python-package文件夹
  • 运行命令python setup.py install

验证 xgboost 是否已成功安装

$ python -c "import xgboost"

旧答案

这是我的步骤:

  1. git 克隆https://github.com/dmlc/xgboost
  2. git 结帐 9bc3d16
  3. xgboost/windows使用 Visual Studio 2013打开项目
  4. 在 Visual Studio 2013 中,打开BUILD > Configuration Manager...,
    • 选择Release_Active solution configuration
    • 选择x64_Active solution platform
  5. 重建xgboostxgboost_wrapper
  6. 将文件夹中的所有文件xgboost/windows/x64/Release复制到xgboost/wrapper
  7. 转到xgboost/python-package,运行命令python setup.py install
  8. 通过运行命令检查 xgboostpython -c "import xgboost"
于 2016-01-23T01:53:59.550 回答
10

我刚刚为我的 python 2.7 和 python 3.5、anaconda、64 位机器和 64 位 python 安装了 xgboost。

都非常简单,不需要 VS2013 或 git。

我认为它也适用于普通的 python。

如果您使用 python 3.5:

1:在这里下载包,版本取决于你的python版本,python3.5还是python 3.6,32bit还是64bit。

2:使用命令窗口,使用 cd 将下载文件夹设置为您的密码,然后使用

pip install filename.whl

好的,完成了。有关更详细的步骤,请参阅此答案

如果你使用python 2.7,你不需要自己下载VS2013来构建它,因为我已经构建了它,你可以下载我构建的文件并直接安装它

1:通过谷歌驱动器在这里下载

2:下载,解压,粘贴到这里:

“你的 python 路径\Lib\site-packages”

然后你应该看起来像这样:

在此处输入图像描述

3:在上面显示的python-package文件夹中,使用cmd窗口,cd在那里运行

python setup.py install 

使用此代码

 import xgboost 

在你的python中检查你是否安装了mingw-64,没有错误信息意味着你已经安装了mingw-64并且你已经完成了。

如果有错误信息

“Windows 错误:[错误 126]”

这意味着你还没有安装 mingw-64,你还有一步要走。

在此处下载 mingw-64:http: //sourceforge.net/projects/mingw-w64/

安装mingw-64时选择x86_64而不是默认的“i686”,然后添加“your install path\x86_64-6.2.0-posix-seh-rt_v5-rev1\mingw64\bin;” 到你的 PATH,它应该是这样的:

“C:\Program Files\mingw-w64\x86_64-6.2.0-posix-seh-rt_v5-rev1\mingw64\bin;”

(这是我的)。

不要忘记“;” 在路径中。

然后你就完成了,你可以使用

import xgboost 

在你的 python 中检查,是的!

PS:如果您不知道如何添加路径,只需谷歌它以获得解决方案。别担心,这很简单。

于 2016-12-22T01:40:53.367 回答
4

如果您正在为特定项目安装 XGBoost,并且您正在使用 Pycahrm,那么您需要遵循以下步骤:

  1. xgboost‑0.72‑cp36‑cp36m‑win_amd64.whl这里下载(因为我使用的是 Python 3.6,如果你使用不同版本的 Python,比如 2.7,那么你需要安装xgboost‑0.72‑cp27‑cp27m‑win_amd64.whl)。

  2. 复制到您的项目解释器目录。File -> Settings -> Project Interpreter从 Pycharm 中点击可以找到 Project Interpreter 的目录。

  3. 打开命令提示符。从 cmd 转到 Project Interpreter 的目录。编写以下命令:pip install xgboost-0.72-cp36-cp36m-win_amd64.whl

于 2018-08-08T07:20:43.130 回答
1

构建c++版本后,将../windows/x64/Release/..(如果您构建x64版本)中的release dll和lib文件复制到../wrapper/然后运行python setup.py install

于 2015-12-31T07:37:26.567 回答
1

我按照https://www.kaggle.com/c/otto-group-product-classification-challenge/forums/t/13043/run-xgboost-from-windows-and-python中列出的步骤进行操作。我将在下面总结我所做的。

1) 下载 Visual Basic Studio。您可以在 Visual Studio 网站上下载社区版。右上角有一个“免费的视觉工作室按钮”

2) 从 xgboost/tree/master/windows 的 git hub 存储库中复制所有内容并在 Visual Studio 上打开 Visual Studio 现有项目

3)您需要选择几个下拉菜单(“Release”和“X64”,然后从上方菜单中选择 build --> build all。它应该类似于所附的屏幕截图。

4) 如果你看到消息 ========== Build: 3 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========,一切都很好

5) 浏览到 XGB 安装文件所在的 python-packages 文件夹并运行安装命令“python setup.py install”。

您可以在Install xgboost under python with 32-bit msys failed找到类似的线程

希望这可以帮助。

于 2016-01-20T22:08:45.567 回答
1

您可以使用 Visual Studio 或 minGW 安装 xGBoost。由于官方 xgboost 网站说 MSVC 版本尚未更新,我尝试使用 mingw64。我在我的 win7 x64 上运行 xgboost(python 包)。我遵循的步骤是:

1)按照Disco4Ever的 ming64 安装步骤(上面的答案中提到)。

2) 为 Windows 安装 Git。windows下载链接。这也将安装 Git Bash。将git-installation-directory \cmd 添加到您的系统环境变量 PATH 列表中。

3) 现在将 xGBoost 克隆到所需位置。在 cmd 中键入以下内容:

git clone --recursive https://github.com/dmlc/xgboost
cd xgboost
git submodule init
git submodule update
cp make/mingw64.mk config.mk
make -j4

4) 在xgboost 的根目录中应该有一个名为“build”的shell 脚本。打开它。它将打开一个 Git Bash 并开始构建。构建后,将创建 xgboost.exe 文件。

5)现在安装python包:

cd python-package
python setup.py install

您可以通过在 python 中导入 xgboost 来进行测试。

于 2016-02-06T18:37:40.270 回答
1

为那些试图在 32 位 Windows 机器上构建的人添加 Disco4ever 的解决方案。

完成第 6 步并创建 config.mk 文件后,您需要进入该文件并编辑以下行以删除 -m64 标志

export CXX=g++ -m64
export CC=gcc -m64
于 2016-04-12T11:11:36.713 回答
1

在上面的 Disco4Ever 解决方案中添加“git checkout 9a48a40”对我有用:

git clone --recursive https://github.com/dmlc/xgboost
cd xgboost
git checkout 9a48a40
git submodule init
git submodule update

这最初是由 Cortajarena 在这里发布的: https ://github.com/dmlc/xgboost/issues/1267

另外,为了它的价值,我最初在我的 64 位机器上运行 32 位 Python,我必须上传 64 位 Python 才能使 XGBoost 工作。

于 2016-06-12T23:13:13.610 回答
1

感谢 disco4ever 的回答。我试图在我的 Windows 10 64 位机器上为 Python Anaconda 环境构建 xgboost。使用 Git、mingw64 和基本的 windows cmd。

在复制步骤之前,一切都对我有用:cp make/mingw64.mk config.mk,因为我使用的是 windows cmd,所以我将其修改为复制c:\xgboost\make\mingw64.mk c:\xgboost\config.mk

当我进行下一步时:make -j4,我得到了构建失败的错误。在经历了如此多的挫折之后的这个阶段,通过单击 build.sh(shell 脚本)只是厌倦了一些不同的东西。它开始执行并自动完成。

然后我执行了同样的步骤 make -j4,到我的 awe build 成功了。我在我的 xgboost 文件夹中看到了最期待的 xgboost.exe 文件。

然后我继续执行进一步的步骤并执行 python setup.py install。最后一切安装完美。然后我去了我的spyder并检查它是否工作。但我离幸福只有一步之遥,因为我仍然看到导入错误。

关闭所有命令提示符(Anaconda、Git bash、Windows CMD、cygwin 终端)然后再次打开 spyder 并输入“import xgboost”。成功,没有错误。

再次感谢大家。

于 2016-08-06T20:59:58.943 回答
1

在 windows 10 上,使用 python 3.6,下面的命令有效。

在 Anaconda Prompt 中,可以直接使用以下命令。附上截图作为证据。点安装 xgboost 在此处输入图像描述

于 2018-09-24T08:37:08.020 回答
0

花了一整天的时间,但我使用启用了 OpenMP 的TDM-GCC 成功地在 Windows 7 64 位机器上安装了 xgboost,而不是在此链接之后的 MingW - http://dnc1994.com/2016/03/installing-xgboost-on -视窗/

于 2016-03-15T13:22:54.743 回答
0

这是一个非常有用的链接,其中包含在安装过程中需要注意的要点。安装“openmp”非常重要。否则你会收到错误信息。

该链接提供了安装的分步说明。这是一些报价:

构建 Xgboost

公平地说,在 Windows 上安装 xgboost 的官方指南并没有错。但是,我还是想在这里强调几点以节省您的时间。

git clone --recursive https://github.com/dmlc/xgboost  
cd xgboost  
wget https://www.dropbox.com/s/y8myex4bnuzcp03/Makefile_win?dl=1
cp Makefile_win Makefile
cp make/mingw64.mk config.mk
mingw32-make

Makefile_win 是原始 Makefile 的修改版本(感谢 Zhou Xiyou),以适应 Windows 上的构建过程。您可以在此处获取或下载。请务必为 thi 使用 UNIX shell,因为 Windows CMD 与 mkdir -p 命令有问题。推荐使用 Git Bash。确保在 git clone 中使用 --recursive 选项。请务必使用正确的 MinGW。推荐使用 TDM-GCC。请注意,默认情况下它不会为您安装 OpenMP。您需要指定它,否则建筑物将失败。

另一个有用的链接是官方程序:官方指南

祝你好运!

于 2016-04-26T01:42:45.700 回答
0

我想为 Disco4ever 的解决方案添加一个小解决方法。

对我来说,我无法在 cygwin 中进行克隆。所以解决方法是在 Windows 的命令提示符下执行它,然后在 cygwin 中完成其余的任务。

在第 3 行使用 cd c:\xgboost 使其在 cygwin 中工作。所以更新的最后一部分是这样的。

cd c:\
git clone --recursive https://github.com/dmlc/xgboost
cd c:\xgboost
git submodule init
git submodule update
cp make/mingw64.mk config.mk
make -j4

安装完成后可以卸载 git 和 cygwin 但 xgboost 和 mingw64 必须保持原样。

于 2016-05-12T08:12:57.750 回答
0

请注意:在“make -j4”之前使用 gcc -v 检查您的 gcc 版本。

对我来说,当我运行 make -j4 时,我的环境是 win10 + anaconda(python 2.7)。它显示 std::mutex 错误。在我使用 gcc-v 之后,它会回显 gcc4.7(anaconda 的默认 gcc)。在我选择我的 gcc 到 mingw64 的 6.2 gcc 之后,它就可以工作了。

最后,我使用“/d/Anaconda2/python.exe setup.py install”安装xgboost python包。

于 2017-12-26T11:39:51.107 回答
0

您可以使用以下 3 个步骤安装 XGBoost:

  1. 收集系统信息(python 版本和系统架构 - 32 位或 64 位)

  2. 从https://www.lfd.uci.edu/~gohlke/pythonlibs/下载相关的 .whl

例如,如果您的 python 版本是 3.7 而 windows 是 32 位,那么合适的文件是:

xgboost‑0.72‑cp37‑cp37m‑win32.whl

  1. 运行 pip install yourdownloadedfile.whl

您还可以在此处找到详细步骤。

于 2018-07-18T08:18:05.697 回答
0

我使用 Jupyter notebook,发现了一种在 Anaconda 中安装 XGBoost 的非常简单的方法:

  1. 安装 Anaconda
  2. 打开 Anaconda 导航器
  3. 在环境中,更新索引并搜索 xgboost(未安装)
  4. 选择 libxgboost 和 py-xgboost 并单击“应用”

完毕

于 2019-04-24T03:44:10.743 回答