RNNLIB 処方箋

気が向いたら清書?するかも。
 

Gravesさんが開発したRecurrent Neural Network用のライブラリ
RNNLIB

コンパイルが意外と面倒なので覚え書き

まずは依存関係を満たしてやらなくてはいけない。

引用はじめ

Building it requires the following:
In addition, the following python packages are needed for the auxiliary
scripts in the ‘utils’ directory:
And these packages are needed to create and manipulate netcdf data files
with python, and to run the experiments in the ‘examples’ directory:

引用おわり

結構ある。。。
automakeのバージョンをドキュメントにあるように1.9にすることに注意した方がいい(読み飛ばしてた)。

あとNCOのコンパイルするときにも引っかかったこととして
docのコンパイルがうまいこと通らない。
どうせdocだし、通らないなら通さなくてもいい式でコメントアウトしてmakeをむりくり通す。[1]

netcdfにはcとc++があるけど、両方共必要みたい。
c++コンパイルするためにcも必要。
netcdf-cxxは4.2でないと怒られた。(4.2.1だとダメだった)[2]

ScientificPythonはpipで入らなそうなので、ソースを落としてきてpython setup.py install


−−−
RNNLIBのコンパイル

gcc のバージョンが低かったり高かったりするとコンパイルが通らないらしい。
原因ははっきりしているっぽいので、手動でパッチをあてればgccがあたらしすぎてもコンパイルできるらしいが、いまいちよくわからないのでおとなしくコンパイラのバージョンを合わせる。
4.7なら問題ないらしい。[3]
Ubuntuコンパイルした時はデフォルトのバージョンが4.8で困ったが、今回macで試そうとしたらデフォルトが4.2でした。低すぎて引っかかった。

brew install gcc47

resize

this->resize
に変えるのと

テンプレートの宣言を上がわに置き直してやるとコンパイルが通る。[3]
(Issueをみるとこれはgccを4.7にしたら解決そうなものだけど。。。)

付録のexampleを実行するときは
rnnlib/utilsをPYTHONPATHに追加することを忘れないようにする。

[1] http://sourceforge.net/p/nco/discussion/9830/thread/a233a29d/
[2] http://sourceforge.net/p/rnnl/discussion/1183966/thread/3e210918/
[3] http://sourceforge.net/p/rnnl/discussion/1183966/thread/84f2025b/