メインコンテンツへスキップ
run を グループ 単位で整理できます。グループとは、特定のモデル向けの学習 run や、特定のデータセット向けの評価 run など、共通の目的を持つ run の集合です。 また、ジョブタイプ などの他のプロパティで run を整理することもできます。ジョブタイプ は、preprocessingtrainingevaluation など、run が果たす役割を示します。

run をグループに整理する

run をグループに追加するには、W&B Python SDK を使ってプログラムで追加するか、W&B App から手動で追加できます。
W&B はグループ名を run の wandb.Run.group プロパティとして保存します。
W&B Python SDK を使って、1 つ以上の run をプログラムでグループに追加できます。wandb.init(group="") で run を初期化するときに、group パラメータの引数としてグループ名を渡します。グループ名を使って、W&B App 内で run を整理したり、フィルタリングしたりできます。次の例では、ABC という 3 つのグループを作成します。各グループには 3 つの run が含まれます。
import wandb

entity = "<entity>"
project = "<project>"

for group in ["A", "B", "C"]:
    for i in range(3):
        with wandb.init(entity=entity, project=project, group=group, name=f"{group}_run_{i}") as run:
            # 学習をシミュレートする
            for step in range(100):
                run.log({
                    "acc": 0.5 + (step / 100) * 0.3 + (i * 0.05),
                    "loss": 1.0 - (step / 100) * 0.5
                })
プロジェクトのワークスペースで、グループごとに整理された run を確認できます。次の画像は、run テーブルをグループ名で整理した様子を示しています。ABC という名前の 3 つのグループが run テーブルに表示され、それぞれ 3 つの run を含みます。
グループ名でグループ化された Runs テーブル

グループを表示

W&B App でグループごとに整理された run を表示します:
  1. プロジェクトのサイドバーで Runs タブを選択します。
  2. run 一覧の上にある Group ボタンをクリックします。
  3. ドロップダウンメニューから Group を選択します。

グループ間でrunを移動する

runをあるグループから別のグループに移動します。
  1. 対象のW&Bプロジェクトを開きます。
  2. プロジェクトのサイドバーから Runs タブを選択します。
  3. チェックボックスをクリックして、1つ以上のrunを選択します。
  4. テーブル上部の Move to group をクリックします。
  5. ドロワー内で、移動先のグループを選択するか、新しいグループを作成します。
  6. Move をクリックします。

グループから run を削除する

  1. 対象の W&B プロジェクトに移動します。
  2. プロジェクトのサイドバーから Runs タブを選択します。
  3. run の一覧の上にある Group ボタンをクリックします。
  4. ドロップダウンメニューで、削除したいグループ名の横にある X をクリックします。

グループを削除する

グループを削除するには、そのグループに含まれるすべての run を削除します。すると、グループは自動的に削除されます。

run をジョブタイプ別に整理する

run を ジョブタイプ 別に整理します。ジョブタイプは、preprocessingtrainingevaluation など、その run の役割を示します。
run の wandb.Run.job_type プロパティにアクセスして、run のジョブタイプを確認できます。
wandb.init(job_type="")job_type パラメータを渡すことで、run にジョブタイプを設定できます。たとえば、次のコードスニペットは、training または evaluation のいずれかのジョブタイプを持つ run を作成します。
import wandb

entity = "<entity>"
project = "<project>"

for job_type in ["training", "evaluation"]:
    for i in range(2):
        with wandb.init(entity=entity, project=project, job_type=job_type, name=f"{job_type}_run_{i}") as run:
            # 何らかの処理をシミュレートする
            for step in range(50):
                run.log({
                    "metric1": 0.2 + (step / 50) * 0.4 + (i * 0.03),
                    "metric2": 0.8 - (step / 50) * 0.3
                })

次の画像は、ジョブタイプごとに整理された run を示しています。
Ungrouped runs table

ジョブタイプ別に整理された run を表示する

W&B App でグループごとに整理された run を表示するには、次の手順に従います:
  1. プロジェクトのサイドバーで Runs タブを選択します。
  2. run の一覧の上にある Group ボタンをクリックします。
  3. ドロップダウンメニューから Job Type を選択します。