本記事では、Google Colaboratory(略称: Google Colab)の基本的な使い方を網羅的にまとめています。
- Google Colabのメリットとデメリット
- Google Colab有料と無料の違い
- Google Colabの基本的な使い方
- Google Colabでの開発効率を向上させるTips
Google Colaboratoryとは
Google Colaboratory(略称:Google Colab)とは、教育機関や研究機関において機械学習の普及を目的としたGoogleサービスの一つです。
Google Colabは、Jupyter Notebookを必要最低限の労力とコストで活用できます。
また、Googleアカウントを持っていれば、ブラウザとインターネットを利用しプロジェクトを開始できます。
基本的に、プログラミング言語Pythonをメインに利用者が増加しています。
Google Colaboratoryのメリット
Google Colabのメリットは以下の5つです。
- 実行環境の構築がほぼ不要
- インタラクティブで実行結果が素早く反映される
- 基本無料でGPUが使用できる
- コメント/メモが残せる
- ノートブック共有が可能
Google Colabは、Jupyter Notebook(ジュピター・ノートブック)をクラウド上で動作させ、PythonやライブラリであるNumpyなど、機械学習で必要なほぼ全ての環境が構築されています。
また、今までPCのみの実行環境しか持てなかった人にとって、Google Colabを利用しスマホやタブレットによる操作で実行環境を可能にします。
さらに、機械学習では大規模で膨大なデータ量を利用して高負荷のかかる計算・処理を実行する必要がありますが、Google ColabのGPUを利用することで時間短縮を実現します。
しかも、無料で利用できるのはとても魅力的です。
Notebookで実現できる様々な機能も豊富なため、様々な利用方法が存在します。
Google Colaboratoryの主な利用用途
環境構築が容易なことから、以下の利用用途で活用されています。
- 学生における科目「情報」での学習環境
- データサイエンス分野での活用
- AIリサーチや機械学習分野での活用
特に、Google Driveにてファイル共有やデータベース利用も可能であるため、様々な用途に利用拡大できます。
Google Colaboratoryのデメリット
Google Colabのデメリットは以下の2つです。
- Webアプリ化といった開発に不向き
- 定期実行に不向き
定期実行するためのサーバーとして利用するものではないため、やはりアプリ開発やスクリプトファイルの定期実行に向いていません。
Google Colaboratoryの料金体系
基本的に、無料で利用できるGoogle Colabですが、有料版もリリースされています。
以下の2つ(従量課金制を除く)が有料版になります。
- Colab Pro
- Colab Pro+
Google Colab Pro+の特徴
Colab ProとColab Pro+の主な特徴は以下になります。
- GPUが高性能
- メモリが各有料版によって増量
- 長時間使用可能
- バックグラウンド実行
特徴を分かりやすく表にまとめています。
無料版 | Colab Pro | Colab Pro+ | |
---|---|---|---|
料金 | 無料 | 1,000円程度/月 | 5,000円程度/月 |
GPU | 自動割り当て | 高性能GPU割り当て | 高性能GPU割り当て |
メモリ | 通常使用程度は問題なし | 大量データ使用可能 | 大量データ使用可能 |
使用時間 | 12時間 | 24時間 | 24時間 |
バックグラウンド実行 |
Google Colaboratoryの使い方
ここでは、Google Colabの基本的な使い方を解説します。
以下、3つのポイントを押さえておきましょう。
- ノートブックの作成方法
- Pythonコードの実行方法(コードセル)
- コメント/メモの記述方法(テキストセル)
ノートブックの作成方法
ここでは、Google Colabにおけるノートブックの作成方法を解説します。
お持ちのGoogleアカウントにログイン後、公式サイトにアクセスします。
アクセスすると、以下の画面が表示されます。
現在表示されている画面はGoogle Colabのチュートリアル画面になります。
上部左側にある「ファイル」から「ドライブの新しいノートブック」をクリックすると、新規ノートブックが作成されます。
ノートブック名を以下のように変更できます。
ノートブックの名前は任意で構いません。
作成したファイルは「My Drive」の「Colab Notebooks」フォルダから確認できます。
Google Drive経由でのGoogle Colabのインストール方法
Google Drive経由でGoogle Colabを利用することもできます。
ただし、まだGoogle Colabを使用した履歴がないとGoogle Drive内でアプリ追加されていない状態になります。(一度使用した場合は自動でインストールされます。)
そのため、Google Drive内で右クリックし、以下のように「その他」から「アプリ追加」を選択します。
アプリ検索画面がポップアップで表示されるため、「Colaboratory」と検索します。
Colaboratoryのアプリをクリックすると、インストール画面に遷移します。
インストールを開始するためには、権限による実行が必要になります。
連携したいアカウントを選択し、続行するとインストールを開始しますので待機すれば完了します。
完了すると、Google Drive内で「Google Colaboratory」アプリを選択可能になります。
Pythonコードの実行方法(コードセル)
次に、Pythonコードによる実行方法について解説します。
ノートブックには「コードセル」と呼ばれる記述箇所があります。
ここでは、「Hello World」といった文字列の出力例を紹介します。
出力例のように、インタラクティブ(対話形式)なコーディングができます。
また、実行時はShift + Enterキーでショートカットできます。
コードセルには、いくつかオプションがあり「削除」や「リンク」など選択できます。
コードスニペット機能
コードスニペット機能について解説します。
コードスニペットとは、再利用可能なソースコードをまとめた機能になります。
Google Colabでは標準機能としてコードスニペットがあるため、ニーズが高いと思われるコードが多数存在します。
コードスニペット機能によってノートブックのコード入力を省略することができて便利です。
コメント/メモの記述方法(テキストセル)
次に、コメント/メモ書きが記述できるテキストセルを解説します。
テキストセルは、主にノートブックに説明や見出しなどを記述する際に使います。
また、テキストセルを使って目次に表示可能です。
- #(シャープ) : 見出し
- -(ハイフン) : 箇条書き
Google Colaboratoryにおけるファイルの扱い方
Google Colabにおけるファイルの主な扱い方として、以下の2つを解説します。
- Google Colabによるファイルのアップロード
- Google Colabによるファイルのダウンロード
Google Colabによるファイルのアップロード
Google Colabの左側にある「ファイルアイコン」を選択します。
選択後、ディレクトリ表示されたスペース内で右クリックし、「アップロード」をクリックします。
ローカルPCからファイルをアップロードすれば追加できます。
Google Colabによるファイルのダウンロード
次に、ファイルのダウンロード方法について解説します。
上部左側にある「ファイル」から下部に存在する「ダウンロード」にカーソルを合わせます。
カーソルを合わせると、ダウンロードファイルの選択が可能です。
- .ipynb
- .py
Google ColaboratoryのTips
ここでは、Google Colaboratory(グーグルコラボ)の使い方に関するTipsをいくつかご紹介します。
- ライブラリのインストール方法
- 作業効率を高めるコーディング方法
- GPUの利用方法
- 実行環境の接続が切れた場合の対処法
- ノートブックの共有方法
上記を知っておくと、Google Colaboratoryを便利に活用できます。
ライブラリのインストール方法
ローカルPC上で初期構築する場合は、Pythonのインストールやプログラムに活用したいPythonライブラリを1からインストールしなければなりません。
Google Colabでは、機械学習やAIに関するライブラリが事前に用意されているのが特徴の一つです。
- numpy
- matplotlib
- pandas
- seaborn
- tensorflow
計算処理やデータ解析、AIプログラムに重宝されるライブラリが実装されています。
しかし、他に追加したいライブラリがあった場合でも、Google Colabでは簡単にインストールできます。
一例として、ブラウザ自動化などで利用される『Selenium』をインストールしてみます。
以下のコードを実行することで、ライブラリをインストールできます。
pip install selenium
実際にライブラリが追加されたか確認するために以下のコードを実行します。
!pip freeze
実際にライブラリが追加されていることが分かります。
作業効率を高めるコーディング方法
Google Colabでは、作業を効率化するコーディングとして以下の2つの機能があります。
- 補完機能
- 引数
これらを活用することで、コーディング時の作業効率化を実現します。
補完機能の例として、i
を入力してみます。
上記の画像のように、i
に続く文字列候補が表示されます。
コードの記述方式に迷うことが少なくなるメリットがあります。
次に、引数について確認してみます。
例として、ライブラリであるpandas
をインポートし、pandas
のメソッドであるDataFrame()
を入力します。
上記のように、カーソルを合わせるとメソッドに利用できる引数(パラメータ)を確認できます。
引数の順番や利用できる引数が確認できるので、非常に便利な機能です。
GPUの利用方法
Google Colabは教育/研究プロジェクトの一環として開発されたサービスであるため、機械学習やディープラーニングにも活用できます。
そして、膨大なデータを扱う場合に大量データ処理を得意とするGPUを利用できます。
Google Colabでは、GPUを無料で活用できるのが特徴です。
上記のタブにある『ランタイム』を選択し、『ランタイムのタイプを変更』をクリックします。
ポップアップ画面として表示される『ハードウェア アクセラレータ』の選択から『GPU』を選択します。
ランタイム接続を解除するか問われるので、問題なければ「OK」します。
最後に、保存すれば変更完了です。
実行環境の接続が切れた場合の対処法
Google Colabの利用中、時間が経過すると実行した処理がリセットされたり、アップロードファイルが削除されることがあります。
実行内容が初期化されてしまうことを「ランタイムリセット」と言います。
ランタイムリセットは、以下の2種類に分けられます。
- 90分ルール:ノートブック操作から90分経過(無料版)
- 12時間ルール:ノートブック立ち上げから12時間経過
定期的にGoogle Colabのノートブックを動かすことで、セッション切れを防ぐことができます。
ランタイムが切れてしまった場合、1つ1つのセルを実行し直せますが、コード量が多い場合は非常に手間がかかります。
「ランタイム」→「セッションを再起動してすべて実行する」によって一括でセルを実行できます。
ノートブックの共有方法
Google Colabは、作成した〇〇.ipynb(ノートブック)を共有することができます。
作成したプログラムの共有や他者からのコードレビューを受けることができ、Google Colab内でペアプロや共同作業が実現できます。
ノートブックを開いている画面右上部に『共有』をクリックします。
クリック後、ポップアップ画面にて『ユーザーやグループと共有』と『リンクを取得』が表示されます。
個別ユーザーやグループ単位などで追加したい場合は、『ユーザーやグループと共有』で招待したいメールアドレスを入力して『完了』をクリックします。
閲覧権限などで制限を持たせず共有したい場合は、『リンクを取得』の右横にある『リンクをコピー』をクリックし、共有相手にリンクを渡せばノートブックを共有できます。
ローカルPCにおけるPythonの実行環境構築
現在、様々な状況下でプログラミングの実行環境を構築できます。
しかし、多くの方法があるがゆえに環境構築方法がわからなくなる人も少なくありません。
- Pythonの金額や価格は?(無料?)
- Pythonのダウンロード方法がわからない
- Pythonのインストール方法がわからない
- インストール時の適切な設定がわからない
- Python実行環境を構築したい
ローカルPCにてPythonの実行環境構築を実現したい人は、「【Python】ダウンロードとインストール方法から環境構築まで解説!」を一読ください。
ブラウザ上の実行環境を実現するJupyter Lab
Jupyter Lab(ジュピターラボ)とは、ブラウザ上で動作するプログラム対話形式型のPython実行環境です。
Jupyter Labを活用するメリットは、以下の項目です。
- ローカルサーバーによる実行環境
- データ分析の可視化がインタラクティブ(対話型)
- Jupyter Notebookより多機能
やはり、実行結果を逐次確認できるツールは、エンジニア/プログラマーにとって重宝されます。
また、Jupyter Labはオープンソースであるため、無料で利用できます。
グラフィカルな操作画面でPython実行環境を実現したい人は「【Python】Jupyter Labとは?インストールや使い方など開発環境構築まで解説!」で解説します。
コメント