Google Colaboratoryの5つの特徴と注意点

空とPython

Jupyter Notebookの5つの特徴と注意点」では、Pythonのプログラミング開発環境のひとつの Jupyter Notebook(ジュピター ノートブック)を紹介しました。

Jupyter Notebookはインストール型のプログラム開発環境となりますが、インストールなしでPythonのコーディング&実行できるクラウド上のサービスが存在します。

今回のページでは、

  • Pythonによるプログラミングをお試しでやってみたい
  • Pythonで深層学習をやってみたいが、マシン(CPU)の性能に不安がある
  • メンバーに動かしてみてもらいたいPythonプログラムがある

という人に向けて、Pythonのクラウド型サービスのひとつ、Google Colaboratory(グーグル コラボラトリー)について、その特徴と注意点を紹介していきます。

空と雲

Google Colaboratoryとは?

Google Colaboratory(グーグル コラボラトリー)はGoogle Researchが提供する、Jupyter Notebook(ジュピター ノートブック)をベースとし、Googleの仮想マシン上で動くPython開発環境です。

Google Colaboratoryは長いため、Colab(コラボ)と呼ばれることが多いです。

 

Google Colaboratoryの特徴

1.Jupyter Notebookが使える

Colabでは、Jupyter Notebook(ジュピター ノートブック)を利用することができます。Jupyter Notebookは、とても使いやすいプログラミング開発環境です。

参考記事「Jupyter Notebookの5つの特徴と注意点

2.データ分析に必要なパッケージが最初から揃っている

Colabでは、データ分析・科学計算・機械学習などで必要になる基本的なパッケージ(再利用な関数の集まり)は設定済みとなっているため、手動で環境構築を行う必要がなく、Colabにログインした直後から、すぐにデータ分析などを行うことができます。

また、足りないライブラリがあれば、追加でインストールすることもできます。

3.チーム内でのコードの共有が簡単

Colabでは、作成したコード(プログラム)は、Google Drive上に保存されます。

そのため、Google Drive上でファイルの共有設定を行うことで、メンバー間でコードの共有が簡単に行えます。

4.高性能なGPUを利用することができる

Colabでは、NVIDIA社のK80、T4、P4、P100などのGPU(Graphical Processing Unit)を搭載したマシンを利用できます。

演算量が多くないデータ分析であれば、一般的なCPUでも問題はありません。しかし、計算量が多くなる、ディープラーニング(深層学習)などの処理の場合は、CPUでは実行時間が膨大となってしまうため、GPU環境を利用できることは大きなメリットと言えます。

5.無償で利用できる

ColabはGoogleアカウントを持っている人であれば誰でも無償で利用することができます。

そのため、PythonをインストールしていないメンバーにPythonを触ってもらいたいシチュエーションでも、このColabであれば、Pythonのコードを動かすことができるため、大変便利です。

私自身も、ハンズオン形式のPython勉強会を行った際に、このColabを活用しました。

 

Google Colaboratory利用時の注意点

1.90分ルールと12時間ルールがある

Colabには、90分ルールと12時間ルールが存在します。

90分ルールとは、ノートブックのセッションが切れた状態(最後のプログラム実行が終わった状態)から90分が経過すると、それまで実行した結果(中間生成データ含む)がすべてクリアされてしまいます。

そのため、たとえば、Colab上でプログラムのコーディングを実行しながら行っていた場合、打合せやランチ休憩などで90分間以上パソコンから離れてしまうと、それまで実行していた結果(データの読み込みや、機械学習した結果など)がクリアされてしまい、その場合は最初からプログラムを実行させる必要が出てきます。

ちなみに、90分ルールでは実行結果はクリアされてしまいますが、書いたコードがクリアされることはないので、その点は安心してください。

12時間ルールとは、Colabでノートブックを起動してから12時間が経過すると、起動したノートブック上のセッションは切断されてしまいます。このセッションの切断は、たとえプログラムを実行中であっても強制的に行われるため、注意が必要となります。

2.使用できるGPUは選択できない

Colab上では、NVIDIA社のK80、T4、P4、P100などのGPUが搭載されたマシンが用意されていますが、ユーザーは使用したいGPUを選択することはできません。

3.扱うデータは全てGoogle Driveで管理が必要

Colabでは、読み込むデータセットはGoogle Driveで保存しておく必要があります。さらに、実行時はGoogle Driveをマウント(連動)させるための操作を行う必要があります。

Google Driveのマウントは難しい操作ではないので、慣れてしまえば問題はありません。それでも最初は、Google Driveのマウント方法を説明しているサイトを参考にしながら操作する必要があります。

また、扱うデータセットはGoogle Driveに保存する必要があるため、たとえば、大量の画像データを使用する場合には、アップロード時間や容量制限(無料ユーザーの場合は15GB)などに注意が必要となります。

 

有料版サービスColab Pro(コラボ プロ)

Colabは無償で利用できるPython開発環境ですが、そのサービスをベースとした有料版サービスのColab Pro(コラボ プロ)が2021年4月より日本でも利用することができるようになりました。

Colab Proは月1,072円の月額課金方式となり、その金額で得られるメリットは次の3つです。

  • より高速なGPUに優先的に使用可能
  • より長時間の使用可能
  • より多くのメモリを利用可能

 

まとめ

本ページでは、クラウド上で利用できるPython開発環境の「Google Colaboratory」について、5つの特徴と1つの注意点を紹介しました。

Google Colaboratoryは高性能な環境を手軽かつ無償に誰でも使えるというアドバンテージをもつ魅力的なPython開発環境と言えそうです。

注意点もいくつか挙げましたが、ちょっとしたデータ分析であれば、まったくデメリットにならないので、気軽に使ってみて良いのではないでしょうか。

じゃあ。

ABOUTこの記事をかいた人

パラレルキャリア研究会創設メンバー 岩手県出身。東北大学工学部卒、同大学院工学研究科修了。半導体メーカーに入社後、エンジニアとして半導体製品の企画・開発に10年以上従事。独学&パラ研の場でPythonや統計学を学習中。1児のパパ。趣味は日本酒、ロードバイク。中小企業診断士。