単にJupyter Notebookとして使うのもいいですが、ほかにも便利な機能がたくさんあります。今回はGoogle Colaboratoryの便利な使い方をまとめて紹介します。
Google Colabとは
Google Colabは次のような画面になっています。

右側にMarkdown形式で文書を書いたり、Pythonでコードを書けます。そして、各コードをオンライン上で実行して、その結果を確認できます。つまりドキュメントを読みながら実際にコードを実行して、その結果を順番に確認できる仕組みです。学習環境、Pythonの実行環境として便利に使われています。
検索機能
画面左にある虫眼鏡アイコンをクリックすると検索を実行できます。現在表示している文書の中で検索して、結果をクリックして該当部分にジャンプできます。置換も可能です。

コードスニペット
ちょっとした便利なコードはコードスニペットとして保存、呼び出せます。Webカメラを扱うコードであったり、JavaScriptを内部で実行するなどといったコードがサンプルとして登録されています。環境の初期設定なども登録しておくと便利でしょう。

ファイルエクスプローラー
ノートブックからCSVファイルを扱ったり、生成したグラフを画像として保存したりするのに使えるのがファイルエクスプローラーです。ここにあるファイルはノートブックを切断(インスタンスを落とす)と消えてしまうので注意してください。ファイルはダウンロード、アップロードなどの操作が可能です。
ファイルアップロード
ノートブックの中でインタラクティブにファイルをアップロードしたいならば次のコードを実行します。
from google.colab import files files.upload()
そうするとファイルダイアログが表示されて、指定したファイルをアップロードできます。

これはファイルエクスプローラーがなかった頃によく使われていましたが、今はファイルエクスプローラーでアップロードを行う方が多いようです。
ファイルビューワー
ファイルエクスプローラーに登録されている画像やMarkdown、CSVファイルをダブルクリックすると、右側のビューワーで表示できます。内容を確認するのに便利です。

JSONなどはハイライトして表示されます。

Jupyter Notebookとしてダウンロード
作成したノートブックはJupter Notebookファイルとしてダウンロードできます。たとえばVisual Studio Codeでビューワー機能拡張をインストールしていれば、Google Colab同様に表示できます。

Pythonファイルとしてダウンロード
Pythonファイルとしてダウンロードした場合は、ドキュメント部分はコメントとして埋め込まれています。コードはそのまま実行できる形です。

GPUの設定
ランタイムメニューでランタイムのタイプを変更を選ぶと、実行するランタイムを変更できます。デフォルトはCPUです。GPUやTPUが選択できます。機械学習の学習などを行う際にはGPUを指定しましょう。

GPUが有効か確認する
GPUモードが有効になっているかどうかは、下記のコードを実行すれば分かります。文字が返ってくれば有効です。
import tensorflow tf tf.test.gpu_device_name()

スクラッチセル
ノートブックに書くまでもない、ちょっとしたコードを実行する際にはスクラッチセルが利用できます。右側でコードを実行して、その結果を確認できます。

コマンドパレット
Ctrl + Shift + P(macOSの場合はコマンド + Shift + P)でコマンドパレットが呼び出せます。AtomやVisual Studio Codeを使っている方には見慣れた機能でしょう。ここからGoogle Colabの機能をほとんど呼び出せます。

猫を表示させる
設定のその他の中にある猫モードを有効にすると、画面上部に猫が歩き回ります。ハロウィン近くに試したので、猫も仮装しています。

パワーレベル
設定のその他の中にあるパワーレベルを指定すると、タイピングする度に花火が上がったり、連続入力でコンボが上がっていきます。ちょっとテンションが上がる機能です。

コーギーモード
猫モードのほか、コーギーモードも用意されています。こちらはコーギー犬が歩き回ります。

差分
ノートブックの編集内容について、左右表示での差分表示ができます。

キーボードショートカット
あらかじめ多数のキーボードショートカットが用意されていますが、自分でカスタマイズ可能です。

Google Driveとの接続
from google.colab import drive drive.mount('/content/gdrive')
というコードでGoogle Driveをノートブックのファイルエクスプローラーにマウントできます。ファイルを恒久的に残しておいたり、Google Drive上のファイルを利用するのに使えます。OAuth認証になるので、自分のGoogle Drive以下しかみられません。

GitHub上のノートブックをインポートする
のようなURL形式でGitHub上のノートブックをGoogle Colabにインポートできます。

GitHubで表示できるSVGアイコンも配布されており、Open in ColabをクリックすればGoogle Colabで表示されるようになっています。

データを分かりやすく表示する
CSVを単純に表示すると次のようになります。

%load_ext google.colab.data_table
を実行しておくと、フィルタリングや並び替えの機能が追加されます。

共有する
共有リンクをクリックすると、ほかのユーザとノートブックを共有できるリンクが生成されます。

コマンドを実行する
Linuxコマンドを実行する場合は !
を頭に付けます。

ただし cd
のようなコマンドを打っても実行ディレクトリは変わりません。この場合、 %
を使います。

画像を表示する
ノートブックの中で画像を表示する場合には次のコードを利用します。
from IPython.display import Image as IPImage from IPython.display import display_png # display_jpg もあります display_png('画像ファイルのパス')

Webカメラを利用する
Webカメラはコードスニペットに登録されているコードで呼び出せます。映像をキャプチャすれば、リアルタイムな解析にも利用できます。

まとめ
いかがでしょうか。細かいTipsであればまだまだあるはずですが、基本的な使い方 +αとしては十分でしょう。ぜひGoogle Colabの使い方を覚えて、みなさんの学習を効率的にしてください。
]]>