DL4USをGoogle Colaboratoryで無料学習してみよう
東京大学の松尾研究室が開発・監修している、ディープラーニング技術者の育成を目的としたオンライン教育プログラム「DL4US」のコンテンツが公開されて話題になっています。
DL4USとは
このプログラムは、本来iLect.netというオンライン学習環境で「一人一台独立した仮想GPU環境」で実行することが目的となっています。人工知能ブームや日本語での学習教材の不足している現状もあり、このオンライン講座は大人気となっています(もともとこの講座は無料ですが人気すぎて抽選が厳しい)。しかし、クラウド環境のリソース制約があるため、需要に対して供給が追いついていないのが実情で、前回のDL4USは10倍以上の抽選となりました。かくいう自分も前回抽選漏れしました。
しかし、この教材が公開されたため、Google Colaboratory(Colab)を使えば抽選漏れを気にしなくても同様の勉強ができることに気づきます。ColabはGoogleが提供している機械学習布教用のオンラインクラウド環境で、GPU・TPUが無料で利用できてしまいます。GPUはTesla K80のうち1枚利用でき、このGPUはそこそこいい値段します(興味ある方はググってみてください)。今回はDL4USをColabで実行する方法を解説します。
教材をダウンロードしよう
まずは「DL4USコンテンツ公開ページ」から教材をダウンロードします。
個人利用を目的としたもなので、ライセンスに注意してください。2019/2/25現在、テクニカルな問題のため一時的に教材の公開が中止されています。代わりにこちらからダウンロードできます。
Google Driveにアップロードする
ダウンロードしたZipファイルを自分のGoogleドライブにアップロードします。ここでは「DL4US」というフォルダにアップロードしました。
右クリックをし、「アプリで開く」→「Zip Extractor」を開きます。「Authorize」で認証を完了させます。
Google Driveへのファイル展開の認証が完了すると、解凍できるようになるので、「Extract now」をクリックします。
展開が終わると、「DL4US」フォルダに以下のようなフォルダができているはずです。これでOKです。
Colabの利用を開始する(既に利用開始している場合は不要)
まだColabを利用していない場合のみ必要となるかもしれません。利用開始していない場合は、Jupyter notebook(.ipynb)とColabの関連付けができていない可能性があるので、Colabの利用を開始し、Google Driveから右クリックで呼び出せるようにしていきます。
Colab自体は無料なので、クレジットカード等の登録も不要です。
「こんにちはColaboratory」に使い方が載っているので、必要なら目を通してください。特にここではすることはありません。
DL4USの教材を開き、GPUをオンにする
「weblab_ilect_dl4us.zip (Unzipped Files)→lesson1→master」と開いていくと、lesson1_sec1_exercise_master.ipynbのような.ipynbファイル(Jupyter Notebookファイル)があることに気づきます。このような.ipynbファイルが教材です。これをダブルクリックすると、
「Colaboratoryで開く」というボタンがあるので、それをクリックします。
ノートブックがオープンし一見良さそうに見えるのですが、これだと無料のGPUがオンになっていないので、必ずGPUをオンにします。ファイルを開いた初回のみ必要です。
やり方は上のメニューから、「ランタイム→ランタイムのタイプを変更」をクリックします。ハードウェアアクセラレータを「GPU」にします。TPUという選択肢もありますが、TPUには専用の変換コードが必要なので、DL4USの教材は対応していないと思われます。なので「GPU」にしましょう。
「保存」を押すとGPUがオンになります。ハードウェアアクセラレータを変更するとランタイムがリセットされるので、実行中の変数の内容は破棄されます。また最初からコードを実行する必要があります。
コードの実行
Jupyter notebookを普段から使っている方には当たり前の内容となってしまいますが、コードの行の三角ボタンをクリックするか、「Ctrl+Enter」でコードセルが実行できます。
コードが実行できていますね。自分はlesson1だけ確認したので、もしかすると内容によっては別途ライブラリ等が必要になるかもしれません。その場合は、
!pip install somelibrary
とコードセルを作り、「somelibrary」に必要なライブラリ名を入力しましょう。
ちなみにGoogle Colabはスマホやタブレットからも実行できてしまいますが(Safariで確認済み)、本来のサポート環境ではないので、可能ならPCからの実行をおすすめします。キーボードがないと長めのコードを入力するのが疲れてしまいますので。最低限キーボードはあったほうがいいです。
Colabの制約
Colabは無料でできるかわりに以下のような制約があります。
・90分間操作をしないとランタイムが切断
・起動から12時間後にランタイムが強制的に切断
この2つを覚えておきましょう。ランタイムが切断されても、Jupyter Notebookのほうは保存されているのでまた最初から実行すればいいだけです。あくまで、長時間連続して起動したり訓練はできないよという制約があるだけです。
さあやってみよう
これで必要なパーツはすべて揃いました。あとはDL4USの教材をじっくり楽しむだけです。自分も抽選落ちてしまったので、この期にDL4USをゆっくり楽しんでみようと思います。春休み(あれば)のお供にぜひいかがでしょうか?