gpt4 book ai didi

python - Python Anaconda Windows 10 的 XGBoost 安装问题(2018 年 5 月 18 日)

转载 作者:太空狗 更新时间:2023-10-30 01:31:38 24 4
gpt4 key购买 nike

在过去的几天里,我尝试使用在以下位置找到的说明安装 XGBoost

  • http://xgboost.readthedocs.io/en/latest/build.html
  • XGBoost Installation in windows
  • https://github.com/dmlc/xgboost/tree/master/python-package
  • https://www.ibm.com/developerworks/community/blogs/jfp/entry/Installing_XGBoost_For_Anaconda_on_Windows?lang=en
  • https://anaconda.org/conda-forge/xgboost
  • http://www.picnet.com.au/blogs/guido/2016/09/22/xgboost-windows-x64-binaries-for-download/ .

  • 一些说明很简单(例如, conda install -c conda-forge xgboost )。其他的涉及几十个步骤,其中一些对于像我这样的新手来说不清楚和困惑。

    一些安装似乎有效,但在 jupyter notebook 中导入模块失败。例如,我可以在 ...\Anaconda2\envs\py36\Lib\site-packages\xgboost-0.71-py3.6.egg\xgboost 看到已安装的文件,但导入会产生错误。

    我最近的尝试遵循了在 https://www.kaggle.com/general/30163#latest-330213 上发布的说明: conda install -c anaconda py-xgboost .

    再次,安装似乎有效:我可以在 ...\Anaconda2\envs\py36\Lib\site-packages\xgboost 下看到已安装的文件。 .但是在我的笔记本中,当我尝试使用两者导入模块时
    from xgboost import XGBRegressor

    import xgboost
    我收到 OSError: [WinError 126] The specified module could not be found error.
    完整的回溯如下。

    有没有办法解决这个问题?更好的安装方式?我想继续看 Dan Becker 在 kaggle 上对 ML 的介绍!

    版本:
     python version : 3.6.4150.1013
    conda version : 4.3.30

    Microsoft Windows : Version 10.0.16299.431
    platform : win-64
    git bash : launches a window labeled `MINGW64:/c/users/karls`

    追溯:
    ---------------------------------------------------------------------------
    OSError Traceback (most recent call last)
    <ipython-input-7-15d947748610> in <module>()
    ----> 1 from xgboost import XGBRegressor # OSError: [WinError 126] The specified module could not be found
    2
    3 my_model = XGBRegressor()
    4 # Add silent=True to avoid printing out updates with each cycle
    5 my_model.fit(train_X, train_y, verbose=False)

    ~\Anaconda2\envs\py36\lib\site-packages\xgboost\__init__.py in <module>()
    9 import os
    10
    ---> 11 from .core import DMatrix, Booster
    12 from .training import train, cv
    13 from . import rabit # noqa

    ~\Anaconda2\envs\py36\lib\site-packages\xgboost\core.py in <module>()
    113
    114 # load the XGBoost library globally
    --> 115 _LIB = _load_lib()
    116
    117

    ~\Anaconda2\envs\py36\lib\site-packages\xgboost\core.py in _load_lib()
    107 if len(lib_path) == 0:
    108 return None
    --> 109 lib = ctypes.cdll.LoadLibrary(lib_path[0])
    110 lib.XGBGetLastError.restype = ctypes.c_char_p
    111 return lib

    ~\Anaconda2\envs\py36\lib\ctypes\__init__.py in LoadLibrary(self, name)
    424
    425 def LoadLibrary(self, name):
    --> 426 return self._dlltype(name)
    427
    428 cdll = LibraryLoader(CDLL)

    ~\Anaconda2\envs\py36\lib\ctypes\__init__.py in __init__(self, name, mode, handle, use_errno, use_last_error)
    346
    347 if handle is None:
    --> 348 self._handle = _dlopen(self._name, mode)
    349 else:
    350 self._handle = handle

    OSError: [WinError 126] The specified module could not be found

    编辑 1
    安装尝试

    示例 1:conda install -c anaconda py-xgboost
  • 启动 Anaconda 提示
  • 激活 py36
  • 运行 conda install -c anaconda py-xgboost

  • 这是我几天前尝试安装时的命令窗口结果(以及当我今天回溯这些步骤时在“所有请求的包已经安装”确认下方):
    (py36) C:\Users\karls>conda install -c anaconda py-xgboost
    Fetching package metadata ...............
    Solving package specifications: .

    Package plan for installation in environment C:\Users\karls\Anaconda2\envs\py36:

    The following packages will be UPDATED:

    bzip2: 1.0.6-haa5b126_2 --> 1.0.6-vc14_3 anaconda [vc14]

    The following packages will be SUPERSEDED by a higher-priority channel:

    cryptography: 2.1.4-py36he1d7878_0 --> 2.0.3-py36h123decb_1 anaconda
    curl: 7.58.0-h7602738_0 --> 7.55.1-vc14hdaba4a4_3 anaconda [vc14]
    freetype: 2.8-h51f8f2c_1 --> 2.8-vc14h17c9bdf_0 anaconda [vc14]
    hdf5: 1.10.1-h98b8871_1 --> 1.10.1-vc14hb361328_0 anaconda [vc14]
    icu: 58.2-ha66f8fd_1 --> 58.2-vc14hc45fdbb_0 anaconda [vc14]
    jpeg: 9b-hb83a4c4_2 --> 9b-vc14h4d7706e_1 anaconda [vc14]
    libiconv: 1.15-h1df5818_7 --> 1.15-vc14h29686d3_5 anaconda [vc14]
    libpng: 1.6.34-h79bbb47_0 --> 1.6.32-vc14h5163883_3 anaconda [vc14]
    libssh2: 1.8.0-hd619d38_4 --> 1.8.0-vc14hcf584a9_2 anaconda [vc14]
    libtiff: 4.0.9-h0f13578_0 --> 4.0.8-vc14h04e2a1e_10 anaconda [vc14]
    libxml2: 2.9.7-h79bbb47_0 --> 2.9.4-vc14h8fd0f11_5 anaconda [vc14]
    libxslt: 1.1.32-hf6f1972_0 --> 1.1.29-vc14hf85b8d4_5 anaconda [vc14]
    lxml: 4.2.1-py36heafd4d3_0 --> 4.1.1-py36he0adb16_0 anaconda
    lzo: 2.10-h6df0209_2 --> 2.10-vc14h0a64fa6_1 anaconda [vc14]
    openssl: 1.0.2n-h74b6da3_0 --> 1.0.2l-vc14hf4c37d5_5 anaconda [vc14]
    pillow: 5.0.0-py36h0738816_0 --> 4.2.1-py36hdb25ab2_0 anaconda
    py-xgboost: 0.71-py36h6538335_0 --> 0.71-py36h6538335_0 anaconda
    pycurl: 7.43.0.1-py36h74b6da3_0 --> 7.43.0-py36h086bf4c_3 anaconda
    pyopenssl: 17.5.0-py36h5b7d817_0 --> 17.4.0-py36h3316aad_0 anaconda
    qt: 5.6.2-vc14h6f8c307_12 --> 5.6.2-vc14h6f8c307_12 anaconda [vc14]
    sqlite: 3.22.0-h9d3ae62_0 --> 3.20.1-vc14h7ce8c62_1 anaconda [vc14]
    tk: 8.6.7-hcb92d03_3 --> 8.6.7-vc14hb68737d_1 anaconda [vc14]
    yaml: 0.1.7-hc54c509_2 --> 0.1.7-vc14hb31d195_1 anaconda [vc14]
    zlib: 1.2.11-h8395fce_2 --> 1.2.11-vc14h1cdd9ab_1 anaconda [vc14]

    Proceed ([y]/n)?

    我输入y,回车,模块就安装好了。我没有复制结果,但它表明成功——但是当我尝试将其导入笔记本时没有找到该模块。

    以下是我今天再次采取这些步骤时的结果:
    (C:\Users\karls\Anaconda2) C:\Users\karls>activate py36

    (py36) C:\Users\karls>conda install -c anaconda py-xgboost
    Fetching package metadata ...............
    Solving package specifications: .

    # All requested packages already installed.
    # packages in environment at C:\Users\karls\Anaconda2\envs\py36:
    #
    py-xgboost 0.71 py36h6538335_0 anaconda

    (py36) C:\Users\karls>

    Anaconda2\envs\py36\Lib\site-packages\xgboost

    Anaconda2\envs\py36\Lib\site-packages\xgboost__pycache__

    编辑 2
    示例 2:
    XGBOOST 0.71 A

    XGBOOST 0.71 B

    XGBOOST 0.71 C

    最佳答案

    我发现一个安装过程似乎在 jupyter notebook 中使用 Anaconda 4.3 for python 3.6.4 on Windows 10 win-64。下面我详细说明了我遵循的过程。在底部,我包含了已安装文件夹和文件的几个屏幕截图。如果您对如何改进此过程有任何建议,请告诉我。

    此过程改编自 http://adataanalyst.com/machine-learning/installing-xgboost-for-windows-10/ 处的说明。这反过来又来自 http://stackoverflow.com/questions/33749735/how-to-install-xgboost-package-in-python-windows-platform .

    准备

  • 如果您没有 git,请安装它并将其添加到您的 PATH 中。
  • 作为之前尝试安装 xgboost 的一部分,我最近将 numpy 和 scipy 更新到最新版本
  • 下载并安装 MinGW-64:http://sourceforge.net/projects/mingw-w64/

    一种。在设置对话框中,将架构设置为“x86_64”(原为 i686),将线程设置为“win32”(原为 posix)

    湾我将 MinGW-64 安装到 C:\Program Files 中的默认文件路径,所以我将 C:\Program Files\mingw-w64\x86_64-8.1.0-win32-seh-rt_v6-rev0\mingw64\bin 添加到我的 PATH环境变量

    C。安装完成后,按照提示我去了mingw64\bin文件夹并重命名 mingw32-makemake
  • 实际上,我复制了mingw32-make并将副本命名为 make
  • 这样做可能是我下面一些麻烦的根源,尽管我能够克服它们。我建议您尝试重命名文件,而不是像我一样保留两个不同名称的相同文件副本

  • 获取 XGBOOST 源代码
  • 启动 Windows 命令提示符:开始 |视窗系统 |命令提示符
  • 这些步骤也可以在 MINGW64 中工作,我稍后会切换到它,但在这里我尝试忠实地记录我按照我的说明所做的步骤)

  • 一种。输入 cd c:\哪里 c:\代表您要安装 xgboost 的位置。对我来说是 C:\...\Anaconda2\envs\py36\Lib\site-packages
    湾输入 git clone --recursive https://github.com/dmlc/xgboost
  • 这将在显示下一步提示之前运行并输出几十行输出

  • C。输入 cd xgboost
    d.输入 git submodule init
  • 这没有产生任何输出并立即再次显示提示

  • e.输入 git submodule update
  • 这没有产生任何输出并立即再次显示提示

  • F。输入 copy make\mingw64.mk config.mk
  • 输出:“复制了 1 个文件。”
  • 注意:到目前为止,所有命令都在 Windows 命令提示符下运行。下一个在那里不起作用,所以我切换到 mingw64 终端。我重新运行步骤“f”并继续下一步。
  • 启动 mingw64 终端:开始 | MinGW--W64项目|运行终端

    一种。输入 cd C:\Users\karls\Anaconda2\envs\py36\Lib\site-packages\xgboost
    湾输入 copy make\mingw64.mk config.mk
    C。输入 make -j4
  • 此命令不起作用。我根据我在谷歌上搜索的建议尝试了数十种变体:make.exe , makefile , cmake , pymake , make.py , mingw64-make , mingw64-make.exe , C:\Program Files\mingw-w64\x86_64-8.1.0-win32-seh-rt_v6-rev0\mingw64\bin\make ,名单还在继续。没有任何效果。我尝试将目录更改为 site-packages\xgboost 内的其他文件夹.最后,虽然输出是可疑的,但我发现了以下内容并能够继续。

  • d.将目录更改为 ...\site-packages\xgboost\make
    e.输入 mingw64.mk -j4
  • 这会弹出一个“你想如何打开这个文件?” dialog,这是我见过的最有希望的输出。我没有打开文件。命令有什么用吗?我不知道,但我继续下一步。

  • 安装 Python 包

    F。将目录更改为 site-packages\xgboost\python-package
    G。输入 python setup.py install
  • 这会输出几十行:运行这个,创建那个,写入和读取和复制等。
  • 我也有几个“警告:没有找到匹配的文件......”行。
  • 据推测,在接下来的更多编写、安装、运行、创建、复制、字节编译、删除、处理、提取、添加和搜索的行中处理了任何缺失的内容
  • 最后一行是“已完成 xgboost==0.71 的处理依赖项”

  • 在这一点上,我能够在 jupyter notebook 中导入和使用 xgboost,所以我没有采取任何进一步的步骤。但是,我遵循的说明(上面链接)包括您可能认为必要的其他步骤。如果您在我的过程中看到任何错误,请告诉我,因为我仍然怀疑我的安装不会受到以后更新问题的影响(例如,该目录似乎在多个位置包含相同文件的副本)。

    以下是已安装目录的几个屏幕截图:

    xgboost installed folder files
    xgboost installed files

    关于python - Python Anaconda Windows 10 的 XGBoost 安装问题(2018 年 5 月 18 日),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50420693/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com