Python XGBoost with GPU支持安装错误:can';t复制';xgboost\lib';:不';不存在或不是常规文件

Python XGBoost with GPU支持安装错误:can';t复制';xgboost\lib';:不';不存在或不是常规文件,python,installation,xgboost,Python,Installation,Xgboost,类似的非重复员额: 我浏览了多篇关于在Windows10上安装Python的xgboost的堆栈溢出帖子,但没有一篇提到我遇到的问题。此外,所有帖子似乎都是关于在没有GPU支持的情况下安装xgboost 我还发现,由于它省略了某些目录更改,并且具有一些中断命令流的不同选项,因此很难遵循。以下是我在使用Python 3.6.4的Windows 10上使用GPU支持安装xgboost时所使用的步骤: 必要的软件 第一步是安装此安装所需的以下软件: ,将CMake添加到您的系统PATH Vi

类似的非重复员额:

我浏览了多篇关于在Windows10上安装Python的
xgboost
的堆栈溢出帖子,但没有一篇提到我遇到的问题。此外,所有帖子似乎都是关于在没有GPU支持的情况下安装
xgboost

我还发现,由于它省略了某些目录更改,并且具有一些中断命令流的不同选项,因此很难遵循。以下是我在使用Python 3.6.4的Windows 10上使用GPU支持安装
xgboost
时所使用的步骤:

必要的软件 第一步是安装此安装所需的以下软件:

  • ,将CMake添加到您的系统
    PATH
  • Visual Studio 2015及其更新3和Visual C++
  • ,确保将其添加到
    路径
    变量中
  • 注意:版本必须至少为8.0。我使用9.0是因为与较新版本和Tensorflow的兼容性问题
确保安装了以下软件包:

conda install -y numpy scipy pandas matplotlib nose scikit-learn graphviz python-graphviz
步骤1:克隆回购协议 在管理员模式下随VS2015一起安装的VS2015 x64 Native Tools命令提示符中,在希望
xgboost
文件夹位于的文件夹中运行以下命令:

git clone --recursive https://github.com/dmlc/xgboost
cd xgboost
git submodule init
git submodule update
步骤2:使用CMake创建.sln文件 步骤3:安装Python包 如果以上操作完成且没有任何错误,请运行以下操作:

cd ../python-package
python setup.py install
错误: 此时,出现以下错误,安装失败:

error: can't copy 'xgboost\lib': doesn't exist or not a regular file

有关我的解决方案,请参阅下面的答案,如果找到更好的方法解决此问题,请发布另一个答案。

编辑
xgboost/python package/setup.py
并将第38行更改为以下内容():

现在它应该安装没有任何问题。要确保一切正常,只需运行以下命令,如果运行时没有错误,则可以继续:

python -c "import xgboost"
您可以在安装后使用
nose
包运行附加测试,并从root
xgboost/
目录执行以下命令:

nosetests tests/python
要进一步确认它已安装GPU支持,您可以使用安装附带的:

gpu_hist算法:

python tests/benchmark/benchmark_tree.py
输出:

Train Time: 46.25219774246216 seconds
Train Time: 84.04853415489197 seconds
不带GPU的hist算法:

python tests/benchmark/benchmark_tree.py --tree_method hist
输出:

Train Time: 46.25219774246216 seconds
Train Time: 84.04853415489197 seconds