Как установить xgboost в python на MacOS?

Я новичок и изучаю python. Может кто-то мне помочь - как установить xgboost в python. Я использую Mac 10.11. Я читал онлайн и делал следующий шаг, но не смог расшифровать, что делать дальше:

pip install xgboost - 

Ответ 1

Это немного сложнее, если вы хотите использовать многопоточность. Для записи я использую Mac с OS X 10.10 (Yosemite). Мне потребовалось некоторое время, чтобы разобраться с различными проблемами, но теперь он отлично работает в моей среде Anaconda (Py36).

Для многопоточности сначала нужно сделать следующее (установите homebrew, если вы этого еще не сделали):

brew install gcc --without-multilib

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

Затем получите файлы xgboost от Github. Я скачал его в каталог Anaconda/pkgs.

git clone --recursive https://github.com/dmlc/xgboost

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

cd xgboost; cp make/config.mk ./config.mk

Теперь используйте ваш любимый редактор (я использовал vi) и перейдите в файл, который вы скопировали из /make в /xgboost

vi config.mk

Раскомментируйте строки в верхней части файла:

export CC = gcc

export CXX = g++

Измените их на следующее:

export CC = gcc-6

export CXX = g++-6

Возможно, что просто раскомментирование строк решит проблему. Это не для меня; Мне нужно было добавить -6 в обе строки. Сохраните файл.

Также внесите изменения в файл xgboost/Makefile; изменить строки:

export CC = $(if $(shell which clang), clang, gcc)
...
...
export CXX = $(if $(shell which clang++), clang++, g++)

к следующему:

export CC = $(if $(shell which clang), clang, gcc-6)
...
...
export CXX = $(if $(shell which clang++), clang++, g++-6)

Я снова использовал vi для этого редактирования.

Сохраните файл, и теперь вам нужно выполнить шаг очистки, так как вы изменили Makefile.

make clean_all && make -j4

Это должно правильно настроить его и собрать библиотеку. Вам все еще нужно установить его.

cd python-package; python setup.py install

Теперь перезапустите Python/Anaconda, и вы сможете импортировать библиотеку.

Ответ 2

Для начинающего обучающегося Python и машинного обучения на Mac я настоятельно рекомендую сначала установить Anaconda (установить документацию).

Anaconda - это свободно распространяемый дистрибутив языков с открытым исходным кодом на языках программирования Python и R для крупномасштабной обработки данных, прогнозной аналитики и научных вычислений, целью которого является упрощение управления пакетами и их развертывания.

Если вы установили Anaconda для Python 2.7, у вас не должно возникнуть проблем при установке XGBoost с:

conda install -c aterrel xgboost=0.4.0

Если у вас уже установлена Anaconda и что ваша установка pGB XGBoost не удалась, вам следует попробовать:

conda remove xgboost
conda install -c aterrel xgboost=0.4.0

Ответ 3

Для Python-3.x выполните следующие действия в Mac

Убедитесь, что gcc-6 (и g++ - 6) установлен, если не сделать это с помощью

brew install gcc

Затем сделайте следующее

git clone --recursive https://github.com/dmlc/xgboost
cd xgboost/
make -j4
cd python-package
python3 setup.py install

Если вы используете Anaconda и еще не настроили свой путь для использования двоичных файлов в ~/anaconda/bin, тогда запустите последнюю строку как

/path/to/anaconda/bin/python3 setup.py install

Ответ 4

ДЛЯ ПИТОНА 2.7

$ conda install -c aterrel xgboost=0.4.0

ИЛИ

$ conda install -c biconda xgboost=0.6a2

ДЛЯ ПИТОНА 3.6

$ brew install [email protected]
$ pip install xgboost

Ответ 5

Я последовал за Брайаном Батлером answer, и это сработало, мне просто нужно было внести некоторые изменения:

  • gcc-7/g++-7 вместо gcc-6/g++-6.
  • При запуске make clean_all && make -j4 у меня была ошибка с as. Итак, мне просто нужно было запустить export PATH=/usr/bin:$PATH, и это сработало!

Ответ 6

Если у вас установлена анаконда, это работает для меня:

Просто введите в терминал:

conda install -c conda-forge xgboost

Ответ 7

Все остальные способы, описанные здесь, потерпели неудачу в моем случае. Мне удалось установить, следуя официальной установке, описанной здесь: http://xgboost.readthedocs.io/en/latest/build.html#building-on-macos

Моя система MacOS Serria, поэтому я следовал инструкции "Сборка на macOS".

Однако вместо того, чтобы "заменить эти две строки на (5, 6 или 7; в зависимости от вашей gcc-версии" с файлом config.mk, я сделал:

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

Хотя gcc-version показала Apple LLVM version 9.0.0.

После этого, следуя официальной инструкции "Установка пакета Python", я смог запустить пакет на Python.

Ответ 8

Вы можете установить catboost. Это недавно расширенная библиотека повышения градиента, она имеет аналогичные интерфейсы и более точная, чем XGBoost, быстрее и имеет категориальные функции поддержки из коробки. Вот сайт библиотеки: https://catboost.yandex

Ответ 9

Я использую Mac OS Mojave 10.14.5 и следую инструкциям "продвинутого метода" для Mac OS по адресу https://xgboost.readthedocs.io/en/latest/build.html#. Короче:

brew install cmake 
brew install [email protected]
git clone --recursive https://github.com/dmlc/xgboost
mkdir xgboost/my_build
cd xgboost/my_build
CC=gcc-8 CXX=g++-8 cmake ..
make -j4
cd ../python_package
python3 setup.py install