KerasでDeepLearningを始めるための環境構築

Metclomerのシステム屋、escgreenです。
今日はAI(Python+Keras)を動かすための環境構築の手順をまとめます。

AIを学ぶモチベーション

AIが解決できる課題は多い

このブログを見てくださっている皆さんも日々AIに触れているはずです。
AIは応用範囲が広く、囲碁や将棋でも人間に勝てるレベルになってきました。
車の自動運転や音声の認識など、今までのシステムでは実現できないようなことも、
AIなら解決できることも多いです。

AI人材は給料が高い

AIは応用範囲が広く、一般の人々の期待もかなり高まっています。
それに加えて進歩している分野ですので、まだAIを扱える人材は少ないです。
そのため、AI人材は貴重で高い収入を得ることができます。
例えばNECや富士通などの企業は高度な技術に対応できる人材に対し、
1000万円を超える年収を提示することもあるようです。

AIを動かせる環境を作る

私はAIもプログラミングのように実際に手を動かして覚えるのが近道だと考えます。
そのためにはまず、AIを動かせる環境を構築しましょう。
言語やライブラリのバージョンがごちゃごちゃになってもすぐ再構築できるように、
VMware上のCentOSにPythonをインストールし、その中でKerasを動かせるようにします。

VMwareのインストール

VMware Workstation Playerは個人利用および商用以外の利用であれば無償で利用可能です。
リンク先の「今すぐダウンロード」を押して、インストーラーをダウンロードしましょう。

ダウンロードしたインストーラーを実行してVMwareをインストールしましょう。

CentOSのインストール

CentOS8がすでにリリースされていますが、ここでは使い慣れているCentOS7をインストールします。
VMware上のゲストとしてインストールするため、余計なパッケージが入っていないminimalのisoをダウンロードします。
「CentOS-7-x86_64-Minimal-〇〇〇.iso」〇〇〇はバージョン番号

VMwareで新規仮想マシンを作成し、ダウンロードしたISOファイルを指定してインストールしましょう。
インストール方法の詳細は後で記事を作成します。

Pythonのインストール

centOSのパッケージ管理コマンド「yum」を使ってインストールする方法が簡単です。
pythonファイルを編集するためにvimエディタもついでに入れておきます。

$ sudo yum -y install python3 vim

Virtualenvのインストール

Virtualenvを使うと同じ端末内で複数の開発環境を構築可能です。
ここではAI開発用の環境を作りましょう。

// virtuelenvをインストール
$ sudo pip3 install -U virtualenv
// venvという名前のvirtualenvを作成
$ virtualenv --system-site-packages -p python3 ~/venv
// venvの開発環境に入る
$ source ~/venv/bin/activate
// vencの環境から出る
$ deactivate

AI開発に必要なpythonパッケージのインストール

pythonには便利なパッケージが揃っています。
AI開発でよく使うパッケージをインストールします。
この作業は先ほど作ったVirtualenvの環境「venv」の中で実施します。
そうすることで、別の開発環境と分けてパッケージの導入が可能です。

$ pip install numpy pandas sklearn
$ pip install ipykernel
$ pip install tornado
$ pip install -U jupyter
$ pip install -U tensorflow
$ pip install -U keras
$ python -m ipykernel install --user --name=venv

pythonの動作チェック

これで準備は完了です。
導入したパッケージが正しく入っているか、チェックしてみましょう。
このチェックも、Virtualenvで作成した「venv」の開発環境で実施します。

$ python
-> pythonの対話式CLI開始
>>> import keras
2020-09-23 19:03:46.255707: W tensorflow/stream_executor/platform/default/dso_loader.cc:59] Could not load dynamic library 'libcudart.so.10.1'; dlerror: libcudart.so.10.1: cannot open shared object file: No such file or directory
2020-09-23 19:03:46.255854: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.
>>> import tensorflow
>>> exit()

kerasのimport後にエラーが出ていますが、VMware上の仮想環境でGPUが使えないためです。
GPUがあるとAIの学習速度が上がりますが、AIの勉強として使うため今は気にしないでおきましょう。

まとめ

これでAIのプログラムを開発して動かせる環境が作成できました。
次回以降は具体的にプログラムを動かしながらAIを学んでいきましょう。

Follow me!