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

スイープを初期化する

Weights & Biasesは、Sweep Controller を使用して、クラウド(標準)、ローカル(local)の1台以上のマシンでスイープを管理します。1つのrunが完了すると、スイープコントローラは、実行する新しいrunを説明する新しい指示セットを発行します。これらの指示は、実際にrunを実行するagentsによって受け取られます。典型的なW&Bスイープでは、コントローラはWeights & Biasesサーバに存在します。エージェントはあなたのマシンに存在します。

以下のコードスニペットでは、CLIおよびJupyterノートブックやPythonスクリプト内でスイープを初期化する方法を示しています。

注意
  1. スイープを初期化する前に、スイープ構成がYAMLファイルまたはスクリプト内のネストされたPythonディクショナリオブジェクトで定義されていることを確認してください。詳細については、スイープ構成の定義を参照してください。
  2. W&BスイープとW&B Runは同じプロジェクト内にある必要があります。つまり、Weights & Biasesを初期化する際に提供する名前(wandb.init)は、W&Bスイープを初期化する際に提供するプロジェクトの名前(wandb.sweep)と一致する必要があります。

Weights & Biases SDKを使用してスイープを初期化します。sweepパラメータにスイープ構成辞書を渡します。必要に応じて、W&B Runの出力が格納されるプロジェクトの名前を、プロジェクトパラメータ(project)に指定します。プロジェクトが指定されていない場合、runは"未分類"プロジェクトに格納されます。

import wandb

# 例: スイープ構成
sweep_configuration = {
"method": "random",
"name": "sweep",
"metric": {"goal": "maximize", "name": "val_acc"},
"parameters": {
"batch_size": {"values": [16, 32, 64]},
"epochs": {"values": [5, 10, 15]},
"lr": {"max": 0.1, "min": 0.0001},
},
}

sweep_id = wandb.sweep(sweep=sweep_configuration, project="project-name")

wandb.sweep関数は、スイープIDを返します。スイープIDには、エンティティ名とプロジェクト名が含まれます。スイープIDをメモしておいてください。

Was this page helpful?👍👎