winpythonからTheano/Kerasを使う

Rと違ってPythonの環境を整えるのは結構面倒くさい.
Anaconda使えって話なんだけど,諸事情によりWinpythonのポータビリティが心地よいこともある.
ダウンロード激重だけどオールインワンだし,環境変数のPATH通すところとか億劫でなければ,比較的使いやすいと思う.
http://winpython.github.io/

そんな環境でTHEANO/KERASを使う時の注意点
(以下はWinPython-64bit-3.5.2.2Qt5を想定)

まず,最初からWinpythonにTheanoやらKerasやらは入ってる.
だけど,使えるようになっていない(と思う.)

何も考えないで
import keras
とすると,やたらといろいろ怒られる.
All-in-oneのWinpythonながら,細かいところまでは気配りできていない.

まず,mklがあるnumpy使えよ,と怒られる.
MKLってのは,近年フリーで提供されるようになった,Intel謹製Math Kernel Libraryってので,行列計算を高速化するヤツね.
(脱線するが,de-facto standardのintel visual Fortranは高すぎねーか?)

従順な私は,
http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
から,
http://www.lfd.uci.edu/~gohlke/pythonlibs/dp2ng7en/numpy-1.11.2+mkl-cp35-cp35m-win_amd64.whl
をダウンロードして,
WinPython Control Panel.exe > Add packages > ファイル選択 でインストールする.
(適宜Versionに合わせてDLすべし.激重かつ激遅.)

その前に,WinPython Control Panel.exe の Uninstall packagesタブからNumpyをアンインストールすることを忘れない.


これでimport kerasをし....てもまだ怒られる.
どうやらC++コンパイルができないらしい.
Rtools(https://cran.r-project.org/bin/windows/Rtools)を入れてたからgccは入ってるはずなのに!!


よくよく聞いてみると,64bitのコンパイルができないとかなんとか言ってる.
どうも,mingw_64にパスが通っていなかったらしい.

環境変数のPATHに,私の場合 C:\Rtools\mingw_64\bin; を追加して,

>>> import keras
Using Theano backend.

成功なのだ!!