Macで「ゼロから作るDeep Learning」を読む時の環境構築メモ

この記事は最終更新日から6年以上経過しています。

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

面白そうだったの買ってみました。まだ途中ですが初めて掲示板のCGIを触ったときのようなワクワク感があります。

Pythonの環境でさっそく躓いたのでメモ。


普段Rubyの案件をちょこちょこやっているので既にHomebrewやrbenvが入っている環境が手元にあって、Pythonの知識は0という状態からのスタートである事を先に書いておきます。

pyenvを入れる

自分のPCにはOSX Sierraが入っているのですが、入っていたPythonのバージョンは2.7.10でした。書籍のサンプルはバージョン3で動くとの事なので、まずはバージョン3を入れます。

そのままglobalのディレクトリにインストールしても良いのですが、rubyを触る時にはrbenvでバージョンを切り替えて管理していて、それが非常に便利なのでPythonもpyenvで管理した方が良いに違いないという事でpyenvから入れていきます。

Homebrewが既に入っているのでbrewでpyenvをインストールしました。

コピーしました
$ brew install pyenv

次に .bash_profile もしくは .zshrc にパスを追加します。

コピーしました
export PYENV_ROOT=$HOME/.pyenv
export PATH=$PYENV_ROOT/bin:$PATH
eval "$(pyenv init -)"

最後に環境変数の変更を保存します。

コピーしました
$ source ~/.bash_profile

Python3を入れる

次にpyenvでpythonをインストールするのですが、先日Sierraを入れたてでXCodeが入ってなかったのでエラーが出ました。XCodeをインストールして下記のコマンドを入れましょう。

コピーしました
$ xcode-select --install

で、Python3をインストールします。

コピーしました
$ pyenv install 3.5.1

最後に使用するPythonのバージョンを切り替えます。

コピーしました
$ pyenv global 3.5.1
$ pyenv rehash

これでインタプリタで書籍のサンプルを動かせるようになりました。


使用するライブラリをインストールする

続いて書籍ではさらにNumpyMatplotlibPIL(Python Image Library) というライブラリを使用しているので、そちらをインストールします。 pyenvを入れたらpipというパッケージ管理ツールがインストールされているのでそれを使います。 しかし、何かライブラリを入れようとしたら古いよとエラーが出るので、まずは下記を実行してアップグレードします。

コピーしました
$ pip install --upgrade pip

次にNumpy、Matplotlib、PIL(Python Image Library)をインストールします。

コピーしました
$ pip install numpy
$ pip install matplotlib
$ pip install pillow

Matplotlibは正常にインストールできたように見えて、実際は実行してもグラフが描画されませんでした。 調べてみて下記のファイルを作成したら動作するようになりました。 画像描画バックエンドをデフォルトのものと切り替える必要があるようです。

~/.matplotlib/のディレクトリにmatplotlibrcという拡張子無しのファイルを作成して中身は下記の1行だけを記述しておきます。

コピーしました
backend : TkAgg

これで無事グラフが描画できました。


Atomの中で実行する

エディタで Atom を使用している場合、プラグインの atom-runner を入れておくとその場でCtrl+Rで実行できるようになります。 黒い画面を開かなくて良くなるので非常に便利です。

またグローバルにバージョン2が入った状態で前述のpyenvでバージョン3を入れた場合、Atomからはグローバルの2が実行されてしまうのでAtom側で環境設定をする必要があります。 config.csonに下記の記述を追加します。

コピーしました
runner:
    scopes:
      python: "python3のパス"

pythonのパスは下記で調べる事ができます。

コピーしました
$ which python3

こちらの記事を参考にさせていただきました。


おまけ:

コピーしました
$ python

を実行したら立ち上がるインタプリタですが、どうやって閉じたらよいのかわからず涙目になりました。 デザイナーが黒い画面を使うとよくやってしまうあるあるだと思っているのですが、今回はCtrl+Dquit()で出る事ができました。


  • 16-11-5 追記: PIL(Python Image Library)の記述を追加しました。
  • 6-11-21 追記: Atomの記述を追加しました。
Comment
comments powered by Disqus
Profile

石原 悠 / Yu Ishihara

デザインとプログラミングと編み物とヨーグルトが好きです。