MacOSXにChainerを動かしたときの警告対策その1
MacOSにChainerをインストールして動かしてみたところ、下記のエラー?が出ました。
/usr/local/lib/python3.7/site-packages/chainer/_environment_check.py:38: UserWarning: Accelerate has been detected as a NumPy backend library.
vecLib, which is a part of Accelerate, is known not to work correctly with Chainer.
We recommend using other BLAS libraries such as OpenBLAS.
For details of the issue, please see
https://docs.chainer.org/en/stable/tips.html#mnist-example-does-not-converge-in-cpu-mode-on-mac-os-x.
Also note that Chainer does not officially support Mac OS X.
Please use it at your own risk.
”’) # NOQA
googleさんで翻訳してみると。。。
Accelerate has been detected as a NumPy backend library.
AccelerateがNumPyバックエンドライブラリとして検出されました。
vecLib, which is a part of Accelerate, is known not to work correctly with Chainer.
Accelerateの一部であるvecLibは、Chainerで正しく動作しないことが知られています。
We recommend using other BLAS libraries such as OpenBLAS.
OpenBLASなどの他のBLASライブラリを使用することをお勧めします。
なるほど。。。
詳細はこちらを見ろとのこと。。
https://docs.chainer.org/en/stable/tips.html#mnist-example-does-not-converge-in-cpu-mode-on-mac-os-x.
Also note that Chainer does not officially support Mac OS X.
Please use it at your own risk.
MacOSXは正式にはサポートしてないから自己責任でね!
ドキュメントを見てみると、BLASは、NumPyのバックエンドで動き、行列計算などを行うライブラリです。なので、OpenBLASのインストールしてから、OpenBLAS対応のNumPyを再インストールすることで対処できます。
やってみましょう!!
現在の環境
MacOS:10.14.1
Chainer:5.0.0
Filelock:3.0.10
numpy:1.15.4
protobuf:3.6.1
six:1.11.0
OpenBLASをインストールします。
こちらを参考にしました!
$ brew tap homebrew/science
これはパス。不要でした。
$ brew install openblas
ダウンロード後のmakeがめっちゃ時間かかりました。
==> make install
🍺 /usr/local/Cellar/gcc/8.2.0: 1,413 files, 287.2MB, built in 28 minutes 10 seconds
==> Installing openblas
==> Downloading https://homebrew.bintray.com/bottles/openblas-0.3.3.mojave.bottle.tar.gz
######################################################################## 100.0%
==> Pouring openblas-0.3.3.mojave.bottle.tar.gz
==> Caveats
openblas is keg-only, which means it was not symlinked into /usr/local,
because macOS provides BLAS and LAPACK in the Accelerate framework.
For compilers to find openblas you may need to set:
export LDFLAGS=”-L/usr/local/opt/openblas/lib”
export CPPFLAGS=”-I/usr/local/opt/openblas/include”
For pkg-config to find openblas you may need to set:
export PKG_CONFIG_PATH=”/usr/local/opt/openblas/lib/pkgconfig”
==> Summary
🍺 /usr/local/Cellar/openblas/0.3.3: 21 files, 115.6MB
==> Caveats
==> openblas
openblas is keg-only, which means it was not symlinked into /usr/local,
because macOS provides BLAS and LAPACK in the Accelerate framework.
For compilers to find openblas you may need to set:
export LDFLAGS=”-L/usr/local/opt/openblas/lib”
export CPPFLAGS=”-I/usr/local/opt/openblas/include”
For pkg-config to find openblas you may need to set:
export PKG_CONFIG_PATH=”/usr/local/opt/openblas/lib/pkgconfig”
OpenBLAS対応のNumPyに入れ替える に続きます(^^)