Python
Anaconda

Anaconda-4.2.0-python3環境構築(Mac)

Pythonとは

プログラミング言語にはたくさんの種類があります。代表的なものではC言語、Java、html、Pythonなどが挙げられます。この中で比較されるのがC言語とPythonです。それぞれの違いについて見ていきます。

C言語、Java Python
長所 実行速度が早い ※インタプリタのため※コンパイルが必要ない コード量が比較的少ない
短所 コンパイルが必要 コード量が多い etc... 実行速度が遅い

※コンパイルとはプログラムを機械語に変換すること
※インタプリタとはプログラムをソフト上で実行するプログラムのこと

anacondaとは

Continuum Analytics 社によって提供されているPythonでよく用いられるライブラリを一括にインストールすることができるパッケージのことです。
anacondaの中にこんなライブラリが入っています。

pandas
numpy
jupyter notebook

今回はanaconda4.2.0をインストールしていきます。
最新バージョンは4.4.0となっています。なぜ古いバージョンをインストールするのか。
それは、現在人工知能開発で主流となりつつあるライブラリ「Keras」に非対応であるためです。
もっと詳しく説明するとanaconda4.2.0のPythonのバージョンは3.5で4.4.0はPython3.6です。しかしKerasはPython2.7~3.5にしか対応していないのです。
Pythonではそのライブラリが最新のバージョンに対応していないことが稀にあります。もっとも最新のバージョンを使用すると、エラー等の報告記事が以前のバージョンに比べて少なくなるため対応が難しくなる可能性もあります。
ですので安易に最新バージョンをインストールするのではなく、ライブラリ等の対応を確認することが重要です。

今回インストールしていくソフトウェア

anaconda
エンジニアリング、数学、データ分析などに使用するライブラリが事前にパッケージングされているPythonです。

Homebrew
Macにソフトウェアやライブラリをインストールするパッケージ管理システムです。
pyenvを簡単に管理していくためにインストールしていきます。

pyenv
Pythonのバージョンを切り替えられるようにするソフトウェアです。
anacondaと既存のpythonを共存させるためにインストールさせていきます。

今回インストールしていくパッケージ

・Tensorflow
・Keras

Homebrewインストール

Python関連のソフトウェアインストールはTerminalを使っていきます。
LaunchPadなどから検索で【Terminal】と検索し起動しましょう。

Terminalを起動したら以下のコマンドを入力しHomebrewをインストールしてください。

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

途中でエンターキーとパスワードの入力が求められます。
インストールが完了したら、brew doctorコマンドで正常にインストールされているか確認します。

$ brew doctor

Warningについては今回時間の関係上無視していきます。
正常かどうか確認できたらバージョンを確認してみましょう。

$ brew -v

バージョンがしっかりと表示されましたでしょうか?
バージョンが古い場合もありますので、アップデートコマンドをとりあえず実行してみましょう。

$ brew update

これでHomebrewのインストールは以上です。

pyenvインストール

pyenvはHomebrewを利用してインストールしていきます。

$ brew install pyenv

次はpyenvのコマンドを実行できるようにbash_profileに記入してきます。
bash_profileはログイン時に毎回読み込まれるファイルです。ここに設定を記述することによって毎回pyenvを実行できるようにしています。

$ echo 'export PYENV_ROOT="${HOME}/.pyenv"' >> ~/.bash_profile
$ echo 'export PATH="${PYENV_ROOT}/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

$ exec $SHELL -l

記入を終えたら、terminalを再起動します。
pyenvとterminal上に打って反応があればインストール完了です。

$ pyenv
pyenv 1.1.3
Usage: pyenv <command> [<args>]

Some useful pyenv commands are:
   commands    List all available pyenv commands
   local       Set or show the local application-specific Python version
   global      Set or show the global Python version
   shell       Set or show the shell-specific Python version
   install     Install a Python version using python-build
   uninstall   Uninstall a specific Python version
   rehash      Rehash pyenv shims (run this after installing executables)
   version     Show the current Python version and its origin
   versions    List all Python versions available to pyenv
   which       Display the full path to an executable
   whence      List all Python versions that contain the given executable

See `pyenv help <command>' for information on a specific command.
For full documentation, see: https://github.com/pyenv/pyenv#readme

Anacondaインストール

以下のコマンドを実行

$ pyenv install anaconda3-4.2.0

インストール中に同意画面が表示されるので、yesと入力してください。
インストール先を入力する場面が現れるので、

/Users/「自分のユーザー名」/.pyenv/versions/anaconda3-4.2.0

と入力してください。

最後に環境変数の設定をするかどうか聞かれますが、noと答えてください。

これでanacondaのインストールは完了しましたが、設定をする必要があります。

$ pyenv global anaconda3-4.2.0

これによってどこのディレクトリにいてもanacondaを使えるようになりました。
逆に一部のディレクトリだけanacondaにしたい場合はglobalをlocalに変えましょう。
今回はglobalの設定でお話を進めていきます。

anacondaのインストールが完了したら、terminalを再び再起動しバージョンを確認してみましょう。

$ python -V

ここでanacondaのバージョン表記がでない場合はbash_profileの記述ができていない場合があります。
バージョンがしっかり表示された場合はここでanacondaのインストールは完了となります。

パッケージインストール

pipというパッケージ管理システムを使用してパッケージをインストールします。

$ pip install (パッケージ名)

でインストールすることができます。

また、バージョンを指定してインストールしたい場合は

$ pip install (パッケージ名)==2.1.1

インストールされているパッケージを確認したい場合には

$ pip freeze

でできます。

パッケージをインストールする際に他のパッケージも必要となる場合も自動的にインストールしてくれます。

tensorflow

tensorflow

$ pip install tensorflow

Keras

Keras

$ pip install keras

寄付していただければ幸いです!
仮想通貨
BTC 18c58m54Lf5AKFqSqhEDU548heoTcUJZk
ETH 0x291d860d920c68fb5387d8949a138ee95c8d3f03
ZEC t1KtTRKy9w1Sv5zqi3MYnxZ3zugo54G4gXn
REP 0x291d860d920c68fb5387d8949a138ee95c8d3f03