W&B Experimentの作成方法
W&B Experimentを次の4つのステップで作成します: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がそのプロジェクトに追加されます。ハイパーパラメータの辞書をキャプチャ
学習率やモデルタイプといったハイパーパラメータの辞書を保存します。設定でキャプチャしたモデル設定は、後で結果の整理やクエリに役立ちます。トレーニングループ内でメトリクスをログ
run.log()
を呼び出して、精度や損失といった各トレーニングステップに関するメトリクスをログします。
アーティファクトをW&Bにログ
オプションでW&Bアーティファクトをログします。アーティファクトは、データセットやモデルのバージョン管理を容易にします。すべてをまとめる
前述のコードスニペットを使った完全なスクリプトは以下の通りです:次のステップ:実験を可視化
W&Bダッシュボードを使用して、機械学習モデルの結果を整理し可視化する中央の場所として利用します。parallel coordinates plots、parameter importance analyzes、およびその他のようなリッチでインタラクティブなグラフを数クリックで構築します。
ベストプラクティス
以下は、実験を作成する際に考慮すべきいくつかのガイドラインです:- Runを終了させる:
wandb.init()
をwith
文で使用して、コードが完了したときや例外が発生したときにrunを自動的に終了させます。-
Jupyterノートブックでは、Runオブジェクトを自分で管理する方が便利な場合があります。この場合、Runオブジェクトで
finish()
を明示的に呼び出して完了をマークできます:
-
Jupyterノートブックでは、Runオブジェクトを自分で管理する方が便利な場合があります。この場合、Runオブジェクトで
- Config: ハイパーパラメータ、アーキテクチャー、データセット、およびモデルの再現に使用したい他のすべてのものをトラックします。これらは列に表示され、アプリ内で動的にrunをグループ化、並べ替え、およびフィルタリングするためにconfig列を使用します。
- プロジェクト: プロジェクトは比較可能な一連の実験です。各プロジェクトは専用のダッシュボードページを持ち、異なるモデルバージョンを比較するrunの異なるグループを簡単にオンオフできます。
- ノート: スクリプトから直接クイックコミットメッセージを設定します。ノートを編集し、W&Bアプリのrunのオーバービューセクションでアクセスします。
- タグ: ベースラインrunとお気に入りのrunを識別します。タグを使用してrunをフィルタリングできます。タグは後で、プロジェクトのダッシュボードのオーバービューセクションで編集できます。
- 実験を比較するために複数のrunセットを作成: 実験を比較するときは、メトリクスを比較しやすくするために複数のrunセットを作成します。runセットを同じグラフまたは一連のグラフでオンオフできます。
wandb.init
APIドキュメントをAPIリファレンスガイドで参照してください。