メインコンテンツまでスキップ

Runs

W&Bによって記録される計算の単一単位はrunと呼ばれます。W&Bのrunをプロジェクト全体の原子的な要素と考えることができます。以下の場合に新しいrunを開始する必要があります:

例えば、sweepの間、W&Bは指定されたハイパーパラメーター検索空間を探索します。sweepによって生成された各新しいハイパーパラメーターの組み合わせは、ユニークなrunとして実装および記録されます。

ヒント

runを作成および管理する際に考慮すべき重要なポイント:

  • wandb.logでログを記録したものはすべてそのrunに記録されます。W&Bでオブジェクトをログに記録する方法の詳細については、Log Media and Objectsを参照してください。
  • 各runは特定のW&Bプロジェクトに関連付けられています。
  • W&B App UIのプロジェクトワークスペース内でrunおよびそのプロパティを表示します。
  • 任意のプロセスでアクティブな wandb.Run は多くとも1つしかなく、wandb.runとしてアクセス可能です。

runを作成する

wandb.init()を使用してW&Bのrunを作成します:

import wandb

run = wandb.init()

新しいrunを作成する際には、プロジェクト名とW&Bエンティティを指定することをお勧めします。W&Bは指定されたエンティティ内に新しいプロジェクト(プロジェクトが既に存在しない場合)を作成します。プロジェクトが既に存在する場合、W&Bはそのプロジェクトにrunを保存します。

例えば、以下のコードスニペットは、wandbeeエンティティ内にスコープされたmodel_registry_exampleというプロジェクトに保存されるrunを初期化します:

import wandb

run = wandb.init(entity="wandbee", \
project="model_registry_example")

W&Bは作成されたrunの名前と、その特定のrunに関する詳細情報を得るためのURLパスを出力します。

例えば、上記のコードスニペットは次のような出力を生成します:

runをrun名とrun IDで整理する

デフォルトでは、新しいrunを初期化するとW&Bはランダムな名前とrun IDを生成します。

前述の例では、W&Bはlikely-lion-9というrun名とxlm66ixqというrun IDを生成します。likely-lion-9runはmodel_registry_exampleというプロジェクトに保存されます。

注記

W&Bによって生成されるrun名がユニークであることは保証されていません。

runを初期化する際に、idパラメータでユニークなrun ID識別子を、nameパラメータでrunの名前を指定することができます。例えば、

import wandb

run = wandb.init(
entity="<project>",
project="<project>",
name="<run-name>",
id="<run-id>"
)

run名とrun IDを使用して、W&B App UI内のプロジェクト内で実験をすばやく見つけることができます。特定のrunに関する詳細情報をURLで見つけることができます:

W&B App URL for a specific run
https://wandb.ai/entity/project-name/run-id

ここで:

  • entity: runを初期化したW&Bエンティティ。
  • project: runが保存されるプロジェクト。
  • run-id: runのrun ID。
ヒント

runを初期化する際にプロジェクト名を指定することをW&Bは推奨しています。プロジェクトが指定されていない場合、W&Bはrunを"Uncategorized"プロジェクトに保存します。

wandb.initのリファレンスドキュメントには、使用可能なパラメータの完全なリストが記載されています。

runを表示する

runが記録されたプロジェクト内で特定のrunを表示します:

  1. W&B App UIのhttps://wandb.ai/homeに移動します。
  2. runを初期化した際に指定したW&Bプロジェクトに移動します。
  3. プロジェクトのワークスペース内にRunsというラベルの付いたテーブルが表示されます。このテーブルにはプロジェクト内のすべてのrunがリストされています。表示したいrunをリストから選択します。 Example project workspace called &#39;sweep-demo&#39;
  4. 次に、Overview Tabアイコンを選択します。

次の画像はsparkling-glade-2と呼ばれるrunの情報を示しています:

W&amp;B Dashboard run overview tab

Overview Tabには、選択したrunに関する次の情報が表示されます:

  • Run name: runの名前。
  • Description: 提供されたrunの説明。このフィールドは、run作成時に説明が指定されていない場合は初期的に空白のままです。W&B App UIまたはプログラムでrunの説明を追加することができます。
  • Privacy: runのプライバシー設定。PrivateまたはPublicに設定できます。
    • Private: (デフォルト) あなただけが表示および貢献できます。
    • Public: 誰でも表示できます。
  • Tags: (リスト、オプション) 文字列のリスト。Tagsはrunを整理するのに役立ちます。また、一時的なラベル(例えば "baseline" や "production")を適用するのにも役立ちます。
  • Author: runを作成したW&Bユーザー名。
  • Run state: runの状態:
    • finished: スクリプトが終了し、データが完全に同期されたか、wandb.finish()が呼び出された
    • failed: スクリプトが非ゼロの終了ステータスで終了した
    • crashed: 内部プロセスでスクリプトが心拍を送信しなくなった、これが発生するのはマシンがクラッシュした場合
    • running: スクリプトがまだ実行中で最近の心拍を送信した
  • Start time: runが開始されたタイムスタンプ。
  • Duration: runがfinishfailcrashするまでにかかった時間(秒)。
  • Run path: 一意のrun識別子。形式はentity/project/run-ID
  • Host name: runが起動された場所。ローカルマシンでrunが起動された場合はマシン名が表示されます。
  • Operating system: runに使用されたオペレーティングシステム。
  • Python version: runに使用されたPythonバージョン。
  • Python executable: runを開始したコマンド。
  • System Hardware: runを作成するために使用されたハードウェア。
  • W&B CLI version: runコマンドをホストしたマシンにインストールされているW&B CLIバージョン。
  • Job Type:

概要セクションの下にはさらに以下の情報が表示されます:

  • Artifact Outputs: runによって生成されたArtifactの出力。
  • Config: wandb.configで保存された設定パラメータのリスト。
  • Summary: wandb.log()で保存されたサマリーパラメータのリスト。デフォルトでは、この値は最後にログに記録された値に設定されます。

プロジェクト内の複数のrunを整理する方法の詳細については、Runs Tableドキュメントを参照してください。

プロジェクトのワークスペースのライブ例については、この例のプロジェクトを参照してください。

runを終了する

W&Bは自動的にrunsを終了し、そのrunからW&Bプロジェクトにデータをログに記録します。run.finishコマンドを使用して手動でrunを終了できます。例えば:

import wandb

run = wandb.init()
run.finish()
備考

子プロセスからwandb.initを呼び出す場合、子プロセスの終了時にwandb.finishメソッドを使用することをW&Bは推奨しています。

Was this page helpful?👍👎