- コード: サンプルの Colab ノートブックを試してください。
- 動画: 解説動画をご覧ください。
- 例: Keras と Sklearn のクイック デモノートブック。

仕組み
- データをログする: スクリプトから、設定 と summary データをログします。
- チャートをカスタマイズする: GraphQL クエリでログしたデータを取得します。Vega という可視化記法を使って、クエリ結果を可視化します。
- チャートをログする: スクリプトから
wandb.plot_table()を呼び出して、独自のプリセットを使用します。

スクリプトからチャートをログする
組み込みプリセット
- 折れ線グラフ
- 散布プロット
- 棒グラフ
- ヒストグラム
- PR曲線
- ROC曲線
wandb.plot.line()カスタムの折れ線グラフをログします。これは、任意の x 軸と y 軸上の点 (x, y) を順番に結んだプロットです。
カスタムプリセット

データをログする
- Config: 実験の初期設定 (独立変数) です。これには、トレーニング開始時に
wandb.Run.configにキーとしてログした名前付きフィールドが含まれます。例:wandb.Run.config.learning_rate = 0.0001 - Summary: トレーニング中にログされた単一の値 (結果または従属変数) です。たとえば、
wandb.Run.log({"val_acc" : 0.8})です。トレーニング中にwandb.Run.log()でこのキーに複数回書き込んだ場合、summary にはそのキーの最後の値が設定されます。 - History: ログされたスカラーの完全な時系列は、
historyフィールドを通じてクエリできます - summaryTable: 複数の値のリストをログする必要がある場合は、
wandb.Table()を使用してそのデータを保存し、その後カスタムパネルでクエリします。 - historyTable: 履歴データを確認する必要がある場合は、カスタムチャートパネルで
historyTableをクエリします。wandb.Table()を呼び出すかカスタムチャートをログするたびに、その step の history に新しい表が作成されます。
カスタム表をログする
wandb.Table() を使用して、データを二次元配列としてログします。通常、この表の各行は 1 つのデータポイントを表し、各列はプロットしたい各データポイントに関連するフィールドや次元を表します。カスタムパネルを設定すると、表全体には wandb.Run.log() に渡した名前付きキー (次の例では custom_data_table) でアクセスできます。個々のフィールドには列名 (x、y、z) でアクセスできます。実験全体を通して、複数のタイムステップで表をログできます。各表の最大サイズは 10,000 行です。Google Colab ノートブックの例を試す。
チャートをカスタマイズする
config、summary、historyフィールドからデータを取得します。
GraphQL クエリを作成する
config、summary、history、summaryTable、historyTable から選択できるため、多くの場合、クエリを最初から記述する必要はありません。
クエリ内の各ソースは、それぞれ異なるログ済みデータに対応しています。
- Config は、run 設定 の値 (ハイパーパラメーターやその他の設定) を取得します。
- Summary は、summary の値を取得します。デフォルトでは、
wandb.Run.log()でログしたキーの summary には、そのキーに最後に書き込まれた値が保持されます。別の集計方法を使用するには、wandb.Run.define_metric(..., summary=...)を"min"、"max"、"mean"、"best"、"none"のいずれかとともに呼び出します。値を直接設定するには、wandb.Run.summary["key"] = valueを代入します。 - History は、run 履歴からスカラー時系列を取得します (たとえば、各 step における
lossやaccuracy) 。最後の数値だけでなく曲線全体が必要な場合は、history を使用してください。 summaryTableは、run summary からwandb.Tableを読み込みます。対象の表が run に単一のスナップショットとして保存されている場合 (たとえば、最後に一度だけログする混同行列) に使用してください。historyTableは、run 履歴からwandb.Tableを読み込みます。wandb.Run.log()で表をログするたびに、その表を含む新しい step が run 履歴に追加されます。表が時間とともに変化する場合や、カスタム チャート エディターで step セレクターを有効にしたい場合は、historyTableを使用してください (カスタム チャートで step スライダーを表示するにはどうすればよいですか? を参照してください) 。
summaryTable と historyTable では、tableKey には wandb.Table 内の列名ではなく、wandb.Run.log() 内で使用した辞書キーを設定してください。
以下の例は、よくあるケースを示しています。
- 各 step でログした表の列をプロットする場合 (たとえば PR 曲線) :
historyTableを追加し、tableKeyをログしたキー (たとえばpr_curve) に設定してから、Chart fields で表の列をマッピングします。カスタム チャート チュートリアル を参照してください。 - summary にある表の列をプロットする場合 (たとえば、複合ヒストグラムのクラス スコア) :
summaryTableを追加し、tableKeyをそのキーに設定します (チュートリアルではclass_scoresを使用しています) 。おまけ: 複合ヒストグラム を参照してください。 - トレーニング step に対するスカラー メトリクスをプロットする場合: history からそのメトリクスを追加します。summary からのみ追加すると、チャートには run ごとに 1 つの値だけが表示されます。
runSets_ で始まることが多く、選択したクエリ フィールドを反映しています。手入力するのではなく、各 ${field:...} プレースホルダーの横にあるドロップダウンから選択してください。
列がまったく表示されない場合は、選択した run にそのキーが存在することを確認し、run ページを開いてデータがどのようにログされたかを確認したうえで、summaryTable と historyTable のどちらがそのログ パターンに合っているかを確認してください。
カスタム チャートでは、この GraphQL ベースのパネル クエリを使用します。Query panels では別の式言語を使用しており、ドキュメントも分かれています。

カスタム可視化

Vega を編集
"${field:<field-name>}" 形式のテンプレート文字列を Vega spec 内の任意の場所に追加します。これにより、右側の Chart fields 領域にドロップダウンが作成され、Vega にマッピングするクエリ結果の列を選択できます。
フィールドのデフォルト値を設定するには、次の構文を使用します: "${field:<field-name>:<placeholder text>}"
チャートプリセットを保存する
Reports とガイド
- W&Bの機械学習可視化IDE
- カスタムチャートを使ってNLPのAttentionベースモデルを可視化する
- カスタムチャートを使ってAttentionが勾配フローに与える影響を可視化する
- 任意の曲線をログする
一般的なユース ケース
- エラーバー付きの棒グラフをカスタマイズする
- カスタムの x-y 座標が必要なモデルの検証メトリクス (適合率-再現率曲線など) を表示する
- 2 つの異なるモデルや experiment のデータ分布をヒストグラムとして重ねて表示する
- トレーニング中の複数の時点のスナップショットを使って、メトリクスの変化を表示する
- W&B でまだ利用できない独自の可視化を作成して、他のユーザーと共有する




