Pip install xgboost windows

Создаем первую XGBoost модель на Python с использованием scikit-learn

Machine Learning/Data Mining/Big Data

XGBoost — библиотека, реализующая методы градиентного бустинга. Ее производительность сделала данную библиотеку одним из лидеров в области машинного обучения.

В этом посте вы узнаете, как установить XGBoost и создать свою первую модель на Python.

1. Установка XGBoost для использования совместно с Python

XGBoost может быть установлен легко с помощью pip.

Для того, чтобы обновить XGBoost, необходимо использовать команду:

Также можно использовать альтернативный способ установки XGBoost, если вы не можете использовать pip или вы хотите установить последнюю версию кода из GitHub. Для этого вы должны клонировать проект XGBoost и выполнить сборку и установку в ручную.

Например, чтобы построить XGBoost без многопоточности на Mac OS X (GCC должен быть установлен с помощью MacPorts или Homebrew), вы должны выполнить следующие команды:

Вы можете узнать больше о том, как установить XGBoost для различных платформ из руководства по установке XGBoost. Информацию о пакете Python можно посмотреть тут XGBoost Python Package.

Для справки, вы можете просмотреть ссылку API XGBoost Python.

2. Описание проблемы: Прогнозирование развития диабета

В этом уроке, в качестве примера, мы будем использовать набор данных наступления сахарного диабета у индейцев Пима.

Этот набор данных состоит из 8 входных переменных, которые описывают медицинские данные пациентов, так и переменной, выходным параметром, который означает появление у пациента диабета в течение 5 лет.

Вы можете узнать больше об этом наборе данных на веб-сайте UCI Machine Learning Repository.

Это хороший набор данных для первой модели XGBoost, потому что все входные переменные являются числовыми, а задача простая бинарная проблема классификации.

Загрузите этот набор данных и поместите его в текущую рабочую директорию с именем файла «pima-indians-diabetes.csv«.

3. Загрузка и подготовка данных

В этом разделе мы загрузим данные из файла и подготовим его к использованию для обучения и оценки модели XGBoost.

И так, давайте начнем с импорта классов и функций, которые мы намерены использовать в этом уроке.

Далее, нам необходимо загрузить файл CSV в виде массива NumPy, используя функцию loadtxt().

Мы должны отделить столбцы (атрибуты или фичи) набора данных входных паттернов (Х) и паттернов выходных (Y). Мы можем сделать это легко, указав индексы столбцов в формате NumPy массива.

И наконец, мы должны разделить данные Х и У на обучающий и тестовый наборы данных. обучающий комплект будет использоваться для создания модели XGBoost, а тестовый набор будет использоваться, для того, чтобы сделать прогнозы, по которым мы можем оценить качество модели.

Читайте также:  Запрет пустых паролей windows 10

Для этого мы будем использовать функцию train_test_split() из библиотеки scikit-learn.

Теперь мы готовы обучить вашу модель.

4. Обучение модели XGBoost

Модель XGBoost для классификации называется XGBClassifier. Мы можем создать ее и обучить с помощью тренировочного набора данных. Эта модель имеет функцию fit() для тренировки модели.

Параметры для обучения модели могут быть переданы модели в конструкторе.

Вы можете увидеть параметры, используемые в уже обученной модели, используя print():

Вы можете узнать больше о классах XGBClassifier и XGBRegressor в документации XGBoost Python scikit-learn API.

Вы можете узнать больше о значении каждого параметра и как настроить их на странице XGBoost параметров.

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

5. Делаем прогнозы с помощью XGBoost модели

Теперь мы можем делать прогнозы, применив нашу обученную модель на тестовом наборе данных.

Для того, чтобы делать прогнозы мы используем scikit-learn функцию model.predict().

По умолчанию, предсказания, сделанные XGBoost являются вероятностями. Поскольку это бинарная задача классификации, каждое предсказание является вероятностью принадлежности к первому классу. Поэтому мы можем легко преобразовать их в значения двоичных классов путем округления до 0 или 1.

Теперь, когда мы использовали обученную модель, чтобы сделать прогнозы по новым данным, мы можем оценить качество предсказаний, сравнивая их с реальными значениями. Для этого мы будем использовать встроенную в scikit-learn функцию accuracy_score().

6. Собираем все вместе

Ниже приведен полный листинг кода.

После запуска этого примера мы увидим следующий результат.

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

Вот и все. Мы построили простую модель с использованием XGBoost.

XGBoost Python Package

Installation

