Как установить пакет xgboost в python (платформа Windows)?
http://xgboost.readthedocs.org/en/latest/python/python_intro.html
На домашней странице xgboost (выше ссылки) говорится:
Чтобы установить XGBoost, выполните следующие действия:
-
Вам нужно запустить make
в корневой каталог проекта
-
В каталоге каталога python запустите
установка python setup.py
Однако, когда я это сделал, для шага 1 появляется следующая ошибка:
make: Термин "make" не распознается как имя командлета, функции, файла script или исполняемой программы. Проверить
написание имени или включение пути, проверьте правильность пути и повторите попытку.
то я пропущу step1 и сразу сделаю шаг 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? Спасибо за вашу помощь!
Ответы
Ответ 1
Я успешно установил 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...
- выберите Release в конфигурации Active solution
- выберите x64 в активной платформе решений.
- Нажмите BUILD > Build Solution (Ctrl + Shift + B)
После решения сборки в папке xgboost_dir/lib
создаются два новых файла libxgboost.dll
и xgboost.exe
Шаг 5. Сборка пакета python
- Скопировать файл
libxgboost.dll
в xgboost_dir/python-package
- Сменить каталог в папку
xgboost_dir/python-package
- Команда запуска
python setup.py install
Убедитесь, что xgboost успешно установлен
$ python -c "import xgboost"
Старый ответ
Вот мои шаги:
- git clone https://github.com/dmlc/xgboost
- git checkout 9bc3d16
- Открыть проект в
xgboost/windows
с помощью Visual Studio 2013
- В Visual Studio 2013 откройте
BUILD > Configuration Manager...
,
- выберите
Release
в Active solution configuration
- выберите
x64
в Active solution platform
- Восстановить
xgboost
, xgboost_wrapper
- Скопируйте весь файл в папку
xgboost/windows/x64/Release
в xgboost/wrapper
- Перейдите к
xgboost/python-package
, запустите команду python setup.py install
- Проверьте xgboost, выполнив команду
python -c "import xgboost"
Ответ 2
Если кто-то ищет более простое решение, которое не требует его компиляции самостоятельно:
- загрузите файл xgboost whl из здесь (убедитесь, что вы соответствуете вашей версии python и системной архитектуре, например "xgboost-0.6-cp35-cp35m- win_amd64.whl" для python 3.5 на 64-разрядной машине)
- открыть командную строку
-
cd
в папку загрузки (или где бы вы не сохранили файл whl)
-
pip install xgboost-0.6-cp35-cp35m-win_amd64.whl
(или независимо от вашего имени файла whl)
Если вы обнаружите, что он не будет установлен из-за отсутствующей зависимости, сначала загрузите и установите зависимость и повторите попытку.
Если он жалуется на права доступа, попробуйте открыть свою командную строку в качестве администратора и повторите попытку.
Это дает вам xgboost и обломок scikit-learn, и избавляет вас от необходимости испытывать боль от его компиляции.:)
Ответ 3
Обратите внимание, что начиная с последней версии инструкции Microsoft Visual Studio больше не применяются, поскольку эта ссылка возвращает ошибку 404:
https://github.com/dmlc/xgboost/tree/master/windows
Подробнее о удалении сборки MSVC из комментария Tianqi Chen здесь.
Итак, вот что я сделал, чтобы закончить 64-битную сборку в Windows:
- Загрузите и установите MinGW-64: http://sourceforge.net/projects/mingw-w64/
- На первом экране инсталляции убедитесь, что вы установили для архитектуры значение x86_64, а потоки - win32
- Я установил в C:\mingw64 (чтобы избежать пробелов в пути к файлу), поэтому я добавил это в свою переменную среды PATH: C:\mingw64\mingw64\bin
- Я также заметил, что утилита make, которая включена в bin\mingw64, называется mingw32-make, поэтому для упрощения вещей я просто переименовал ее в make
- Откройте командную строку Windows и введите gcc. Вы должны увидеть что-то вроде "фатальной ошибки: нет входного файла"
- Следующий тип make. Вы должны увидеть что-то вроде "Нет заданных целей и не найден файл makefile"
- Введите git. Если у вас нет git, установите его и добавьте в свой
PATH.
Это должны быть все инструменты, необходимые для создания проекта xgboost. Чтобы получить исходный код, выполните следующие строки:
Обратите внимание, что я запустил эту часть из оболочки Cygwin. Если вы используете командную строку Windows, вы можете изменить cp для копирования и получить тот же результат. Однако, если сборка завершится неудачно на вас по какой-либо причине, я бы рекомендовал попробовать снова с помощью cygwin.
Если сборка завершается успешно, у вас должен быть файл с именем xgboost.exe, расположенный в корне проекта. Чтобы установить пакет Python, выполните следующие действия:
- cd python-package
- установка python setup.py
Теперь вам должно быть хорошо идти. Откройте Python, и вы можете импортировать пакет с помощью:
import xgboost as xgb
Чтобы протестировать установку, я пошел вперед и запустил файл basic_walkthrough.py, который был включен в папку demo/guide-python проекта и не получил никаких ошибок.
Ответ 4
Я только что установил xgboost как для моего python 2.7, так и для python 3.5, anaconda, 64-битной машины и 64-битного питона.
оба ОЧЕНЬ просты, нет VS2013 или git.
Я думаю, что это работает и для обычного питона.
Если вы используете 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 Диска
2: скачайте его, распакуйте его, вставьте здесь:
"ваш путь к python\Lib\site-packages"
Тогда у вас должно получиться что-то вроде этого:
![введите описание изображения здесь]()
3: В папке python-package, показанной выше, используйте окно cmd, cd и запустите
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;" для вашего PATH, это должно быть примерно так:
"C:\Program Files\mingw-w64\x86_64-6.2.0-posix-seh-rt_v5-rev1\mingw64\bin;"
(это мое).
Не забывайте ";" в PATH.
Затем вы закончите, вы можете использовать
import xgboost
в вашем python, чтобы проверить это, Да!
PS: если вы не знаете, как добавить путь, просто перейдите к нему, чтобы получить решения. Не беспокойтесь, это очень просто.
Ответ 5
После сборки версии С++ скопируйте файлы dll и lib в папку../windows/x64/Release/..(если вы создадите версию x64) на.. /wrapper/, затем запустите python setup.py install
Ответ 6
Я выполнил шаги, перечисленные в 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) Скопируйте все содержимое из хранилища хабов git xgboost/tree/master/windows и существующего проекта Visual Visual Studio на Visual Studio
3) Есть несколько выпадающих меню, которые вам нужно выбрать ( "Отпустить" и "X64", а затем выберите "Создать" → "Создать все" из верхнего меню. Он должен выглядеть примерно так, как показано на скриншоте.
4), если вы видите сообщение ========== Build: 3 успешно, 0 не удалось, 0 обновлено, 0 пропущено ==========, это все хорошо
5) Перейдите в папку python-packages, в которой находится файл установки для XGB и запустите команду установки "setup.python setup.py".
Вы можете найти аналогичный поток в Установить xgboost под python с отказом 32-разрядных msys
Надеюсь, что это поможет.
Ответ 7
Вы можете установить xGBoost с помощью Visual Studio или minGW. Поскольку официальный сайт xgboost говорит, что сборка MSVC еще не обновлена, я попытался использовать mingw64.
Я запускаю xgboost (пакет python) на моем win7 x64. Шаги, которые я последовал, были следующими:
1) Выполните шаги Disco4Ever для установки ming64 (упомянутые выше в ответах).
2) Установите 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 должна быть оболочка script с именем "build". Открой это. Он откроет Git Bash и начнет строить. После создания будет создан файл xgboost.exe.
5) Теперь установите пакет python:
cd python-package
python setup.py install
Вы можете протестировать, импортировав xgboost в python.
Ответ 8
Чтобы добавить к решению Disco4ever для тех, кто пытается построить на 32-битных машинах Windows.
После выполнения шага 6 и создания файла config.mk вам нужно зайти в этот файл и отредактировать следующие строки, чтобы удалить флаг -m64
export CXX=g++ -m64
export CC=gcc -m64
Ответ 9
Добавление "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.
Ответ 10
Благодаря disco4ever ответ. Я пытался создать xgboost для среды Python Anaconda в моей машине с Windows 10 64 бит. Использованы Git, mingw64 и основные окна cmd.
Everthing работал у меня до этапа копирования: cp make/mingw64.mk config.mk, поскольку я использовал windows cmd. Я изменил его, чтобы скопировать c:\xgboost\make\mingw64.mk c:\xgboost\config.mk
когда я перешел к следующему шагу: make -j4, я получил ошибку, ошибка сборки. На этом этапе после стольких разочарований просто устал что-то другое, нажимая на build.sh(shell script). Он начал исполняться и автоматически закончил.
Затем я выполнил тот же шаг make -j4, что мой страх был успешным. Я видел самый ожидаемый файл xgboost.exe в моей папке xgboost.
Затем я продолжил дальнейшие шаги и выполнил установку python setup.py. наконец, все установлено отлично. Затем я пошел к своему шпиону и проверил, работает он или нет. Но я был в одном шаге от своего счастья, потому что я все еще видел ошибку импорта.
Закрыл все приглашения команд (Anaconda, Git bash, Windows CMD, терминал cygwin), затем снова открыл spyder и набрал 'import xgboost'. УСПЕХ, НЕ ОШИБКА.
Еще раз спасибо вам за всех.
Ответ 11
Прошел целый день, но я успешно установил xgboost в 64-разрядную коробку Windows 7, используя TDM-GCC с включенным OpenMP, вместо MingW, следуя этой ссылке - http://dnc1994.com/2016/03/installing-xgboost-on-windows/
Ответ 12
Здесь очень полезная ссылка с важными точками, чтобы обратить внимание во время установки. Очень важно установить "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 - это модифицированная версия (благодаря Чжоу Сиюу) оригинальный Makefile в соответствии с процессом строительства в Windows. Ты можешь wget его или скачать здесь. Обязательно используйте оболочку UNIX для потому что Windows CMD имеет проблему с командой mkdir -p. Git Bashрекомендуемые. Обязательно используйте параметр --recursive с Git clone. Быть уверенным для использования надлежащего MinGW. Рекомендуется использовать TDM-GCC. Обратите внимание, что по умолчанию не установил бы OpenMP для вас. Вы должны указать, что иначе здание потерпит неудачу.
Еще одна полезная ссылка - официальная процедура: официальное руководство
Удачи!
Ответ 13
Я хотел бы добавить небольшое решение для решения Disco4ever.
Для меня я не смог выполнить клонирование в cygwin. Поэтому обходной путь выполняет его в командной строке в окнах и выполняет остальную часть задачи в cygwin.
Используйте 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 должны быть сохранены как есть.
Ответ 14
Обратите внимание: перед "make -j4" используйте gcc -v, чтобы проверить версию gcc.
Как мне, моя среда - win10 + anaconda (python 2.7), когда я запускаю make -j4. Он показывает ошибку std:: mutex. После использования gcc-v Это echo gcc4.7 (anaconda default gcc). После того, как я выберу свой gcc в mingw64 6.2 gcc, он работает.
Наконец, я использую "/d/Anaconda2/python.exe setup.py install" установить пакет python xgboost.