メインコンテンツへスキップ
W&B Python SDKを使用して、機械学習実験をトラックします。その後、インタラクティブなダッシュボードで結果を確認するか、データをPythonにエクスポートしてプログラムでアクセスできます(W&B Public APIを参照)。 このガイドでは、W&Bのビルディングブロックを使用してW&B Experimentを作成する方法を説明します。

W&B Experimentの作成方法

W&B Experimentを次の4つのステップで作成します:
  1. W&B Runを初期化
  2. ハイパーパラメータの辞書をキャプチャ
  3. トレーニングループ内でメトリクスをログ
  4. アーティファクトをW&Bにログ

W&B Runを初期化

wandb.init()を使用してW&B Runを作成します。 以下のスニペットは、“cat-classification”という名前のW&Bプロジェクトで、“My first experiment”という説明を持つrunを作成し、これを識別するのに役立てます。タグ“baseline”“paper1”は、このrunが将来的な論文の出版を意図したベースライン実験であることを思い出すために含まれています。
wandb.init()は、Runオブジェクトを返します。
注意: wandb.init()を呼び出したときにプロジェクトが既に存在している場合、Runは既存のプロジェクトに追加されます。例えば、既に“cat-classification”という名前のプロジェクトがある場合、そのプロジェクトは既存のままで削除されず、新しいrunがそのプロジェクトに追加されます。

ハイパーパラメータの辞書をキャプチャ

学習率やモデルタイプといったハイパーパラメータの辞書を保存します。設定でキャプチャしたモデル設定は、後で結果の整理やクエリに役立ちます。
実験を設定する方法の詳細については、Configure Experimentsを参照してください。

トレーニングループ内でメトリクスをログ

run.log()を呼び出して、精度や損失といった各トレーニングステップに関するメトリクスをログします。
W&Bでログできるさまざまなデータタイプの詳細については、Log Data During Experimentsを参照してください。

アーティファクトをW&Bにログ

オプションでW&Bアーティファクトをログします。アーティファクトは、データセットやモデルのバージョン管理を容易にします。
ArtifactsRegistryでのモデルのバージョン管理について詳しく学んでください。

すべてをまとめる

前述のコードスニペットを使った完全なスクリプトは以下の通りです:

次のステップ:実験を可視化

W&Bダッシュボードを使用して、機械学習モデルの結果を整理し可視化する中央の場所として利用します。parallel coordinates plotsparameter importance analyzes、およびその他のようなリッチでインタラクティブなグラフを数クリックで構築します。
クイックスタートスイープダッシュボードの例
実験や特定runの表示方法についての詳細は、Visualize results from experimentsを参照してください。

ベストプラクティス

以下は、実験を作成する際に考慮すべきいくつかのガイドラインです:
  1. Runを終了させる: wandb.init()with文で使用して、コードが完了したときや例外が発生したときにrunを自動的に終了させます。
    • Jupyterノートブックでは、Runオブジェクトを自分で管理する方が便利な場合があります。この場合、Runオブジェクトでfinish()を明示的に呼び出して完了をマークできます:
  2. Config: ハイパーパラメータ、アーキテクチャー、データセット、およびモデルの再現に使用したい他のすべてのものをトラックします。これらは列に表示され、アプリ内で動的にrunをグループ化、並べ替え、およびフィルタリングするためにconfig列を使用します。
  3. プロジェクト: プロジェクトは比較可能な一連の実験です。各プロジェクトは専用のダッシュボードページを持ち、異なるモデルバージョンを比較するrunの異なるグループを簡単にオンオフできます。
  4. ノート: スクリプトから直接クイックコミットメッセージを設定します。ノートを編集し、W&Bアプリのrunのオーバービューセクションでアクセスします。
  5. タグ: ベースラインrunとお気に入りのrunを識別します。タグを使用してrunをフィルタリングできます。タグは後で、プロジェクトのダッシュボードのオーバービューセクションで編集できます。
  6. 実験を比較するために複数のrunセットを作成: 実験を比較するときは、メトリクスを比較しやすくするために複数のrunセットを作成します。runセットを同じグラフまたは一連のグラフでオンオフできます。
以下のコードスニペットは、上記のベストプラクティスを使用してW&B Experimentを定義する方法を示しています:
W&B Experimentを定義する際に利用可能なパラメータの詳細については、wandb.init APIドキュメントをAPIリファレンスガイドで参照してください。