WindowsでChainer環境を整える

More than 3 years have passed since last update.


はじめに

近年話題のDeepLearning。CaffeやTensorFlowなど様々なフレームワークがありますが、私はもっぱらChainer派です。

普段はUbuntu14.04を使用しているのですが、先日Windowsマシン上でChainerを扱わなければならないことが有り、Ubuntuの時のようにスムーズにChainerが導入できず、かなり手間取ってしまいました。

レアケースだとは思うのですが、引っかかったところとその解決方法をまとめてみました。


環境


  • Windows 10

  • Python 2.7

PythonやGitの導入に関しては割愛させていただきます。

ちなみにCPU環境だったのでCUDA等に関しては説明できません。


引っかかったところ


モジュールが入らない!

chainerはnumpy, scipy, h5pyの3つがインストールされていなければ、インストールできないようです。

これらのモジュールをインストールする際に、いきなり「pip install numpy」のようにしてもインストールできません。

どうやらwhlというコンパイル済みのファイルからインストールする必要があるようです。

こちらのサイトに様々なwhlファイルがありますので、こちらからダウンロードしましょう。必要なwhlファイルをダウンロードしたら、そのファイルを使ってpip installします。下記はnumpyの例です。

cd [whlファイルがあるディレクトリ]

pip install numpy-1.11.1+mkl-cp27-cp27m-win_amd64.whl

scipy, h5pyも同様にwhlファイルからインストールしましょう。

※プロキシ環境の場合

$ pip install [モジュール名] --proxy=[user]@[proxy]:[port]


chainerのwhlファイルがない!

さて、先ほどのサイトですがchainerのwhlファイルはありません。(2016/06/30現在)

なのでGitHubからコードをcloneして、ビルドしましょう。

$ git clone https://github.com/pfnet/chainer.git

$ cd chainer
$ python setup.py install


setup.pyの実行が途中で止まってしまう

エラーメッセージにも出てくると思いますが、Visual Studio C++が必要みたいです

ここからダウンロードしてインストールしましょう


確認

これでやっとインストールできるはずです。

ちゃんとChainerがインストールできたか確認する為、ExampleのMNISTの認識をしてみましょう。

git cloneしてきたディレクトリで下記を実行してみてください。

$ python examples/mnist/train_mnist.py

GPU: -1
# unit: 1000
# Minibatch-size: 100
# epoch: 20
Network type: simple

load MNIST dataset
epoch 1
graph generated
train mean loss=0.190369202715, accuracy=0.941016668603, throughput=994.727940618 images/sec
test mean loss=0.0899474363861, accuracy=0.970900004506
epoch 2



CPU環境なので私は10分くらいかかりました


おわりに

Windows10にbashが導入されるらしいですので、今後はこのように面倒な手順を踏まなくても良くなると思います。

「導入されるまで待てない!」という方は今回の方法を試してみてください。