Google Colab をマスターするための 20 のヒント

Google Colab をマスターするための 20 のヒント

Google Colab は AI 開発者に無料の GPU を提供しており、Tensorflow や Pytorch などのディープラーニング フレームワークを簡単に実行できます。しかし、Colab の使用スキルについてどれだけご存知ですか?この記事では、効率を向上させるための Colab の使用に関する 20 のヒントを紹介します。

1. ノートブック

colab でアドホックなことを試すと、乱雑でタイトルのないノートブックが大量に作成されます。

この問題を解決するには、次のリンクをブックマークしてください: https://colab.research.google.com/notebooks/empty.ipynb

これにより、特別なスクラッチ ノートブックが開き、そのノートブックに加えた変更はホーム ディレクトリに保存されません。

2. ユニットタイミング

通常、コードの開始時間と終了時間の差を手動で計算して、かかる時間を測定します。 Colab には、これを実行するための組み込み機能が用意されています。セルを実行した後、セル実行アイコンの上にマウスを置くと、コード実行時間の見積もりが表示されます。

3. ユニットの一部を実行する

セルを選択し、[実行時間] タブの [選択範囲を実行] ボタンをクリックするか、キーボード ショートカット Ctrl+Shift+Enter を使用して、セルの一部を実行することもできます。

4. Jupyter Notebookのショートカットキー

ショートカット キーはプログラミングに便利ですが、Jupyter Notebook のショートカット キーは Colab で直接使用することはできません。ただし、この問題を解決するための関係マッピング テーブルがあります。ご覧のとおり、Colab で Jupyter ショートカット キーを使用するには、その前に「Ctrl + M」を追加するだけです。このルールはほとんどのショートカット キーに適用されます。

ここでは、ショートカットが完全に変更されたか、同じままである特殊なケースをいくつか示します。

5. クラス定義へジャンプ

IDE と同様に、Ctrl キーを押してクラス名をクリックすると、クラス定義にジャンプできます。たとえば、ここでは、Ctrl キーを押しながら Dense クラス名をクリックして、Keras の Dense レイヤーのクラス定義を表示します。

6. GitHubでノートブックを開く

Google Colab チームは公式の Chrome 拡張機能を提供しています。 colab を使用すると、GitHub で直接ノートブックを開くことができます。

拡張機能のダウンロードアドレス: https://chrome.google.com/webstore/detail/open-in-colab/iogfkhleblhcpcekbiedikdehleodpjo

インストールしたら、GitHub ノートブックの colab アイコンをクリックして直接開きます。

または、GitHub ノートブックを手動で開き、github.com を colab.research.google.com/github に置き換えることもできます。

https://github.com/fastai/course-v3/blob/master/nbs/dl1/00_notebook_tutorial.ipynb

置き換える

https://colab.research.google.com/github/fastai/course-v3/blob/master/nbs/dl1/00_notebook_tutorial.ipynb

さらに簡単な方法は、github.com を githubtocolab.com に置き換えることです。

https://github.com/fastai/course-v3/blob/master/nbs/dl1/00_notebook_tutorial.ipynb

置き換える

https://githubtocolab.com/fastai/course-v3/blob/master/nbs/dl1/00_notebook_tutorial.ipynb

7. ColabからFlaskアプリケーションを実行する

