Как установить пакет xgboost в python (платформа windows)?

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

на главной странице xgboost (выше ссылки), он говорит: Чтобы установить XGBoost, выполните следующие действия:

  1. вам нужно запустить make в корневом каталоге проекта

  2. в каталоге python-package запустите

    python setup.py установить

однако, когда я это сделал, для шага 1 следующее ошибки появляются: сделать : термин "создавать" не распознано как имя командлета, функции, файла скрипта или выполняемой программы. Проверьте написание имени или если путь был включен, проверьте правильность пути и повторите попытку.

затем я пропускаю Шаг 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?

кто-нибудь знает, как установить xgboost для python на платформе Windows10? Спасибо за помощь!

17 ответов


я успешно установил XGBoost в Windows 8 64bit, Python 2.7 с Visual Studio 2013 (не нужен mingw64)

Обновлено 15/02/2017

С более новой версией 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...
    • выберите выпуск в конфигурации активного решения
    • выберите x64 в Active solution platform
  • щелкните построить > построить решение (Ctrl + Shift +B)

после сборки решения, два новых файла libxgboost.dll и xgboost.exe создаются в папке xgboost_dir/lib

Шаг 5. построить пакет python

    скопировать libxgboost.dll to xgboost_dir/python-package
  • каталог xgboost_dir/python-package папку
  • выполнить команду python setup.py install

убедитесь, что xgboost были установлены успешно

$ python -c "import xgboost"

старый Ответ

вот мои действия:

  1. git clone https://github.com/dmlc/xgboost
  2. git checkout 9bc3d16
  3. открыть проект в xgboost/windows С Visual Studio 2013
  4. в Visual Studio 2013 откройте BUILD > Configuration Manager...,
    • выбрать Release на Active solution configuration
    • выбрать x64 на Active solution platform
  5. восстановить xgboost, xgboost_wrapper
  6. копировать все файлы в до xgboost/wrapper
  7. на xgboost/python-package, выполнить команду python setup.py install
  8. Проверьте xgboost, выполнив команду python -c "import xgboost"

в случае, если кто-то ищет более простое решение, которое не требует компиляции его самостоятельно:

  1. загрузите файл XGBoost whl из здесь (убедитесь, что соответствует вашей версии python и системной архитектуре, например "xgboost-0.6-cp35-cp35m-win_amd64.whl " для python 3.5 на 64-битной машине)
  2. открыть командную строку
  3. cd в папку загрузки (или там, где вы сохранили файл whl)
  4. pip install xgboost-0.6-cp35-cp35m-win_amd64.whl (или независимо от вашего whl файл называется)

Если вы обнаружите, что он не будет установлен из-за отсутствующей зависимости, сначала загрузите и установите зависимость и повторите попытку.

если он жалуется на разрешения доступа, попробуйте открыть командную строку как администратор и повторите попытку.

это дает вам XGBoost и оболочку scikit-learn и избавляет вас от необходимости проходить через боль компиляции самостоятельно. :)


обратите внимание, что с самого последнего выпуска инструкции Microsoft Visual Studio больше не применяются, поскольку эта ссылка возвращает ошибку 404:

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

вы можете узнать больше об удалении сборки MSVC из комментария Tianqi Chen здесь.

Итак, вот что я сделал, чтобы закончить 64-битную сборку в Windows:

  1. скачать и установить MinGW-64: http://sourceforge.net/projects/mingw-w64/
  2. на первом экране подсказки установки убедитесь, что вы установили архитектуру в x86_64 с и потоков для Win32
  3. я установил в C:\mingw64 (чтобы избежать пробелов в пути к файлу), поэтому я добавил Это в переменную среды PATH: C:\mingw64\mingw64\bin
  4. я также заметил, что утилита make, которая включена в bin\mingw64 называется mingw32-make чтобы упростить вещи, я просто переименовал это сделать
  5. Откройте командную строку Windows и введите gcc. Вы должны увидеть что-то вроде "фатальная ошибка: исходный файл"
  6. Следующий тип сделать. Вы должны увидеть что-то вроде "не указаны цели и не найден файл makefile"
  7. введите git. Если у вас нет git, установите его и добавьте в свой ПУТЬ.

они должны быть все инструменты, необходимые для сборки проект xgboost. Чтобы получить исходный код, выполните следующие строки:

  1. cd c:\
  2. git clone --рекурсивный https://github.com/dmlc/xgboost
  3. компакт-диск xgboost
  4. git подмодуль init
  5. обновление подмодуля git
  6. CP make / mingw64.Mk config.МК
  7. сделать -J4 не

обратите внимание, что я запустил эту часть из оболочки Cygwin. Если вы используете командную строку Windows, вы должны быть возможность изменения cp для копирования и получения того же результата. Однако, если сборка не удалась по какой-либо причине, я бы рекомендовал попробовать снова использовать cygwin.

