Colab(正式名称「Colaboratory」)では、ブラウザ上で Python を記述、実行できます。以下の機能を使用できます。
Colab は、学生からデータ サイエンティスト、AI リサーチャーまで、皆さんの作業を効率化します。詳しくは、Colab の紹介動画をご覧ください。下のリンクからすぐに使ってみることもできます。
ご覧になっているこのドキュメントは静的なウェブページではなく、Colab ノートブックという、コードを記述して実行できるインタラクティブな環境です。
たとえば次のコードセルには、値を計算して変数に保存し、結果を出力する短い Python スクリプトが記述されています。
seconds_in_a_day = 24 * 60 * 60
seconds_in_a_day
86400
上記のセルのコードを実行するには、セルをクリックして選択し、コードの左側にある実行ボタンをクリックするか、キーボード ショートカット「command+return」または「Ctrl+Enter」を使用します。コードはセルをクリックしてそのまま編集できます。
1 つのセルで定義した変数は、後で他のセルで使用できます。
seconds_in_a_week = 7 * seconds_in_a_day
seconds_in_a_week
604800
Colab ノートブックを使用すると、実行可能コードとリッチテキスト(画像、HTML、LaTeX なども可)を 1 つのドキュメントで記述できます。ご自分の Colab ノートブックを作成すると、Google ドライブ アカウントに保存されます。Colab ノートブックは、同僚や友人と簡単に共有し、コメントの記入や編集をしてもらうことができます。詳細については Colab の概要をご覧ください。新しい Colab ノートブックを作成するには、上にある [ファイル] メニューを使用するか、こちらをクリックします。
Colab ノートブックは、Colab がホストする Jupyter ノートブックです。Jupyter プロジェクトの詳細については、jupyter.org をご覧ください。
Colab では、よく使用されている Python ライブラリの機能をフルに活用して、データの分析と可視化を行えます。以下のコードセルでは、numpy を使用してランダムデータを生成し、matplotlib を使用して可視化しています。コードはセルをクリックしてそのまま編集できます。
import numpy as np
import IPython.display as display
from matplotlib import pyplot as plt
import io
import base64
ys = 200 + np.random.randn(100)
x = [x for x in range(len(ys))]
fig = plt.figure(figsize=(4, 3), facecolor='w')
plt.plot(x, ys, '-')
plt.fill_between(x, ys, 195, where=(ys > 195), facecolor='g', alpha=0.6)
plt.title("Sample Visualization", fontsize=10)
data = io.BytesIO()
plt.savefig(data)
image = F"data:image/png;base64,{base64.b64encode(data.getvalue()).decode()}"
alt = "Sample Visualization"
display.display(display.Markdown(F"""![{alt}]({image})"""))
plt.close(fig)
Colab ノートブックには、Google ドライブ アカウント(スプレッドシートを含む)からご自分のデータをインポートできます。また、GitHub やその他多くのソースからのインポートも可能です。データのインポートについて、またデータ サイエンスで Colab を使用する方法の詳細については、データの操作の下にあるリンクをクリックしてください。
Colab は、次に示す用途を含め、機械学習コミュニティで広く使用されています。
Colab ノートブックを機械学習に応用したサンプルについては、以下の機械学習の例をご覧ください。
Google の機械学習に関するオンライン コースからいくつかのノートブックをご紹介します。詳しくは、全コースのウェブサイトをご覧ください。
NeMo Voice Swap: Nvidia の NeMo 会話 AI ツールキットを使用して、オーディオ フラグメント内の音声をコンピュータ生成の音声と入れ替えます。
画像分類の再トレーニング: 事前トレーニング済みの画像分類を再利用して Keras モデルを構築し、花を分類します。
テキスト分類: IMDB の映画レビューをポジティブなレビューとネガティブなレビューに分類します。
スタイル転送: ディープ ラーニングを使用して画像間でスタイルを転送します。
Multilingual Universal Sentence Encoder の Q&A: 機械学習モデルを使用して、SQuAD データベースからの質問に回答します。
動画の補間: 動画の最初のフレームと最後のフレームの間に何か起こったのかを予測します。