flask-ngrok ライブラリ (https://github.com/gstaff/flask-ngrok) を使用すると、colab で実行されている Flask Web アプリケーションをデモ プロトタイプに簡単に変換できます。

まず、flask と flask-ngrok をインストールする必要があります。

  1. !pip で flask をインストール - ngrok flask== 0.12.2

次に、Flask アプリ オブジェクトを run_with_ngrok 関数に渡すだけで、サーバーの起動時に ngrok エンドポイントが公開されます。

  1. FlaskからFlaskをインポートflask_ngrokからrun_with_ngrokをインポート
  2. アプリ = Flask(__name__) run_with_ngrok(アプリ)
  3. @app .route( '/' )def hello(): __name__ == '__main__'の場合'Hello World!'を返します: app.run()

8. Tensorflowのバージョンを切り替える

Tensorflow 1 と Tensorflow 2 を簡単に切り替えることができます。

Tensorflow 1.15.2 に切り替えるには、次のコマンドを使用します。

  1. %テンソルフローバージョン1.x

Tensorflow 2.2 に切り替えるには、次のコマンドを実行します。

  1. %テンソルフローバージョン2.x

これを有効にするには再起動する必要があります。パフォーマンス上の理由から、Colab では、pip コマンドを使用してインストールするのではなく、プリインストールされたバージョンの Tensorflow を使用することを推奨しています。

9. テンソルボードの統合

Colab は、ノートブックから直接 Tensorboard を使用するコマンドも提供します。 --logdir を使用してログ ディレクトリの場所を設定するだけです。

公式ノートブックから使用方法を学習できます: https://colab.research.google.com/github/tensorflow/tensorboard/blob/master/docs/tensorboard_in_notebooks.ipynb。

  1. %load_ext tensorboard% tensorboard --logdir ログ

10. リソース制限を確認する

Colab は、無料版とプロ版で次の仕様を提供しています。状況に応じて、より優れたランタイム、GPU、メモリが必要な場合は、月額 10 ドルでプロ バージョンに切り替えることができます。

次のコマンドを実行すると、割り当てられている GPU を表示できます。

  1. !nvidia-smi

CPU に関する情報を取得するには、次のコマンドを実行します。

  1. !cat /proc/cpuinfo

さらに、次のコマンドを実行してRAM容量を確認できます。

  1. psutil ram_gbをインポートします。 = psutil.virtual_memory().total / 1e9 print(ram_gb)

11. 対話型シェルの使用

Colab には組み込みのインタラクティブ ターミナルはありません。ただし、bash コマンドを使用してシェル コマンドを対話的に試すことができます。このコマンドを実行するだけで、対話型入力が得られます。

  1. !バッシュ

これで、指定された入力ボックスで任意のシェル コマンドを実行できます。

シェルを終了するには、入力ボックスに exit と入力するだけです。

12. 現在のメモリとストレージの使用状況

Colab は RAM とディスクの使用状況を示すインジケーターを提供します。インジケーターの上にマウスを置くと、現在のメモリとストレージの使用状況と合計容量を示すウィンドウがポップアップ表示されます。

13. 「Colabで開く」ロゴ

次のマークダウン コードを使用して、README.md または Jupyter ノートブックに「Colab で開く」サインを追加できます。

このコードでは、SVG イメージを読み込み、それを Colab ノートブックにリンクしています。

  1. [![Colab で開く](https: //colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/notebooks/basic_features_overview.ipynb)

14. パンダインタラクティブテーブル

Colab は、pandas データフレームにインタラクティブな並べ替えとフィルタリング機能を追加するためのノートブック拡張機能を提供します。これを使用するには、次のコードを実行します。

  1. %load_ext google.colab.data_table

以下の拡張機能をロードすると、通常の pandas データフレームとインタラクティブなデータフレームが表示されます。

15. Conda環境をセットアップする

Python 環境マネージャーとして miniconda を使用する場合は、ノートブックの上部で次のコマンドを実行して、colab に設定できます。

  1. # Miniconda インストール スクリプトをダウンロードします!wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh# 実行可能にします!chmod +x Miniconda3-latest-Linux-x86_64.sh# サイレント モードでインストールを開始します!bash ./Miniconda3-latest-Linux-x86_64.sh -b -f -p /usr/local# 現在の環境で conda パッケージを使用できるようにしますimport syssys.path.append('/usr/local/lib/python3.7/site-packages/')

セルを実行した後は、通常どおり conda を使用してパッケージをインストールできます。

  1. !conda インストール -y フラスコ

16. コマンドラインから Colab ノートブックを管理する

colab-cli というライブラリを使用すると、簡単に colab ノートブックを作成し、ローカル ノートブックと同期できます: https://github.com/Akshay090/colab-cli

17. バックグラウンドタスクを実行する

場合によっては、通常のプログラムを実行する前に、Web サーバーまたはバックグラウンド タスクを起動する必要があります。

バックグラウンド タスクを実行するには、「nohup」コマンドの後に通常のシェル コマンドを続け、最後に「&」を追加してバックグラウンドで実行します。これにより、バックグラウンド タスクによって終了されることなく、後続のノートブックでセルを実行できるようになります。

  1. !nohup bash ping.sh &

18. 研修完了の通知

時間のかかるタスク (モデルのトレーニングなど) を実行している場合は、タスクが完了したらデスクトップ通知を送信するように Colab を設定できます。

この機能を有効にするには、「ツール」⮕「設定」⮕「サイト」に移動し、「デスクトップ通知を表示する」チェックボックスをオンにします。

ブラウザ通知を有効にするためのポップアップ ウィンドウが表示されます。承認するだけで、別のタブ、ウィンドウ、またはアプリケーションにいる場合でも、タスクが完了すると colab から通知されます。

19. JavaScriptコードを実行する

%%javascript コマンドを使用して JavaScript コードを実行します。

20. ColabでVSCodeを実行する

Colab で完全な VSCode を実行できます。ドキュメントを参照してください: https://amitness.com/vscode-on-colab/。

<<:  機械学習プロジェクトを管理および組織化する方法

>>:  AI導入から最大限の価値を引き出す方法

ブログ    
ブログ    

推薦する

「初の顔認証事件」の最終判決がこちら

[[392244]] 4月9日午後3時、「初の顔認識事件」は杭州市中級人民法院で二審判決を受けた。こ...

Java と Python のアルゴリズムとデータ構造に関する面接の質問

Uber や Netflix などの企業でプログラミング、コーディング、ソフトウェア開発の職に応募す...

ハーバード大学の研究者がAIを活用して世界中の密猟を阻止

ハーバード大学ジョン・A・ポールソン工学応用科学大学院のリリー・シューさんは、幼いころから環境と保護...

機械学習は「原子幾何学」の秘密を明らかにし、数学の発展を促進した

代数多様体とその方程式。代数幾何学は、一方では方程式の研究である代数学、他方では図形の研究である幾何...

次世代交通におけるAI世代の影響

次世代の交通手段は、電子機器、持続可能性、経験を設計の中核としており、Gen AI は、想定される次...

「新しいインフラ」に求められるAI人材のギャップをどう埋めるか

「新インフラ」がホットワードとなり、その重要な構成要素として人工知能に大きな期待が寄せられている。 ...

IoT 革命の基盤を築く: 手遅れになる前に企業がデータ戦略を完成させる方法

モノのインターネットは急速に「あらゆるもののインターネット」になりつつあります。ガートナーは、202...

メディア業界の自動化をリードする10のAI分野

データ爆発の時代では、データの収集だけでは不十分です。ビジネスを運営し、成長させるための洞察を得るに...

2018 年のビッグデータ、機械学習、人工知能の予測!

AI へのビッグデータ投資は減速の兆しを見せていません。今後 1 年間の予測をいくつかご紹介します...

...

...

PHP+MySQL アプリケーションで XOR 暗号化アルゴリズムを使用する

この記事では、排他的論理和 (XOR) 演算を使用したシンプルで使いやすい暗号化/復号化アルゴリズム...

機械学習のテストセットをスケールアップする方法

[[387235]]テスト セットのヒル クライミングは、トレーニング セットに影響を与えたり、予測...

孫正義氏:今後 30 年の人工知能と IoT(詳細記事)

[[264296]]これは非常に興味深いスピーチです。これはMWCでソフトバンクの孫正義氏が行った...

53ページのPDFが広く出回り、中核社員が次々と退職。OpenAIにはどんな秘密があるのか​​?

「OpenAIが2027年にAGIを実現する」という53ページのPDFがインターネット上で広く流通...