Chainer 1.5.1をUbuntu14.04にインストール

オフィシャルドキュメントにインストール方法が載っていますが,ネットを見ると事前準備が色々いるっぽいです.

g++, hdf5, python-devのインストール

私の環境では全部すでに入ってましたが,以下でインストールできます.

sudo apt-get install build-essential libhdf5-dev python-dev

CUDA7.5, cuDNNのインストール

CUDAとcuDNNを使いたい場合,Chainerをインストールする前にCUDAとcuDNNを入れておく必要があります.

CUDA7.5, cuDNNのインストール方法は別の記事を参照してください.ちなみにNVidiaのドライバはCUDA7.5インストール時に同時にインストールされます.

pipのインストール&アップグレード

インストールしたpipが古いと問題が出ることがあるとか.2通りやりかたがあります.私はその1の方法をおすすめします.

pipインストール方法その1

curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
python get-pip.py

pipインストール方法その2

sudo apt-get install python-pip
sudo pip install --upgrade pip

pipインストール後にやること

以下で一応アップグレードしてください.

sudo pip install --upgrade pip

また,以下でバージョンを確認してください.

pip -V

私の場合はバージョン7.1.2でした.インストール方法その2をおすすめしなかったのは,バージョンがなぜかすごく低いものがインストールされたからです.そしてこれがおそらく原因でChainerのサンプルでコケて,結構ハマりました...

setuptoolsのインストール&アップグレード

sudo pip install --upgrade setuptools

バージョン19.2がインストールされました.

numpyのインストール

sudo pip install numpy

1.10.4がインストールされました・・・が,どの段階でか分からないのですが,最終的に1.8.2に上書き?されてました.おそらくChainerのsetup.py後??

h5pyのインストール

numpyのインストール後にh5pyをインストールしました.後に分かるのですが,h5pyが新しいnumpyに対応してなくてエラーが出たことがあったためです.新しいバージョンのnumpyをインストールしているからh5pyも空気を読んでそれに対応した新しいものを・・・なんてこと別にしてないと思うんですけど,念のため.

sudo pip install h5py

バージョン2.5.0がインストールされました.

Cythonのインストール&アップグレード

Chainerをインストールする前に,Cythonを先にインストールしておいた方が良いみたいです.

sudo pip install --upgrade cython

バージョン0.23.4がインストールされました.

Chainer v1.5.1のダウンロード

バージョンを意識して使うために,ソースコードをダウンロードして,それからインストールをします.

GitHubにコードがあるので,zipファイルをダウンロードしてください.もちろんダウンロードする代わりにgit cloneしても良いです.

Chainer v1.5.1のインストール

ダウンロードしたzipファイルを好きな場所に展開(例えば~/Work以下など)し,展開したディレクトリchainer-1.5.1の中に移動して以下を実行してください.ちなみにCUDAをデフォルトとは異なるディレクトリにインストールした場合,インストール時にCUDA_PATHという環境変数にCUDAのインストール先を代入してやる必要があるようです.詳しくはオフィシャルドキュメントをご覧ください.

sudo python setup.py install

以下のコマンドをchainer-1.5.1の中で実行してしまいました.オフィシャルドキュメントの中にあるコマンドです.不要だったと思います.

sudo pip install -e .

確認

Chainerのホームページに載っているtrain_mnist.pyを実行したところ,うまくいきました.GPUを使う場合は以下のコマンドを実行してください.後半の-g 0がGPUを使うためのオプションです.CPUで動かすときは不要です...がむっちゃ学習に時間がかかります.

python chainer-1.5.1/examples/mnist/train_mnist.py -g 0

ちなみに,前述のpipインストール方法その2でpipをインストールし,その後Cythonやら何やら必要なものをインストールし,サンプルを動かしたとき,以下のようなエラーが出ました.

ValueError: numpy.dtype has the wrong size, try recompiling

以下,解決までの流れです.

  1. 実はPython書いたことがないので,どうしようと色々探りまくる
  2. これはサンプルコードが悪いのではなくて,numpyとh5pyの相性が悪いことが判明
  3. できることと言えば,numpyとh5pyをインストールし直すことくらい
  4. でもpipを使ってインストールする限り同じことを繰り返すだけだろう・・・
  5. pipをそもそも違う方法でインストール(これでpipのバージョンが一気に上がった)し,numpy, h5pyをそれぞれアンインストール→再インストール
  6. Chainerの再インストール(アンインストール方法が分からなかったので,単純にもう一回インストールしただけ)

こんな感じでした.Python勉強するかなー.優先度が難しい.

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中