メインコンテンツへスキップ
W&B にモデルをログする方法を示す次のウォークスルーに従ってください。このウォークスルーの終わりまでに次のことができるようになります:
  • MNIST データセットと Keras フレームワークを使用してモデルを作成およびトレーニングします。
  • トレーニングしたモデルを W&B プロジェクトにログします。
  • 作成したモデルの依存関係として使用したデータセットをマークします。
  • モデルを W&B Registry にリンクします。
  • レジストリにリンクしたモデルのパフォーマンスを評価します。
  • モデルバージョンをプロダクション用に準備完了としてマークします。
  • このガイドで提示された順にコードスニペットをコピーしてください。
  • モデルレジストリに固有でないコードは折りたたみ可能なセルに隠されています。

セットアップ

始める前に、このウォークスルーに必要な Python の依存関係をインポートします:
entity 変数に W&B エンティティを指定します:

データセット アーティファクトを作成する

まず、データセットを作成します。次のコードスニペットは、MNIST データセットをダウンロードする関数を作成します:
次に、データセットを W&B にアップロードします。これを行うには、artifact オブジェクトを作成し、そのアーティファクトにデータセットを追加します。
アーティファクトにファイル(データセットなど)を保存することは、モデルの依存関係を追跡できるため、モデルをログに記録するという文脈で便利です。

モデルのトレーニング

前のステップで作成したアーティファクトデータセットを使用してモデルをトレーニングします。

データセットアーティファクトを run の入力として宣言

前のステップで作成したデータセットアーティファクトを W&B run の入力として宣言します。これにより、特定のモデルをトレーニングするために使用されたデータセット(およびデータセットのバージョン)を追跡できるため、モデルをログに記録するという文脈で特に便利です。W&B は収集された情報を使用して、lineage map を作成します。 use_artifact API を使用して、データセットアーティファクトを run の入力として宣言し、アーティファクト自体を取得します。
モデルの入力と出力を追跡する方法の詳細については、Create model lineage mapを参照してください。

モデルの定義とトレーニング

このウォークスルーでは、Keras を使用して MNIST データセットから画像を分類するための 2D 畳み込みニューラルネットワーク (CNN) を定義します。

モデルを Model Registry にログし、リンクする

link_model API を使用して、一つまたは複数のファイルを W&B run にログし、それを W&B Model Registry にリンクします。
指定した名前の registered-model-name がまだ存在しない場合、W&B は登録されたモデルを作成します。 オプションのパラメータに関する詳細は、API リファレンスガイドの link_model を参照してください。

モデルのパフォーマンスを評価する

複数のモデルのパフォーマンスを評価するのは一般的な手法です。 まず、前のステップで W&B に保存された評価データセットアーティファクトを取得します。
評価したい W&B からのモデルバージョン をダウンロードします。use_model API を使用してモデルにアクセスし、ダウンロードします。
Keras モデルをロードし、損失を計算します:
最後に、損失のメトリクスを W&B run にログします:

モデルバージョンを昇格する

モデルエイリアス を使用して、機械学習ワークフローの次のステージに準備が整ったモデルバージョンをマークします。各登録済みモデルは 1 つまたは複数のモデルエイリアスを持つことができます。モデルエイリアスは、1 度に 1 つのモデルバージョンにのみ所属できます。 例えば、モデルのパフォーマンスを評価した後、そのモデルがプロダクションの準備が整ったと確信したとします。モデルバージョンを昇格させるために、特定のモデルバージョンに production エイリアスを追加します。
production エイリアスは、モデルをプロダクション対応としてマークするために使用される最も一般的なエイリアスの 1 つです。
W&B アプリ UI を使用してインタラクティブに、または Python SDK を使用してプログラムでモデルバージョンにエイリアスを追加できます。次のステップは、W&B Model Registry App を使用してエイリアスを追加する方法を示しています:
  1. https://wandb.ai/registry/model の Model Registry App に移動します。
  2. 登録されているモデルの名前の横にある View details をクリックします。
  3. Versions セクション内で、プロモーションしたいモデルバージョンの名前の横にある View ボタンをクリックします。
  4. Aliases フィールドの隣にあるプラスアイコン (+) をクリックします。
  5. 表示されるフィールドに production と入力します。
  6. キーボードの Enter キーを押します。