私は初心者であり、Pythonを学習しています。誰かが私に助けてくれますか?Pythonでxgboostをインストールする方法。 Mac 10.11を使用しています。私はオンラインで読んで、以下の手順を実行しましたが、次に何をすべきかを解読できませんでした:
pip install xgboost -
マルチスレッドを使用する場合は、もう少し複雑です。記録のために、OS X 10.10(Yosemite)を搭載したMacを使用しています。さまざまな問題を解決するのにしばらく時間がかかりましたが、現在はAnaconda(Py36)環境でうまく動作しています。
マルチスレッドの場合、最初に以下を実行する必要があります(まだ行っていない場合はhomebrewをインストールしてください)
brew install gcc --without-multilib
他のバージョンがインストールされている場合は、ディレクトリのリンクを解除するか削除する警告が表示される場合があります。警告/指示に従ってください。
次に、Githubからxgboostファイルを取得します。 Anaconda/pkgs
ディレクトリにダウンロードしました。
git clone --recursive https://github.com/dmlc/xgboost
次の一連の手順は、xgboostサイトのドキュメントとは異なり、多くのソースから集めて実験しました。問題は、メイクファイルのいくつかのキー行がコメントアウトされており、完全に指定されていないことです。
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を再起動すると、ライブラリをインポートできるはずです。
初心者の学習pythonおよびMacの機械学習の場合、Anacondaを最初にインストールすることを強くお勧めします( install doc) 。
Anacondaは、大規模なデータ処理、予測分析、科学計算のためのPythonおよびRプログラミング言語のフリーミアムオープンソース配布であり、パッケージ管理と展開を簡素化することを目的としています。
Python 2.7でAnacondaをインストールした場合、XGBoostのインストールに問題はありません:
conda install -c aterrel xgboost=0.4.0
Anacondaがすでにインストールされていて、pip XGBoostのインストールが失敗した場合は、次を試してください:
conda remove xgboost
conda install -c aterrel xgboost=0.4.0
FOR PYTHON 2.7
$ conda install -c aterrel xgboost=0.4.0
OR
$ conda install -c biconda xgboost=0.6a2
FOR PYTHON 3.6
$ brew install gcc@5
$ pip install xgboost
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
私はブライアン・バトラーの answer に従いましたが、うまくいきました。変更を加える必要がありました。
gcc-7
/g++-7
の代わりにgcc-6
/g++-6
。make clean_all && make -j4
の実行中に、as
でエラーが発生しました。だから、私はexport PATH=/usr/bin:$PATH
を実行する必要があり、それはうまくいきました!Anacondaがインストールされている場合、これは私のために働いた:
ターミナルに入力するだけです:
conda install -c conda-forge xgboost
私の場合、ここで説明した他のすべての方法は失敗しました。ここに記載されている公式インストールに従ってインストールしました: http://xgboost.readthedocs.io/en/latest/build.html#building-on-macos
私のシステムはMacOS Serriaなので、「Building on macOS」の指示に従いました。
ただし、config.mkファイルを「これらの2行を(5または6または7; gccバージョンに応じて)に置き換える」のではなく、次のようにしました。
export CC = gcc-5
export CXX = g++-5
gcc-version
はApple LLVM version 9.0.0
を示していましたが。
その後、「Pythonパッケージのインストール」の公式指示に従って、パッケージをPythonで実行できました。
Catboostをpipインストールできます。これは最近オープンソース化された勾配ブースティングライブラリであり、同様のインターフェイスを持ち、XGBoostよりも正確で、高速で、カテゴリ機能をすぐに使用できます。ライブラリのサイトは次のとおりです。 https://catboost.yandex
https://xgboost.readthedocs.io/en/latest/build.html# でMac OS Mojave 10.14.5を実行し、Mac OSの「高度な方法」の指示に従っていました。要するに:
brew install cmake
brew install gcc@8
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