если сборка завершается успешно, у вас должен быть файл с именем xgboost.exe находится в корне проекта. Чтобы установить пакет Python, выполните следующие действия:

  1. cd python-пакет
  2. python setup.py установить

теперь вы должны быть хорошо идти. Откройте Python, и вы можно импортировать пакет с:

import xgboost as xgb

чтобы проверить установку, я пошел вперед и запустил basic_walkthrough.py файл, который был включен в папку demo / guide-python проекта и не получил никаких ошибок.


Я только что установил xgboost как мой питон 2.7 и Python 3.5, анаконда, 64бит машину и 64-битный питон.

оба очень простые, не требуется VS2013 или git.

Я думаю, что это работает и для обычного python.

если вы используете python 3.5:

1: скачать пакет здесь, версия зависит от вашей версии python, python3.5 или python 3.6, 32bit или 64bit.

2: используйте команду окно, Используйте cd, чтобы сделать папку Загрузки в качестве pwd, а затем используйте

pip install filename.whl

ОК, закончили. Дополнительные сведения см. В разделе ответ

если вы используете python 2.7,вам не нужно загружать VS2013, чтобы построить его самостоятельно, потому что я построил его, вы можете скачать файл, который я построил и установить его напрямую

1: Скачать здесь Google drive

2: Скачать его, распаковать его, вставить его здесь:

"ваш путь python\Lib\site-packages"

тогда у вас должно быть что-то вроде этого:

enter image description here

3: в папке python-package, показанной выше, используйте окно cmd, компакт-диск и запустите

python setup.py install 

используйте этот код

 import xgboost 

в вашем python, чтобы проверить, установили ли вы mingw-64 или нет, никакая информация об ошибке не означает, что вы установили mingw-64, и вы закончили.

если есть информация об ошибке

" WindowsError: [Ошибка 126]"

это означает, что вы не установили mingw-64, и у вас есть еще один шаг.

скачать mingw-64 здесь:http://sourceforge.net/projects/mingw-w64/

выберите x86_64 вместо значения по умолчанию "i686" при установке mingw-64, затем добавьте" ваш путь установки\x86_64-6.2.0-posix-seh-rt_v5-rev1\mingw64\bin; " к вашему пути, это должно быть что-то вроде это:

"C:\Program файлы\компилятор MinGW-w64\x86_64 с-6.2.0-в POSIX-сех-rt_v5-ред. 1\mingw64\бин;"

(это мое).

Не забывайте"; " на пути.

тогда вы закончили, вы можете использовать

import xgboost 

в вашем python, чтобы проверить это, да!

PS: Если вы не знаете, как добавить путь, просто google, чтобы получить решения. Не волнуйтесь, все очень просто.


если вы устанавливаете 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.

  3. Открыть Командную Строку. Перейдите в каталог к интерпретатору проекта из cmd. Напишите следующую команду:pip install xgboost-0.72-cp36-cp36m-win_amd64.whl


после сборки версии c++ скопируйте файлы dll и lib выпуска ../ windows / x64/выпуск/..(если вы создаете версию x64)../ wrapper / затем запустите python setup.py установить


Я выполнил шаги, перечисленные в 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. В правом верхнем углу есть кнопка "free visual studio"

2) скопируйте все содержимое из репозитория Git hub xgboost / tree / master / windows и откройте Существующий проект Visual studio в Visual studio

3) есть несколько выпадающих меню, которые вам нужно выбрать ( "Release" и "X64", а затем выберите build --> build all из верхнего меню. Он должен выглядеть примерно как прилагаемый скриншот.

4) Если вы видите сообщение ========== сборка: 3 успешно, 0 не удалось, 0 обновлено, 0 пропущено ==========, все хорошо

5) перейдите в папку python-packages, где находится файл установки для XGB, и запустите установите команду 'питон setup.py установите'.

вы можете найти похожую тему в установите xgboost под python с 32-битным msys failing

надеюсь, что это помогает.


чтобы добавить к решению Disco4ever для тех, кто пытается построить на 32-битных машинах Windows.

после выполнения шага 6 и создания конфигурации.Mk файл вам нужно зайти в этот файл и отредактировать следующие строки, чтобы удалить флаг-m64

export CXX=g++ -m64
export CC=gcc -m64

добавление" git checkout 9a48a40 " в решение Disco4Ever выше работало для меня:

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

кроме того, для чего это стоит, у меня изначально был 32-битный Python, работающий на моей 64-битной машине, и мне пришлось загрузить 64-битный Python для XGBoost для работы.


спасибо disco4ever ответ. Я пытался построить XGBoost для среды Python Anaconda в моей Windows 10 64-битной машине. Используется git, mingw64 и базовая Windows cmd.

