Bag of ML Words

ML = Machine Learning, Music Love, and Miscellaneous things in daily Livings

Python: Bayesian Methods for Hackers 0章: 環境設定 in Win

まずは自宅の環境にPythonを導入するところから。

特に、Bayesian Methods for Hackersを読むにはiPython notebookという非常にカッコエエインターフェースが強く推奨されているので、それを目標にします。

 

以前やったときはnumpyがインストール出来なかったのですが、

今回は最近買った

にある通り、まずは*1Canopyというパッケージで一括導入してみました。

 

インストール

まず、Enthought Canopyからフリー版のインストーラをダウンロードします。

2014/03/23の時点でバージョン1.3でした。

あとはインストーラをクリックしてインストールで完了です。

これでnumpyもscipyもmatplotlibもpandasもipythonも全部入ります。

素晴らしい。

 

あ、あれ・・・?

ところがそううまくはいきませんでした。

WSGI Proxy "Server" Error. ... 'ascii' codec can't decode byte

この状況でipyton notebookを強制的に起動しても、なんか壊れてしまいます。

 

バグフィックス

ちゃんとこのエラー、認知されていました。

Windows: WSGI Proxy "Server" Error on Canopy 1.3 startup : Enthought

というわけで、ここにある通り、指定されたファイルを指定されたディレクトリにコピー。

 

できた!

f:id:Dr_KayAi:20140323230310p:plain

素晴らしい。 

 

ところが・・・

PyMCモジュールをGithubから手に入れてみたのですが、動きません。

どうもTheaoというパッケージが必要らしいです。

(20140326追記。どうやらPyMC ver 3を使おうとしていたようです。canopyが悪いわけでもなさそうです)

 

easy_installがなんかうまく動いてないっぽかったので、

一同canopyをやめて、anacondaにします!

 

Anacondaのページから

Anaconda Scientific Python Distribution

インストーラをダウンロード、起動するだけで

f:id:Dr_KayAi:20140326004107p:plain

 

ご覧の通り、いきなりipythonとかメニューに出てきますね・・・

scikit-learnまでプリインストールですからね、恐ろしい。

 

なお、この状態ではまだcanopyと同じエラーがでますので、

python - UnicodeDecodeError : 'ascii' codec can't decode byte 0xe0 in position 0: ordinal not in range(128) - Stack Overflow

にある通り、Anaconda\Lib\mimetypes.pyの修正をしましょう。

f:id:Dr_KayAi:20140326005202p:plain

グッド。

 

PyMCの導入

色々苦労したのですが、結局、

Python Extension Packages for Windows - Christoph Gohlke

からコンパイル済みのバイナリを適用しました。

GithubでPyMCを落としてきて、ブランチ2.3に切り替えます。

そしてgithubコマンドプロンプトシェルを使って

python setup.py install

します。

 

gfortranが必要っぽいですね。

 

ではgfortranを入れましょう。

64bit の Windows 7 上でフリーの fortran コンパイラを導入して、簡単なプログラムを作成する - あらきけいすけの雑記帳

を参考にします。

インストール後、Pathの順番もgfortranを一番前に変えたら再挑戦。

 

PyMCのテスト 

f:id:Dr_KayAi:20140326073304p:plain

f:id:Dr_KayAi:20140326073318p:plain

グッド。

 

*1:フラグ