- コード: Colabノートブック の例を試す。
- 動画: ウォークスルー動画 を見る。
- 例: Keras と Sklearn のクイック デモノートブック

仕組み
- データのログ記録: スクリプトから config とサマリーデータをログに記録します。
- チャートのカスタマイズ: GraphQL クエリを使用して、ログに記録されたデータを抽出します。強力な可視化文法である Vega を使用して、クエリの結果を可視化します。
- チャートのログ記録: スクリプトから
wandb.plot_table()を使用して、独自のプリセットを呼び出します。

スクリプトからチャートをログに記録する
組込みプリセット
W&B には、スクリプトから直接ログに記録できる多数の組込みチャートプリセットがあります。これらには、折れ線グラフ、散布図、棒グラフ、ヒストグラム、PR曲線、ROC曲線が含まれます。- 折れ線グラフ
- 散布図
- 棒グラフ
- ヒストグラム
- PR曲線
- ROC曲線
wandb.plot.line()カスタムの折れ線グラフ(任意の軸 x と y 上の、連結され順序付けられた点 (x,y) のリスト)をログに記録します。
カスタムプリセット
組込みプリセットを微調整するか、新しいプリセットを作成してチャートを保存します。チャート ID を使用して、スクリプトから直接そのカスタムプリセットにデータをログ記録します。Google Colabノートブックの例を試す。
データのログ記録
スクリプトから以下のデータ型をログに記録し、カスタムチャートで使用できます:- Config: 実験の初期設定(独立変数)。これには、トレーニングの開始時に
wandb.Run.configのキーとしてログに記録した名前付きフィールドが含まれます。例:wandb.Run.config.learning_rate = 0.0001 - Summary: トレーニング中にログに記録された単一の値(結果または従属変数)。例:
wandb.Run.log({"val_acc" : 0.8})。トレーニング中にwandb.Run.log()を介してこのキーに複数回書き込んだ場合、サマリーはそのキーの最終値に設定されます。 - History: ログに記録されたスカラーの完全な時系列データは、
historyフィールドを介してクエリで利用可能です。 - summaryTable: 複数の値のリストをログに記録する必要がある場合は、
wandb.Table()を使用してそのデータを保存し、カスタムパネルでクエリします。 - historyTable: 履歴データを確認する必要がある場合は、カスタムチャートパネルで
historyTableをクエリします。wandb.Table()を呼び出すかカスタムチャートをログに記録するたびに、そのステップの履歴に新しいテーブルが作成されます。
カスタムテーブルのログ記録方法
wandb.Table() を使用して、データを2次元配列としてログに記録します。通常、このテーブルの各行は1つのデータポイントを表し、各列はプロットしたい各データポイントの関連フィールド/次元を表します。カスタムパネルを設定すると、wandb.Run.log() に渡された名前付きキー(下の例では custom_data_table)を介してテーブル全体にアクセスでき、列名(x, y, z)を介して個々のフィールドにアクセスできます。実験中の複数のタイムステップでテーブルをログに記録できます。各テーブルの最大サイズは10,000行です。Google Colab の例を試す。
チャートのカスタマイズ
まず新しいカスタムチャートを追加し、クエリを編集して表示されている Runs からデータを選択します。クエリは GraphQL を使用して、Runs の config、summary、history フィールドからデータを取得します。
カスタム可視化
右上隅の Chart を選択して、デフォルトのプリセットから開始します。次に、Chart fields を選択して、クエリから取得したデータをチャートの対応するフィールドにマッピングします。 次の画像は、メトリクスを選択し、それを下の棒グラフのフィールドにマッピングする例を示しています。
Vega の編集方法
パネル上部の Edit をクリックして、Vega 編集モードに入ります。ここでは、UI でインタラクティブなチャートを作成する Vega 仕様 を定義できます。チャートのあらゆる側面を変更できます。例えば、タイトルを変更したり、別のカラースキームを選択したり、曲線を連結された線ではなく一連の点として表示したりできます。また、Vega トランスフォームを使用して値の配列をヒストグラムにビン化するなど、データ自体に変更を加えることもできます。パネルのプレビューはインタラクティブに更新されるため、Vega 仕様やクエリを編集しながら変更の影響を確認できます。Vega のドキュメントとチュートリアル を参照してください。 フィールド参照 W&B からチャートにデータを取り込むには、Vega 仕様の任意の場所に"${field:<field-name>}" 形式のテンプレート文字列を追加します。これにより、右側の Chart Fields エリアにドロップダウンが作成され、ユーザーは Vega にマッピングするクエリ結果の列を選択できるようになります。
フィールドのデフォルト値を設定するには、この構文を使用します: "${field:<field-name>:<placeholder text>}"
チャートプリセットの保存
モーダル下部のボタンを使用して、特定の可視化パネルに変更を適用します。あるいは、Vega 仕様を保存してプロジェクトの他の場所で使用することもできます。再利用可能なチャート定義を保存するには、Vega エディタの上部にある Save as をクリックし、プリセットに名前を付けます。記事とガイド
- The W&B Machine Learning Visualization IDE
- Visualizing NLP Attention Based Models
- Visualizing The Effect of Attention on Gradient Flow
- Logging arbitrary curves
一般的なユースケース
- 誤差範囲付きの棒グラフのカスタマイズ
- カスタムの x-y 座標を必要とするモデル検証メトリクスの表示(PR曲線など)
- 2つの異なるモデル/実験からのデータ分布をヒストグラムとして重ね合わせる
- トレーニング中の複数のポイントでのスナップショットを介したメトリクスの変化の表示
- W&B でまだ利用可能でない独自の可視化の作成(そして、それを世界と共有することを願っています)