Everthing работал для меня до шага копирования: CP make/mingw64.Mk config.mk, поскольку я использовал Windows cmd, я изменил его, чтобы скопировать c:\xgboost\make\mingw64.mk c:\xgboost\config.mk

когда я перешел к следующему шагу: make-j4, я получил ошибку, что сборка не удалась. На данном этапе после много разочарований, просто устал что-то другое, нажав на build.sh (сценарий оболочки). Он начал выполняться и автоматически закончил.

затем я выполнил тот же шаг make-j4, чтобы моя сборка была успешной. Я видел самый ожидаемый xgboost.exe-файл в моей папке xgboost.

затем я продолжил дальнейшие шаги и выполнил python setup.py установить. наконец, все установлено отлично. Затем я пошел к своему spyder и проверил, работает ли он или нет. Но я был одним из них. отойдите к моему счастью, потому что я все еще видел ошибку импорта.

закрыл все командные подсказки (Anaconda, Git bash, Windows CMD, cygwin terminal), затем снова открыл spyder и набрал "import xgboost". Успех, без ошибок.

еще раз спасибо за все.


вы можете установить xGBoost с помощью Visual Studio или minGW. Поскольку на официальном сайте xgboost говорится, что сборка MSVC еще не обновлена, я попытался использовать mingw64. Я запускаю xgboost (пакет python) на моем win7 x64. Шаги, которым я следовал, были:--3-->

1) следовать Disco4Everшаги для установки ming64 (упомянутые выше в ответах).

2) Установите Git для windows. ссылка для загрузки windows. Это также установит Git Bash. Добавлять git-установка-каталог\cmd в список путей к системной переменной среды.

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". Открыть его. Это откроет Git Bash и начнет строить. После строительства, xgboost.EXE-файл будет создан.

5) Теперь установите пакет python:

cd python-package
python setup.py install

вы можете проверить, импортировав xgboost в Python.


это заняло целый день, но я успешно установил xgboost на 64-битную коробку windows 7, используя TDM-GCC С включенным OpenMP вместо MingW по этой ссылке - http://dnc1994.com/2016/03/installing-xgboost-on-windows/


здесь очень полезная связь с важными пунктами обратить внимание во время установки. Очень важно установить "openmp". В противном случае вы получите сообщение об ошибке.

ссылка предоставляет пошаговую инструкцию по установке. Вот некоторые цитаты:

Здание Xgboost

справедливости ради, нет ничего плохого в официальном руководстве для установка xgboost в Windows. Но все же, я хотел бы подчеркнуть несколько очки здесь, чтобы сэкономить ваше время.

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-это модифицированная версия (благодаря Zhou Xiyou) оригинальный Makefile в соответствии с процессом строительства на Windows. Вы можете wget или загрузить его здесь. Обязательно используйте оболочку UNIX для thi потому что Windows CMD имеет проблему с командой mkdir-P. ГИТ Баш рекомендуемый. Обязательно используйте параметр --recursive с git clone. Быть уверенным использовать правильный MinGW. Рекомендуется TDM-GCC. Обратите внимание, что по умолчанию это не будет устанавливать OpenMP для вас. Вам нужно указать это в противном случае здание рухнет.

еще одна полезная ссылка-это официальная процедура: официальное руководство

удачи!


Я хотел бы добавить небольшой обходной путь к решению Disco4ever.

для меня я не смог выполнить клонирование в cygwin. Таким образом, обходной путь выполняет его в командной строке в windows и выполняет остальную часть задачи в cygwin.

использовать cd c:\xgboost в 3-й строке, чтобы заставить его работать в 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 должны быть сохранены как это есть.


обратите внимание: перед "make-j4" используйте gcc-v для проверки версии gcc.

Что касается меня, моя среда win10 + anaconda (python 2.7), когда я запускаю make-j4. Он показывает ошибку std::mutex. После того, как я использую gcc - v, это эхо gcc4.7 (gcc по умолчанию anaconda).После того ,как я выбираю свой gcc для mingw64 6.2 gcc, он работает.

наконец, я использую " /d/Anaconda2 / python.exe setup.py установить " установить пакет python xgboost.


вы можете установить XGBoost, используя следующие 3 шага:

  1. сбор информации о вашей системе (версия python и архитектура системы - 32 бит или 64 бит)

  2. скачать обзоры .whl от https://www.lfd.uci.edu / ~gohlke / pythonlibs/

например, если ваша версия python 3.7 и windows 32 бит, то подходящий файл:

xgboost-0.72-cp37-cp37m-win32.whl

  1. запустите pip install yourdownloadedfile.whl

вы можете найти подробные инструкции здесь.


в windows 10, С python 3.6, ниже команда работала.

из командной строки Anaconda, ниже команда может использоваться напрямую. Скриншот прилагается в качестве доказательства. pip установить xgboost enter image description here