python の Xgboost を Windows で使いたい!
pythonをwindowsでやるなよ、という意見はごもっともですがでもやりたい時だってあるじゃん?なのでやりましょう。
環境
- windows10
- 64bit
必要なものたち
git cloneする
git bash を起動して、xgboostをgithubから手に入れます。
ここで注意するポイントが2つ
git clone
したあとに submodule を綺麗にして入れ直すこと。- 現在の最新版(2016/06/28現在)のmasterには問題があるようなのでちょっと前の commit に戻すこと。
コマンドとしてはgit checkout 9a48a40
.
Error installing xgboost · Issue #1267 · dmlc/xgboost · GitHub
$ git clone --recursive https://github.com/dmlc/xgboost $ cd xgboost $ git checkout 9a48a40 $ git submodule init $ git submodule update
MinGW-W64のインストール
次にMinGW-W64をインストールします。この時に architecture を x84_64 にセットしてインストールします。加えてデフォルトではC:\Program File
直下にインストールすることになっていますが、空文字を避けるためにC:\mingw64
とか適当にCドライブ直下に新しくフォルダを作り、そこを指定します。
Pathの設定
環境変数設定からPath
を追加します。追加するのはさっきインストールしたMingw64の中にあるmingw32-make.exe
が入っているフォルダです。C:\mingw64\mingw64\bin
とかになるはず。
どうでもいいけどwindows10になって環境変数の編集画面がすごく見やすくなりましたね。個人的には好きです。
コンパイル
make の設定を行ってからコンパイルします。以下のコマンドを先のgit bash 上の、xgboostをコピーした階層で行います
$ cp make/mingw64.mk config.mk $ make -j4
なんかもにゃもにゃ出るので待ちます。
インストール
成功していれば xgboost の階層に xgboost.exe ができているはずです。python パッケージをインストールする場合には python-pakage フォルダで setup.py を実行します。
$ cd python-package $ python setup.py install
結構長いですね。はやくconda install xgboost
でwindowsでも入れられるような幸せな世界になって欲しいです。