类似的非重复帖子:
我浏览了几篇关于在Windows 10上为Python安装xgboost
的Stack Overflow帖子,但没有人提到我遇到过的问题。此外,所有帖子似乎都是关于在没有GPU支持的情况下安装xgboost
。
我还发现official installation guide很难遵循,因为它省略了某些目录更改,并且有一些不同的选项会破坏命令流。以下是我使用Python 3.6.4在Windows 10上使用GPU支持安装xgboost
的步骤:
第一步是安装此安装所需的以下软件:
PATH
PATH
变量确保安装了以下软件包:
conda install -y numpy scipy pandas matplotlib nose scikit-learn graphviz python-graphviz
在VS2015以管理员模式安装的VS2015 x64 Native Tools命令提示符中,在您希望xgboost
文件夹所在的文件夹中运行以下命令:
git clone --recursive https://github.com/dmlc/xgboost
cd xgboost
git submodule init
git submodule update
mkdir build
cd build
cmake .. -G "Visual Studio 14 2015 Win64" -DUSE_CUDA=ON
cmake --build . --target xgboost --config Release
如果上述内容完整且没有任何错误,请运行以下命令:
cd ../python-package
python setup.py install
此时,我收到以下错误,安装失败:
error: can't copy 'xgboost\lib': doesn't exist or not a regular file
请参阅下面的答案以获取我的解决方案,如果您找到更好的方法来解决此问题,请发布另一个答案。
答案 0 :(得分:1)
修改xgboost/python-package/setup.py
并将第38行更改为以下内容(source):
include_package_data=False
现在应该安装没有任何问题。要看到它一切正常,只需运行以下命令,如果它运行没有错误,那么它很有用:
python -c "import xgboost"
您可以在安装后使用nose
包运行其他测试,并在根xgboost/
目录中执行以下命令:
nosetests tests/python
要进一步确认它是否支持GPU,您可以使用安装中附带的benchmarking scripts:
gpu_hist算法:
python tests/benchmark/benchmark_tree.py
输出:
Train Time: 46.25219774246216 seconds
没有GPU的hist算法:
python tests/benchmark/benchmark_tree.py --tree_method hist
输出:
Train Time: 84.04853415489197 seconds