We are on PyPI __ now. For stable version, please install using pip:

  • pip install xgboost
  • Since this package contains C++ source code, pip needs a C++ compiler from the system to compile the source code on-the-fly. Please follow the following instruction for each supported platform.
  • Note for Mac OS X users: please install gcc from brew by brew tap homebrew/versions; brew install gcc —without-multilib firstly.
  • Note for Linux users: please install gcc by sudo apt-get install build-essential firstly or using the corresponding package manager of the system.
  • Note for windows users: this pip installation may not work on some windows environment, and it may cause unexpected errors. pip installation on windows is currently disabled for further invesigation, please install from github.

For up-to-date version, please install from github.

  • To make the python module, type ./build.sh in the root directory of project
  • Make sure you have setuptools __
  • Install with cd python-package; python setup.py install from this directory.
  • For windows users, please use the Visual Studio project file under windows folder . See also the installation tutorial from Kaggle Otto Forum.

Add MinGW to the system PATH in Windows if you are using the latest version of xgboost which requires compilation:

Install XGBoost on Windows 10 For Python Programming in Easy Steps

X GBoost is a popular machine learning library, which is mostly used to win the kaggle competition. Most of the machine learning developer will try to use this library to get a more accurate model. In this tutorial, you will learn, how to install the XGBoost package on Windows 10 for Python programming.

If you look at the documentation of XGBoost, it will show too many steps to install XGBoost. The goal of this tutorial is to ease the installation of the XGBoost library on Windows 10 in few easy steps.

First, you need the Python 64-bit version. It is highly recommended to use the 64-bit Python version.

Get the latest Python version

Get the Python 3.7 version(Latest version while writing this post)

Install the downloaded python by clicking next and next.

If you have python already installed, you can check the bit of the python by typing python in cmd.

In the above picture, if it shows 32 bit on your machine, then you must uninstall 32-bit python and install python 64-bit version.

Install the pip, if you don’t have it on your machine.

Get pip file using

Save the above file and execute the file using

Now you have installed the pip.

Get Python XGBoost whl file using below link

I have installed Python 3.7 64-bit version choose xgboost-0.81-cp37-cp37m-win_amd64.whl file.

Make sure to match your python version and system architecture, e.g. “ xgboost-0.81-cp37-cp37m-win_amd64.whl” for python 3.7 on 64-bitmachine

Install the downloaded XGBoost Python whl file using below command.

That’s all. You have successfully installed XGBoost on your Windows 10.

You can import the XGBoost package to test. Open any python editor and type below code

Как установить библиотеку Xgboost на Windows?

Пробовал по инструкции на хабре, но не нашел в репозитории папку xgboost/windows, нет её. Пробовал как здесь через MinGW-w64, дальше make не получается. Помогите, пожалуйста, кто сталкивался.

1 ответ 1

  • Статья на Хабре прошлогодняя, поэтому внезапно устарела,
  • А уже в этом году признано, что проект для Windows неактуален (см. https://github.com/dmlc/xgboost/issues/736), поэтому планируется полный переход на CMake (ещё про это здесь: https://github.com/dmlc/xgboost/issues/792).
  • Ещё в середине января всё для Windows убрано из репозитория.

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

Но самое надёжное — воспользоваться инструкцией https://xgboost.readthedocs.org/en/latest/build.html#building-on-windows (по ссылке https://github.com/dmlc/xgboost/issues/831 виден один нюанс с командой mkdir , а в остальном должно всё работать).

Дополнение:

Привожу сокращённый перевод руководства с официального сайта:

Сперва надо клонировать репозиторий xgboost. Откройте git-shell и выполните следующие команды:

После установке Git для Windows, запустите Git Bash . Все следующие шаги выполняются в нём:

В MinGW для выполнения make надо позвать mingw32-make , поэтому стоит добавить следующую строчку в файл .bashrc :

Чтобы собрать xgboost в MinGW выполните следующую команду:

Дополнение 2:

Ответ на вопрос о том, как открыть git-shell:

Если установлен GitHub для Windows, то должен был быть создан такой ярлык. Если его нет (удалили почему-то), то можно запустить git-shell одной из этих команд (зависит от версии, не забудьте вставить правильный Username ):

Открыв git-shell одной из этих команд, восстановите нужные ярлыки, выполнив команду

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

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

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

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

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

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

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

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

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

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

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

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

«Cannot open include file: ‘corecrt.h’» — ищете файл поиском, скорее всего он тут: ProgramFiles(x86)\Windows Kits\10\Include\10.0.10150.0\ucrt и добавляете директорию в $IncludePath, либо поступаете грубо и копируете все *.h файлы куда-нибудь на видное место, например в Program Files\Microsoft Visual Studio 12.0\VC\include.

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

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

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

7. Открываем консоль (cmd), меняем директорию:
cd «C:\xgboost-master\python-package»

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

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

Читайте также:  Mac os sip client
Оцените статью