到来!ブラウザだけで機械学習プログラミングが始められる時代!
技術の進歩ってスゲー!と思わず言ってしまうような素敵な体験でした。
今日はGoogle Colaboratoryを使ってみた話です。
Colaboratory is a Google research project created to help disseminate machine learning education and research. It's a Jupyter notebook environment that requires no setup to use and runs entirely in the cloud.
Colaboratoryのココが凄い!
- 早い!セットアップがいらない
- 強い!GPU(Tesla K80)が使える
- 安い!無料で使用できる
この3点かなと思います。
早い!セットアップがいらない
僕はビックリしました!!!
「Colaboratory」って検索して出てきたページ上ですぐKerasが動く!!!
Chorome上だとGoogleのアカウントに常にサインインした状態だから、ページを開くだけで始められるww
Colaboratoryの特徴としてGoogle Driveと連携できる点があります。
Google Driveを開いて、「新規」→「その他」→「アプリを追加」
あとは検索欄に「Colaboratory」と入力して「アプリを追加」を選択しましょう。
これで、Google Driveから新規ファイル作成を選択するだけででプログラミングができる!
強い!GPU(Tesla K80)が使える
ノートブックのメニューバーから「編集」→「ノートブックの設定」でGPUを使用する設定に変更することができます。
ここからPython2/3の変更もできます。
試しに、Kerasのサンプルを回して学習にどのくらいの時間がかかるか試してみます。
5層のCNNをMNISTデータで学習。BATCH_SIZE=128/EPOC=12です。
Acurracyは0.99。実行時間は152.sでした!
比較対象として、研究室PCが積んでいるGTX1050でも同様のスクリプトを回してみます。
Acurracyは0.99。実行時間は170.sでした!
え、まじか・・・
研究室のPC要らない説浮上・・・
^^;
安い!無料で使用できる
そして驚くべくは、このハイパワーマシンと機械学習環境を無料で使えるということ!
Googleスゲー・・・
まぁ、いくつか制約はあるようです。
- アイドル状態が90分続くと停止
- 連続使用は最大12時間
それと、僕がお試しでGPUを使っている時に、
「GPU を使用するバックエンドは利用できません。」
なるエラーメッセージが出て、一時的にGPUが利用できなくなったことがありました。
しばらく待って再接続したら普通に接続できたので、おそらくこれもアクセスが集中した場合の制限でしょう。
こういった制限が嫌ならローカルにGPU買ってきてやりましょうね、ってことですね。
今後の使い道
端末を問わず、(僕にとっては)必要十分なパワーのGPUでいろいろ試せるということで、今後はColaboratoryをメインで開発していこうかなと思います。
僕がColaboratoryで作成したスクリプトファイルを共有すれば、だれでも一瞬でスクリプトを動作させることができるというのも非常に魅力的です。
あと、
!pip install pandas
のようにスクリプトに記載するだけでパッケージを入れることもできますし、マジでローカルのPCと変わらず使っていけそうです。
一つだけ問題なのは、学習データをどうするか問題。
調べたところ、ローカル、Google Drive、Drop Boxなどから学習データを引っ張ってくる方法はあるようなので、楽な方法を模索していこうかと思っています。