- PVSM.RU - https://www.pvsm.ru -

Сборка XGBoost для Python под Windows

Windows is so evil that consumes extra energy to make the things running.

Сборка XGBoost для Python под Windows - 1

Библиотека XGBoost [1] гремит на всех соревнованиях по машинному обучению и помогает завоёвывать призовые места. Однако, стать обладателем этого пакета для Python под Windows не так просто.

Процесс установки скудно описан на GitHub [2] и немногим шире на форуме Kaggle [3]. Поэтому попробую описать пошагово и более подробно. Надеюсь это поможет сохранить много времени неопытным пользователям.

Допустим у вас уже установлен Python. В моём случае это сборка Anaconda [4] с Python 3.4.

1. Устанавливаем JDK [5] от Oracle. Потому что для компиляции нам потребуется библиотека JNI.

2. Устанавливаем Visual Studio 2013 [6] по ссылке выделенной на скриншоте. Более поздние версии просят править код решения, поэтому для простых людей не подходят. Само решение xgboost, опубликованное на GitHub, собрано в Visual Studio 2010.

Сборка XGBoost для Python под Windows - 2

3. Скачиваем всю библиотеку XGBoost c GitHub [1]:

Сборка XGBoost для Python под Windows - 3

4. Распаковываем архив, получаем папку C:xgboost-master.

5. Открываем с помощью Visual Studio файл решения C:xgboost-masterwindowsxgboost.sln. Выбираем Release и вариант платформы, под которую будем собирать. Далее Build -> Build Solution. В результате должны получить «4 succeeded»:

Сборка XGBoost для Python под Windows - 4

Уже на этом этапе можно собрать проблемы.

«Не удалось обнаружить CL.exe» — при установке не был выбран C#/Visual C++. Доустанавливаем компоненты.

«Cannot open include file: 'corecrt.h'» — ищете файл поиском, скорее всего он тут: ProgramFiles(x86)Windows Kits10Include10.0.10150.0ucrt и добавляете директорию в $IncludePath, либо поступаете грубо и копируете все *.h файлы куда-нибудь на видное место, например в Program FilesMicrosoft Visual Studio 12.0VCinclude.

«Cannot open include file: 'jni.h'» — после установки JDK ошибки не должно быть.

Однако всё может пройти гладко и никаких проблем не будет. У меня получалось и так, и так, на разных ЭВМ.

Далее.

6. Из папки C:xgboost-masterwindowsRelease нам нужны файлы xgboost.exe и xgboost_wrapper.dll.
Копируем их в папку с пакетом для Python: C:xgboost-masterpython-package.

7. Открываем консоль (cmd), меняем директорию:

cd "C:xgboost-masterpython-package"

8. Там же запускаем установщик:

python setup.py install

Вот и всё. Запускаете удобную вам среду Python и пишете традиционное:

import xgboost as xgb

Автор: chechevatov

Источник [7]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/python/106489

Ссылки в тексте:

[1] XGBoost: https://github.com/dmlc/xgboost

[2] GitHub: https://github.com/dmlc/xgboost/tree/master/windows

[3] форуме Kaggle: https://www.kaggle.com/c/otto-group-product-classification-challenge/forums/t/13043/run-xgboost-from-windows-and-python

[4] Anaconda: https://www.continuum.io/downloads

[5] JDK: http://www.oracle.com/technetwork/java/javase/downloads/index.html

[6] Visual Studio 2013: https://www.visualstudio.com/en-us/news/vs2013-community-vs.aspx

[7] Источник: http://habrahabr.ru/post/273363/