5分で分かるGoogle Colaboratoryの使い方

Deep Learning

本記事では、Google Colaboratoryの基本的な使い方について紹介します。

Google Colaboratoryは、Googleが提供しているサービスで、
Googleアカウントを持っていれば、誰でも簡単に 機械学習やdeep learningを始めることができます。
※以降Google Colabと略させてもらいます。

機械学習やdeep learningをちょっと試したいという方や、勉強会等でコードを共有したいといった場合にとても便利なので、ぜひ、本記事を読んだあとに使ってみてください。

Google Colabのメリット・デメリット

Google Colabの便利な点は主に以下の3つかと思います。
1. 環境構築が必要ない
2. Jupyter notebookのような操作性
3. GPUマシンが使える

1に関しては、Pythonをインストールしたり、必要な機械学習パッケージを自前で揃えるのは、
初学者にとって少しハードルが高いですが、Google Colabでは、ある程度の機械学習やDeep learningに必要なパッケージは既にインストールされているため、すぐに利用することが可能です。
もちろん、必要なパッケージがあれば自分でインストールすることも可能です。

2に関しては、Google ColabはほぼJupyter notebookと同じ形式で使うことができますので、
スクリプトをセル単位で実行でき、インタラクティブにコーディングすることが可能です。

3が一番のメリットかもしれませんが、主にDeep learningをする際にGPUを使うことで、
学習時間を大幅に短縮することができます。AWSなり、GPUマシンを使うには、普通はサーバー課金する必要がありますが、Google Colabでは、無料 で使えるということで、Google様ありがとうございますといった感じです。

デメリットに関しては、主に以下の2点でしょうか。
1. 連続で12時間までしか使えない
2. データの読み込み方が少し特殊

Google Colabには12時間までしかインスタンスを立てられない他に、セッションが切れてから90分以上経つと、インスタンスが落とされる仕様になってるため、そもそも重い処理を長時間かけて回す、学習させるといった用途には向いてないです。
データの読み込み方についてはこのあとご紹介しますが、慣れればこの部分は大丈夫かなと思います。

デメリットを補うだけのメリットのほうが大きいので、ぜひうまく活用してみてください。
次項からさっそく使い方について紹介していきます。

Google Colabの起動方法

Google Driveを起動して、新規ボタンをクリックします。

すると、以下のようにColaboratoryがでてきますので、こちらをクリックして立ち上げてみましょう。
※Colaboratoryが入っていない方は、アプリを追加 という部分でgoogle Colaboratoryを追加してください。

立ち上げると以下のような画面が現れると思います。見た感じは、Jupyter notebookとかなり似ていますね。

さて、jupyter notebookを使う要領で試しに動かしてみましょう。
shift + enterでセル内のコードを実行できます。

このようにきちんと実行されていることがわかります。
jupyter notebookと同じ要領で使えるので本当に便利ですね。

ちなみに、GoogleスプレッドシートやGoogleドキュメントと同じように、他の人に共有することも可能です。
Google colab画面の右上に共有ボタンがあるので、コードを共有したい場合は活用してみましょう。

Linuxコマンド

Linuxコマンドを使用する場合は、セル上で、「! 」をつけることで実行することができます。
試しに、何のライブラリが入っているのか確認してみます。

一通りライブラリが入っていることが確認できました。
もちろんこの中に自分が使いたいライブラリが入っていないという場合は、以下のようにpipを使って追加することもできます。

注意点としては、インスタンスが消えたら、初期状態にリセットされるため、インストールしたライブラリは全て消えてしまいます。
したがって、インスタンスが消えた場合は、またインストールし直す手間は発生してしまうので注意してください。(ここはちょっとめんどくさいです)

GPUの選択

Google ColabでGPUを使うには、少し設定が必要です。
といっても設定は簡単で、下記のように、ランタイム タブを開いて、ランタイムのタイプを変更 をクリックします。

すると、下のようなポップが現れます。


ここで、pythonの2系、3系の選択とGPU(もしくはTPU)を使うかどうか指定することができます。

これで設定は完了です。
GPUマシンを使っていて、実はCPUで動かしていたなんてことは、結構あるあるですので、GPUを使う場合は上記設定を忘れずに行ってください。
deep learningを使う際は、GPUを使うと学習がだいぶ早いことが実感できるのでお試しを!

ファイルのインポート方法

最後にファイルの読み込みってどうやるの?ということで、
ローカル上のファイルの読み込み方と、GoogleDrive上のファイルの読み込み方、二通りの方法を紹介していきます。

ローカル上のファイルの読み込み

ローカルファイルをアップロードするには、colab内のfilesモジュールを使います。

from google.colab import files
uploaded = files.upload()

実行すると下記のように”ファイル選択”のダイアログが現れるので、
それをクリックしてローカルファイルを選択しましょう。

ファイルのアップロードが成功したら、以下のようにpandasを使ってデータを読み込むことができます。

読み込みたいファイルがローカルにあり、かつ少数の場合は、こちらの方法でファイルを読み込んでもいいですが、例えば、大量の画像データを読み込みたい場合は上記方法ではとても面倒です。

そのような場合は、次で紹介するgoogle Drive上のファイルを読み込む方法を試してみましょう。

Google Drive上のファイルの読み込み

Google Drive上のファイルを扱うには、まずはマウントする必要があります。
といってもやることは簡単で、以下のコードを打つだけです。

from google.colab import drive
drive.mount('/content/gdrive')

上記コードを実行すると、下記のようにアカウント認証のためのURLが表示されます。
Googleアカウントを選択して、アクセスコードをコピーし、Google Colabに戻ってコードを入力することで認証されます。

カレントディレクトリがcontentというところにいるのですが、
下記のパス先が、Google Driveを開いたときのディレクトリに相当します。

! ls ./gdrive/My\ Drive/

なので、Google Driveトップにsample_data.csvというファイルを保存したとしたら、下記のようにパスを指定してデータを読み込むことができます。

df = pd.read_csv('./gdrive/My Drive/sample_data.csv')

2つのファイルの読み込み方法を紹介しましたが、どちらも簡単にできます。
ローカルファイルを読み込みたいか、Google Drive上のファイルを読み込みたいかでやり方は選択してください。

終わりに

本記事では、最低限のGoogle Colabの使い方を紹介しました。
本記事で紹介した、以下の3つのテクニックがあれば、Google Colab上でのデータ分析にはあまり困らないのではないかと思います。

  • ライブラリの入れ方
  • GPUの設定の仕方
  • ファイルの読み込み方

Google Colabの使い方がわかったところで、次回はGoogle ColabのGPUを使ってCNNをやってみたいと思いますので、乞うご期待ください。

コメント