DeepLearningを勉強する上で、最初にぶつかる大きな壁、それが環境構築である。
この問題を解決するための手段として、Google Colaboratoryの利用をオススメしたい。
オススメしたい人
以下に該当する方に、Google Colaboratoryの利用をオススメします。
- Pythonを用いたデータ分析の経験がある(scikit-learn, pandas, matplotlibなどを用いて)
- Jupyter notebookを好んで利用する
- DeepLearningについて基本的なことは知っているが、実装経験はない(or 少ない)
- Google Colaboratoryを知らない、あるいは知っているが難しそうな印象を持っている
- DeepLearningを勉強しようとして、環境構築の手順の煩雑さで、嫌な気分になったことがある
上記のうち、3つ以上該当する人には、Google Colaboratoryの利用がオススメです!
特に環境構築で苦労したことがある人であれば、今までの苦労は何だったのだろうか、と思うはずです。
Google Colaboratoryの簡単な使い方
①Google Colaboratoryのサイトにアクセス(※Googleアカウントは必要)
↓このような画面が表れます。
Googleアカウントを持っている場合、クレジットカードの登録など面倒な手続きは一切不要。
とても簡単に使い始めることができます。
ここでは、試しにPython3の新しいノートブックを選択してみます。
(Python2系を選択することも可能です)
②自分好みに設定を変更する
新しいノートブックを開くと、下のような画面が表れます。
jupyter notebookのような見た目で、操作性もほぼ同じです。
Google Colaboratoryには、データ分析、DeepLearningに必要な基本的なライブラリが大体インストールされています。
例:
- データ分析系
- scikit-learn, pandas, matplotlibなど
- DeepLearning系
- tensorflow, theano, keras, chainer など
ローカルにデータ分析用の環境構築を行う場合、Anacondaを利用することが私は多いのですが、DeepLearning用の環境構築の場合、そこから先が長くて苦労する。。
DeepLearning系のライブラリが大体揃っている(かつ依存関係の問題が生じていない)のは非常に助かります。
どんなライブラリがインストールされているかは、pip listコマンドで確認できます。
!pip list
当たり前なのですが、先頭に!をつけるだけで、Linuxコマンドを使えるのも便利だなーと感じます。
続いて、GPUの利用方法について説明します。
「編集」→「ノートブックの設定」→「ハードウェアアクセラレータ」→「GPU」を選択します。
驚くなかれ、これでGPUを利用することができるようになります。
経験のある人であれば分かると思いますが、
GPUを利用できる環境を、ローカルに自前で構築するのは茨の道です。具体的には以下のような苦労を伴います。
- GPUの選定と購入
- GPUの自前PCへの取り付け
- CUDAのインストール
- 利用したいDeepLearning系のライブラリとの相性確認(←ここが大変)
- 購入したGPU固有の問題により、動かないことがある
- CUDAのバージョンにより、動かないことがある
- ライブラリのバージョンにより、動かないことがある(しかもDeepLearnig系のライブラリは大幅な仕様変更が頻繁に発生する!)
DeepLearning用の環境構築で苦労した経験のある方は、是非一度、設定の簡単さを体験してみてください!
③Google Colaboratoryを利用してDeepLearning!
ここまで準備が整えば、tensorflowなり、Kerasなり、Chainerなり、思う存分DeepLearningの勉強に励むことができます。
以降のことを解説している記事はたくさんあるので、他の記事の紹介のみに留めます。
【秒速で無料GPUを使う】深層学習実践Tips on Colaboratory
https://qiita.com/tomo_makes/items/b3c60b10f7b25a0a5935
TensorFlowチュートリアル - ML初心者のためのMNIST(翻訳)
https://qiita.com/KojiOhki/items/ff6ae04d6cf02f1b6edf
脳死で覚えるkeras入門
https://qiita.com/wataoka/items/5c6766d3e1c674d61425
ディープラーニング入門 Chainer チュートリアル
https://tutorials.chainer.org/ja/
まとめと今後
DeepLeraningの環境構築で嫌な気分を味わったことのある人は、Google Colaboratoryを是非試してみてください!
次回は、DeepLearningの勉強をしていて遭遇した、ちょっと面倒だった問題と、その解決策について投稿予定です。