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導入から最大限の価値を引き出す方法

ブログ    
ブログ    
ブログ    

推薦する

AIは旅行業界の困難を軽減できるか?

[[323317]]現時点では、多くの企業が、数か月前に考えていたよりも見通しが不透明であると感じ...

...

設計原則、テスト指標...顔アルゴリズムテストのハードコアスキルを体系的に整理

ビジュアル AI 分野の開発者にとって、適切なアルゴリズムを選択することはプロジェクトの戦いの半分を...

人工知能の次の段階として、なぜインターネットの巨人に期待すべきなのでしょうか?

過去10年間を振り返ると、人工知能の進歩は「目覚ましい」ものと言えます。特に2015年にAlphaG...

人工知能が実戦投入され、すでに一部は排除・解雇されている!

脳極体[[237444]]全世界を置き換えると叫んだ人工知能は、ついに失業という苦境に陥った。スウェ...

仮想通貨取引ロボットが手動取引に取って代わり、システム開発が進む

定量取引は高頻度取引の一種です。毎日無数の取引ペアが生成されます。手動で行う場合、多くの市場機会が不...

ガートナー:2021年までに70%の組織が従業員の生産性向上にAIを活用する

人工知能は職場にますます浸透しつつあり、現在では仮想パーソナルアシスタント (VPA) やその他の形...

Python+OpenCVを使用して顔追跡を実装するための50行のコード

こんにちは、親愛なる友人の皆さん、またお会いできて嬉しいです。私はただ興味本位でこのToutiaoア...

AI時代には、ナレッジグラフとナレッジマネジメントの二重の価値を活用する必要がある

[[402551]]ナレッジマネジメントは企業と個人の両方にとって非常に重要です。従来の知識管理は、...

Langchain、ChromaDB、GPT 3.5 に基づく検索強化型生成

翻訳者|朱 仙中レビュー | Chonglou概要:このブログでは、検索拡張生成と呼ばれるプロンプト...

...

機械学習にはどのような数学的基礎が必要ですか?

[[184240]]ここ数か月間、データサイエンスの世界にチャレンジして、機械学習の技術を使って統...

ものづくりを変える6つのAI活用法!

1. 欠陥検出のためのディープラーニング[[391865]]製造業では、生産ラインにおける欠陥検出...

AIが業界全体でビジネス成果をどのように変革しているか

昨年末以来、人工知能の発展の勢いは止められないようです。 GPT-4 のような並外れた認知能力を備え...