it-swarm.com.de

Wie installiere ich Xgboost in Python unter MacOS?

Ich bin ein Neuling und lerne Python. Kann mir jemand helfen, wie man xgboost in Python installiert. Ich verwende Mac 10.11. Ich habe online gelesen und den unten genannten Schritt ausgeführt, konnte jedoch nicht entschlüsseln, was als nächstes zu tun ist: 

pip install xgboost - 
16
aman sanduja

Es ist etwas komplizierter, wenn Sie Multithreading verwenden möchten. Für die Aufzeichnung verwende ich einen Mac mit OS X 10.10 (Yosemite). Ich habe eine Weile gebraucht, um die verschiedenen Probleme durchzuarbeiten, aber jetzt läuft es gut in meiner Anaconda (Py36) -Umgebung.

Für Multithreading müssen Sie zuerst Folgendes tun (Homebrew installieren, falls Sie dies nicht getan haben):

brew install gcc --without-multilib

Möglicherweise erhalten Sie einige Warnungen zum Aufheben der Verknüpfung von Verzeichnissen oder zum Löschen dieser Verzeichnisse, wenn andere Versionen installiert sind. Befolgen Sie die Warnungen/Anweisungen.

Als nächstes holen Sie die Xgboost-Dateien von Github. Ich habe es in das Anaconda/pkgs-Verzeichnis heruntergeladen.

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

Die nächste Reihe von Schritten unterscheidet sich von der Dokumentation auf der Xgboost-Site, und ich habe sie aus vielen Quellen zusammengestellt und auch experimentiert. Das Problem ist, dass einige Schlüsselzeilen in den Make-Dateien auskommentiert und auch nicht vollständig angegeben sind.

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

Verwenden Sie nun Ihren bevorzugten Editor (ich habe vi verwendet) und gehen Sie in die Datei, die Sie von /make nach /xgboost kopiert haben.

vi config.mk

Kommentieren Sie die Zeilen am oberen Rand der Datei:

export CC = gcc

export CXX = g++

Ändern Sie sie wie folgt:

export CC = gcc-6

export CXX = g++-6

Es ist möglich, dass durch einfaches Auskommentieren der Zeilen das Problem gelöst wird. Es war nicht für mich; Ich musste den -6 zu beiden Zeilen hinzufügen. Speicher die Datei.

Nehmen Sie auch Änderungen an der Datei vor xgboost/Makefile; Zeilen ändern:

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

zu dem Folgendem:

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

Ich habe wieder vi für diese Bearbeitung verwendet.

Speichern Sie die Datei und jetzt müssen Sie einen Reinigungsschritt ausführen, da Sie das Makefile geändert haben.

make clean_all && make -j4

Dies sollte es sauber konfigurieren und die Bibliothek erstellen. Sie müssen es noch installieren.

cd python-package; python setup.py install

Starten Sie nun Python/Anaconda neu und Sie sollten die Bibliothek importieren können.

31
Bryan Butler

Für einen Anfängerpython und Maschinelles Lernen auf dem Mac würde ich dringend empfehlen, zuerst Anaconda ( install doc) zu installieren.

Anaconda ist eine Freemium-Open-Source-Distribution von Python und R Programmiersprachen für die Verarbeitung großer Datenmengen, vorhersagend Analytics und Scientific Computing, die das Paket vereinfachen sollen Management und Bereitstellung.

Wenn Sie Anaconda für Python 2.7 installiert haben, sollten Sie bei der Installation von XGBoost keine Probleme haben:

conda install -c aterrel xgboost=0.4.0

Wenn Sie Anaconda bereits installiert haben und Ihre Pip XGBoost-Installation fehlgeschlagen ist, sollten Sie Folgendes versuchen:

conda remove xgboost
conda install -c aterrel xgboost=0.4.0
5
Adrien Renaud

FÜR PYTHON 2.7

$ conda install -c aterrel xgboost=0.4.0

OR

$ conda install -c biconda xgboost=0.6a2

FÜR PYTHON 3.6

$ brew install [email protected]
$ pip install xgboost
5
PritamJ

Führen Sie für Python-3.x unter Mac folgende Schritte aus

Stellen Sie sicher, dass gcc-6 (und g ++ - 6) installiert ist, andernfalls mit

brew install gcc

Dann machen Sie folgendes

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

Wenn Sie Anaconda verwenden und Ihren Pfad noch nicht für die Verwendung der Binärdateien in ~/anaconda/bin konfiguriert haben, führen Sie die letzte Zeile als aus

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

5
Ébe Isaac

Ich folgte Bryan Butlers answer und es hat funktioniert, ich musste nur ein paar Änderungen vornehmen: 

  • gcc-7/g++-7 anstelle von gcc-6/g++-6.
  • Während der Ausführung von make clean_all && make -j4 trat bei as ein Fehler auf. Also musste ich einfach export PATH=/usr/bin:$PATH laufen lassen und es hat funktioniert!
3
A. Attia

Alle anderen hier beschriebenen Möglichkeiten sind in meinem Fall fehlgeschlagen. Ich konnte die Installation anhand der hier beschriebenen offiziellen Installation durchführen: http://xgboost.readthedocs.io/de/latest/build.html#building-on-macos

Mein System ist MacOS Serria, daher folgte ich den Anweisungen von "Building on macOS".

Anstatt "diese beiden Zeilen in (5 oder 6 oder 7; je nach Ihrer gcc-Version" in der config.mk-Datei zu ersetzen, habe ich Folgendes getan:

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

Obwohl gcc-versionApple LLVM version 9.0.0 zeigte.

Danach konnte ich das Paket in Python ausführen, indem ich den offiziellen Anweisungen von "Python Package Installation" folgte.

1
Zitong Lian

Wenn Sie Anaconda installiert haben, hat dies für mich funktioniert:

Einfach das Terminal eingeben:

conda install -c conda-forge xgboost
1
rossinnes

Sie können catboost pip installieren . Es handelt sich um eine kürzlich für Open Source-Bibliotheken verwendete Bibliothek, die über ähnliche Schnittstellen verfügt und genauer ist als XGBoost. Hier ist die Seite der Bibliothek: https://catboost.yandex

Ich verwende Mac OS Mojave 10.14.5 und folge den Anweisungen für Mac OS unter https://xgboost.readthedocs.io/en/latest/build.html# . Zusamenfassend:

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