> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coreweave.com/llms.txt
> Use this file to discover all available pages before exploring further.

> 既存の W&B プロジェクトから sweep ジョブを作成する方法を説明するチュートリアルです。

# チュートリアル: project から sweep ジョブを作成する

このチュートリアルでは、既存の W\&B プロジェクトから sweep ジョブを作成する方法を説明します。ベースラインとなる project の作成、ハイパーパラメーター sweep の設定、トレーニング ジョブを並列で実行するエージェントの起動までを順に説明します。

[Fashion MNIST データセット](https://github.com/zalandoresearch/fashion-mnist)を使用して、画像を分類する PyTorch の畳み込みニューラルネットワークをトレーニングします。必要なコードとデータセットは [W\&B examples リポジトリ (PyTorch CNN Fashion)](https://github.com/wandb/examples/tree/master/examples/pytorch/pytorch-cnn-fashion) に用意されています。

結果は [W\&B ダッシュボード](https://app.wandb.ai/carey/pytorch-cnn-fashion) で確認できます。

<h2 id="create-a-project">
  project を作成する
</h2>

まず、サンプルモデルを少なくとも 1 回トレーニングして、ベースラインとなる project を作成します。このベースラインは、後のステップで sweep を設定する際の基準になります。W\&B examples GitHub リポジトリから PyTorch MNIST データセットのサンプルモデルをダウンロードし、モデルをトレーニングします。トレーニングスクリプトは `examples/pytorch/pytorch-cnn-fashion` ディレクトリにあります。

サンプルモデルをダウンロードしてトレーニングするには、次の手順を実行します。

1. リポジトリをクローンします。

   ```bash theme={"system"}
   git clone https://github.com/wandb/examples.git
   ```

2. サンプルのディレクトリに移動します。

   ```bash theme={"system"}
   cd examples/pytorch/pytorch-cnn-fashion
   ```

3. トレーニングスクリプトを手動で実行します。

   ```bash theme={"system"}
   python train.py
   ```

4. オプション: W\&B アプリのダッシュボードでサンプルを確認します。[サンプルの project ページを表示する](https://app.wandb.ai/carey/pytorch-cnn-fashion)

この最初の run が完了すると、sweep のベースとなる project が W\&B に作成されます。

<h2 id="create-a-sweep">
  sweep を作成する
</h2>

ベースラインとなる project を用意したら、その run を対象とした sweep を設定できます。project ページで、プロジェクトのサイドバーにある [**Sweep** タブ](/ja/products/wandb/sweeps/visualize-sweep-results)を開き、**Create Sweep** を選択します。

<Frame>
  <img src="https://mintcdn.com/coreweave-dbfa0e8d/3Dv_sw2eg8feUJlx/products/wandb/_media/sweep1.png?fit=max&auto=format&n=3Dv_sw2eg8feUJlx&q=85&s=5331c08eed0892a817fa1fb151ce71dc" alt="Sweep タブが開かれ、Create Sweep ボタンが強調表示された W&B プロジェクトのページ" width="1490" height="534" data-path="products/wandb/_media/sweep1.png" />
</Frame>

自動生成された設定には、完了済みの run に基づいて、sweep で探索する値の候補が提示されます。設定を編集し、試したいハイパーパラメーターの範囲を指定してください。sweep を開始すると、W\&B がホストする sweep サーバー上で新しいプロセスが起動します。この一元管理されたサービスが、エージェント (トレーニング ジョブを実行するマシン) を統括します。

<Frame>
  <img src="https://mintcdn.com/coreweave-dbfa0e8d/3Dv_sw2eg8feUJlx/products/wandb/_media/sweep2.png?fit=max&auto=format&n=3Dv_sw2eg8feUJlx&q=85&s=a82803c5461744be5b9b5f5d69374812" alt="ハイパーパラメーターの範囲が表示された、自動生成された sweep 設定エディター" width="2308" height="1768" data-path="products/wandb/_media/sweep2.png" />
</Frame>

<h2 id="launch-agents">
  エージェントを起動する
</h2>

sweep を設定したら、1 つ以上のエージェントを起動して run を実行します。複数のマシンで最大 20 個のエージェントを並列に起動すると、sweep ジョブをより短時間で完了できます。各エージェントは、次に使用するパラメーターのセットを出力します。

<Frame>
  <img src="https://mintcdn.com/coreweave-dbfa0e8d/3Dv_sw2eg8feUJlx/products/wandb/_media/sweep3.png?fit=max&auto=format&n=3Dv_sw2eg8feUJlx&q=85&s=ebd0448db42b5696d49cb446ec91836b" alt="次のハイパーパラメーターのセットを出力している sweep エージェントのターミナル出力" width="2082" height="1046" data-path="products/wandb/_media/sweep3.png" />
</Frame>

これで sweep が実行中になりました。sweep は各エージェントのトレーニング ジョブを調整し、結果を W\&B に報告します。次の画像は、サンプルの sweep ジョブが実行されている様子をダッシュボードで示したものです。

<Frame>
  <img src="https://mintcdn.com/coreweave-dbfa0e8d/3Dv_sw2eg8feUJlx/products/wandb/_media/sweep4.png?fit=max&auto=format&n=3Dv_sw2eg8feUJlx&q=85&s=f8a0b3d3d0d365f7b76ef422e3febde3" alt="並列実行されている複数のトレーニング run のメトリクスをプロットしている sweep ダッシュボード" width="3250" height="1412" data-path="products/wandb/_media/sweep4.png" />
</Frame>

<h2 id="seed-a-new-sweep-with-existing-runs">
  既存の run を使って新しい sweep をシードする
</h2>

以前の結果を出発点として再利用するには、過去にログした既存の run を使って新しい sweep を開始します。

1. project の表を開きます。
2. run の行のチェックボックスをクリックして、run を選択します。
3. ドロップダウンを選択して、新しい sweep を作成します。

これで、sweep がサーバー上に設定されました。1 つ以上のエージェントを起動して、run を開始してください。

<Frame>
  <img src="https://mintcdn.com/coreweave-dbfa0e8d/3Dv_sw2eg8feUJlx/products/wandb/_media/tutorial_sweep_runs.png?fit=max&auto=format&n=3Dv_sw2eg8feUJlx&q=85&s=a0ed3b93911fba29d3b93611187071a1" alt="行が選択され、ドロップダウンに sweep の作成オプションが表示されている project の run テーブル" width="1696" height="996" data-path="products/wandb/_media/tutorial_sweep_runs.png" />
</Frame>

<Note>
  新しい sweep をベイズ sweep として開始した場合、選択した run はガウス過程のシードにも使用されます。
</Note>
