SHOGUN 導入 - eiichiromomma/CVMLAB GitHub Wiki
SHOGUN) 導入
(Shogunの導入について
Mac OS X
macportsだとバージョンがやや古いので最新版のソースを入手してmakeする。
適当な場所でファイルを展開してconfigureすれば良いのだが,デフォルトだと作れる限りの言語のモジュールを作ろうとするので--interfacesオプションで絞る。
tar xvjf shogun-1.x.x.tar.bz2
cd shogun-1.x.x/src
./configure --help
とすると初めの方にinterfacesの一覧が出る。
但し,各モジュールはswigを使っているので各言語に対応したものが必要になる他,関連するライブラリが結構多い。 SHOGUN: Installation のInstallation on MacOSXにある通りに必須アプリとshogunをインストールした後に,shogunだけアンインストールしてしまうのも手。
以降のmake中はメモリを馬鹿食いするので,他のアプリを終了しておかないとswapが大量発生してmakeが一向に終わらないので注意。
Python
インストールガイドにはPython2.5, 2.6と書いてあるがLion+Python2.7+StrongInference - Scipy Superpack の環境でも動いている。
./configure --interfaces=python_modular
make
sudo make install
で導入できるが,/usr/local/lib/python2.7/dist-packagesへインストールされるのでPYTHONPATHに加えてしまうのが手っ取り早い。
R
./configure --cflags="-arch x86_64" --cxxflags="-arch x86_64" --interfaces=r_static
make
sudo make install
でインストールされるのだが,Rでlibrary("sg")としたときに
Error: package 'sg' is not installed for 'arch=x86_64'
が出て使えない。sg.soの場所がマズいので修正する。
cd /Library/Frameworks/R.framework/Resources/library/sg/libs
sudo mkdir x86_64
sudo mv sg.so x86_64/
とすれば使えるようになる。
サンプル
データはshogun | A Large Scale Machine Learning Toolbox で配布されているのだが,展開に注意する必要がある。サンプルは大抵shogun-1.x.x/examples/documented/data(shogun-1.x.x/dataへのシンボリックリンク)を参照するような形式になっているが,配布されているデータをそのまま展開してもディレクトリが合致しない。サンプル内で使われているファイルはshogun-data-0.x/toyにあるものが殆どのようなのでその中身をshogun-1.x.x/data内へコピーしておけば動く。
以下shogun-1.x.x/examples/documented/にあるサンプルの出力。