• AI

Google Colaboratory で無料のGPUを利用する

こんにちは。
入社3年目も終わりを迎えようとしている、技術開発部の齋藤です。

本日は「”Google Colaboratory”でGPUを利用する方法」についてご紹介します。
Google ColaboratoryはGoogle Colabと略されることが一般的ですので、本ブログでもGoogle Colabと呼ぶことにします。

Google Colabとは

Google Colabとは、Googleが無料で提供している機械学習の教育、研究を目的とした研究用ツールです。
実態は、完全にクラウドで実行される Jupyter ノートブック環境となっています。
ChromeやFirefoxなどのブラウザとインターネット接続とGoogleアカウントさえあればすぐに利用することができます。

現在対応している言語はPython2.7とPython3.6となっており、Pythonで機械学習を試すことができます。

注目を集めた点としては、無料であるにもかかわらずGPUが利用できるという点です。
ただし、12時間以上連続でGPUを利用できないなどの制限はありますので、ご注意ください。
また、試験運用とのことですが、2019年3月現在はTPUも利用可能になっています。

また、Google DriveというGoogleのオンラインストレージサービスと連携することで、学習データや学習モデルなどのデータをクラウド上に保存することが可能になります。

Google ColabでGPUを使って機械学習

Googleアカウントは持っているという前提で話を進めます。
機械学習フレームワークは最近盛り上がりを見せているPyTorchを使います。
PyTorchのExampleをもとに、手書き数字の分類をGoogle Colab上で学習させました。
サンプルのノートブックを用意しましたので、まずはこちらのzipファイルをローカルにダウンロードし、展開してください。その中のノートブック”pytorch_mnist.ipynb”を使用します。

ファイルをGoogle Colabにアップロードする

まずはGoogle ColabのWebサイトに行きます。

「ファイル」>「ノートブックをアップロード…」を選択します。
colab4

アップロードするファイルを選ぶ画面が出ますので、サンプルのノートブックを選択します。
colab7

これでアップロードは完了です。

GPUを利用可能な状態にする

続いて、ノートブックの設定を変更します。

ノートブックを開いた状態で、「ランタイム」>「ランタイムのタイプ変更」を選択します。
colab5

ノートブックの設定が開きますので、ハードウェアアクセラレータを「GPU」に変更し、「保存」します。
今回はサンプルのノートブックなので既にGPUを利用する設定になっていると思います。
colab3

これでGPUが利用できるようになります。
この設定はノートブックごとに行う必要がありますので、他のノートブックを開いた際には再度設定を行ってください。

ノートブックを実行する

ここまでの設定でGPUを利用する設定できたため、後は実行するだけです。

基本的な操作はJupyter ノートブックと同じになりますので、「Shift + Enter」でセルの実行ができます。
全てのセルを実行したい方は「Ctrl + F9」で行うことができます。
colab6

最後のセルで簡易的に学習時間を表示させています。
CPUに切り換えるとどれだけ変わるのかを試してみてください。

私の場合は、GPUで2分弱、CPUで10分弱でしたので、GPUのありがたみを実感することができました。
ちなみに、標準PCを使ってローカルで実行した場合も10分弱でした。

まとめ

あっという間にGPUで機械学習を行うことができました。
今回は単純なタスクだったのでCPUを使っても学習時間は10分程度でしたが、学習に何時間もかかることはよくあります。
機械学習の中でも、特に深層学習(ディープラーニング)を実行する際には、GPUが必須と言われているほどです。

「ちょっとGPUで試してみたいけど、費用が高いしなぁ・・・」
と悩んでいる人にとっては、無料でGPU環境を試せるサービスがあることはとてもありがたいことです。

多くの人が手軽にGPU環境を使えることになったことで、機械学習分野の研究が進むことに期待したいと思います。

読んで頂きありがとうございました。

関連記事

  1. 外国人に「SCSKってAIの会社?」と言わせた話(国際情報オリンピック…

  2. DeepstreamでストリームAI処理する方法について

  3. 説明可能AIの実現方法:LIME、SHAP

  4. 「エッジAI」への期待と課題

  5. 業務ハッカーへの道 (#2 画像認識による自動検証)

  6. 深層強化学習の学習経過を見てみた

  7. RGB画像からの深度推定手法の精度比較

  8. [初心者向け]深層学習の勉強法

PAGE TOP