Edited at

Chainer 環境設定からサンプルプログラムの実行まで (Mac)

More than 1 year has passed since last update.


この記事について

Mac に Chainer をインストールし、MNISTのサンプルプログラムをSpyderで動かすまでの手順です。


動作確認環境

macOS Sierra


準備


Homebrew のインストール

まずは Homebrewをインストールします。

Homebrew は Mac 向けのパッケージ管理システムで、Macで開発をするのであれば、ほぼ必須です。

DBMSやApacheなど諸々、基本的にHomebrewからインストールすることをおすすめします。

Mac で Terminal を起動し、以下を打ち込む事でインストールが完了します。

Command Line Tools for Xcodeのインストール


準備

$ xcode-select --install



インストール

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"



確認

$ brew doctor



Anacondaのインストール


事前準備(pyenv, virtual-envのインストール)

pyenvはpythonのに関する設定(pythonのバージョンやライブラリを仮想環境にインストールして切り替えて使うためのライブラリです。

Pythonを使用した開発は、基本的に仮想環境を作った上でライブラリのインストールなど環境構築を行います。

$ brew install pyenv

$ brew install pyenv-virtualenv


~/.bashrc

export PYENV_ROOT="$HOME/.pyenv"

if [ -d "${PYENV_ROOT}" ]; then
export PATH="${PYENV_ROOT}/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
fi


設定の適用

$ source ~/.bashrc



確認

$ pyenv -v



Anaconda本体のインストール


インストールできる環境一覧確認

$ pyenv install --list | grep anaconda


anaconda-x.x.x が Python2系、 anaconda3-x.x.x がPython3系です。

今回はPython2系をインストールします。


インストール

$ pyenv install anaconda-4.0.0


構築した環境を確認します。


確認

$ pyenv versions


環境を構築しただけでは、使えないので、その環境を使うように設定します。


設定

$ pyenv global anaconda-4.0.0


systemから、anaconda-4.0.0に切り替わっています。


確認

$ pyenv versions

system
* anaconda-4.0.0

ここまできたら、以後pyenvを直接触る必要は無くなり、anacondaだけを意識すればよくなります。


Anaconda での開発環境構築

まず、今ある仮想環境を確認してみます。

$ conda info -e

環境はroot担っていると思います。

ここに新しく、dslab という名前の環境を作ります。

$ conda create -n dslab python=2.7 anaconda

$ conda info -e

dslabというのができていると思います。

dslabの環境を使うように、環境を切り替えます。

$ source activate dslab

ここまでで、Chainer導入のための環境が整いました。


Chainer のインストール

前章で

$ source activate dslab

をした後、

$ conda list

と打ってみて下さい。

matplotlib や numpy, scipy, pands, scikit-learn, spyder, ipython, seaborn など、必要そうなものは予めすべて入っています。

この仮想環境dslab上にChainerをpipでインストールします。

$ pip install chainer

インストール完了です。

Spyderでサンプルプログラムを動かして、動作確認してみます。

以下の例では、 /Users/<yourname>/Programming という作業用ディレクトリを作成して作業します。

$ mkdir ~/Programming

$ cd ~/Programming
$ wget https://github.com/pfnet/chainer/archive/v1.22.0.tar.gz
$ tar xzf v1.22.0.tar.gz
$ spyder chainer-1.22.0/examples/mnist/train_mnist.py

ちなみに、wget で

(anaconda-4.0.0/envs/dslab) $ wget https://github.com/pfnet/chainer/archive/v1.22.0.tar.gz

-bash: wget: command not found

とエラーがでたら、

$ brew install wget

とすれば wget コマンドが使えるようになります。


サンプルプログラムの実行

右向き三角(Runボタン)を押すと学習が実行されます。

total が 100% になると学習完了です。


学習結果の確認

train_mnist.py と同じディレクトリ内にある result ディレクトリ内の loss.png を開いてみます。

$ open ~/Programming/chainer-1.22.0/examples/mnist/result


おまけ

Spyder でコマンドライン引数を入力するには、



を押します。