線グラフ
線グラフは、wandb.log() を使用してメトリクスを時間経過でプロットするとデフォルトで表示されます。グラフ設定をカスタマイズして、同じグラフに複数の線を比較したり、カスタム軸を計算したり、ラベルを変更したりできます。
設定
データ
- X軸: Stepや相対時間などのデフォルトのX軸を選択するか、カスタムX軸を選択します。カスタムX軸を使用したい場合は、
wandb.log()
を使ってy軸を記録する同じ呼び出しでログに記録されていることを確認してください。- Relative Time (Wall) はプロセスが開始されてからの時計時間ですので、runを開始して1日後に再開して何かをログに記録すると、それは24時間後にプロットされます。
- Relative Time (Process) は実行中のプロセス内の時間ですので、runを開始して10秒後に再開した場合、そのポイントは10秒後にプロットされます。
- Wall Time はグラフ上の最初のrunの開始から経過した分です。
- Step は
wandb.log()
が呼び出されるたびにデフォルトでインクリメントされ、モデルから記録されたトレーニングステップ数を反映します。
- Y軸: ログ値からy軸を選択します。メトリクスや時間経過で変化するハイパーパラメーターが含まれます。
- 最小値、最大値、および対数スケール: 最小値、最大値、対数スケール設定を線グラフのX軸とY軸に適用します。
- スムージングと異常値の除外: 線グラフのスムージングを変更したり、異常値を除外してデフォルトの最小および最大スケールを再設定したりします。
- 表示する最大run数: デフォルトでは10runまで表示されますが、この数を増やして一度により多くの線を表示できます。表示可能なrunが10runを超えている場合は、グラフの上部に「最初の10runを表示」と表示されます。
- チャートタイプ: 線グラフ、面積グラフ、パーセンテージ面積グラフを切り替えます。
X軸設定 X軸はグラフレベルで設定でき、プロジェクトページやレポートページでもグローバルに設定できます。以下はグローバル設定の例です。
ラインプロット設定で複数のY軸を選択して、例えば精度と検証精度のような異なるメトリクスを同じグラフで比較できます。
グルーピング
- グルーピングをオンにして、平均値の可視化のための設定を表示します。
- グループキー: 列を選択し、その列の同じ値を持つすべてのrunをグループ化します。
- アグリゲーション: グラフ上の線の値。選択肢は、グループの平均、中央値、最小値、最大値です。
- 範囲: グループ化された曲線の背後にある陰影領域の振る舞いを切り替えます。Noneは陰影領域がないことを意味します。Min/Maxはグループ内のポイント全体の範囲をカバーする陰影領域を表示します。Std Devはグループ内の値の標準偏差を表示します。Std Errは陰影領域として標準誤差を表示します。
- サンプリングされたrun: 数百のrunが選択されている場合、デフォルトで最初の100のみをサンプリングします。すべてのrunをグルーピング計算に含めることができますが、UIの速度が遅くなる可能性があります。
凡例
- タイトル: 線グラフのカスタムタイトルを追加し、チャートの上部に表示します。
- X軸タイトル: 線グラフのX軸のカスタムタイトルを追加し、チャートの右下に表示します。
- Y軸タイトル: 線グラフのY軸のカスタムタイトルを追加し、チャートの左上に表示します。
- 凡例: 各線のプロットの凡例に表示したいフィールドを選択します。例えば、runの名前や学習率を表示できます。
- 凡例テンプレート: 完全にカスタマイズ可能なこの強力なテンプレートを使って、線グラフの上部やプロットにマウスを乗せたときに表示される凡例に表示するテキストや変数を指定できます。
式
- Y軸の式: グラフに計算されたメトリクスを追加します。ログに記録されたメトリクスやハイパーパラメーターの設定値を使用してカスタムラインを計算できます。
- X軸の式: カスタム式を使用して、計算された値を使用してX軸を再スケールします。便利な変数にはデフォルトのX軸である**_step**や、サマリー値を参照するための構文
${summary:value}
などがあります。
プロット上で平均値を可視化する
複数の異なるExperimentsを持っていて、その値の平均をプロットで確認したい場合、テーブル内のグルーピング機能を使用できます。runテーブルの上で「Group」をクリックし、「All」を選択してグラフに平均値を表示します。
以下は平均化前のグラフです:
以下は、run全体の平均値を見るために線をグループ化した状態です。
プロット上でNaN値を可視化する
wandb.log
を使用して、NaN
値を含むPyTorchテンソルをプロットすることもできます。例えば:
wandb.log({"test": [..., float("nan"), ...]})
1つのチャートで2つのメトリクスを比較する
runをクリックしてrunページに移動します。こちらはStaceyのEstuaryプロジェクトの例のrunです。自動生成されたチャートは単一のメトリクスを表示します。
ページ右上のプラス記号をクリックし、Line Plotを選択します。
Y変数フィールドで、比較したい複数のメトリクスを選択します。それらは線グラフに一緒に表示されます。
線グラフの色を変更する
デフォルトのrunの色が比較に役立たないことがあります。このような場合に対処するために、wandbは色を手動で変更できる2つの方法を提供しています。
runテーブルから
各runには初期化時にデフォルトでランダムな色が与えられます。
任意の色をクリックすると、色パレットが表示され、手動で希望の色を選択できます。
チャート凡例の設定から
チャート凡例の設定からも、runの色を変更できます。
異なるX軸での可視化
実験にかかった絶対時間や、実験が実行された日を確認したい場合は、X軸を切り替えられます。ステップから相対時間、次にウォールタイムに切り替える例をご覧ください。
面積プロット
線グラフの設定で高度なタブをクリックし、異なるプロットスタイルを選択して、面積プロットやパーセンテージ面積プロットを作成できます。
ズーム
クリックして長方形をドラッグすると、縦横同時にズームします。これによりX軸およびY軸のズームが変更されます。
チャート凡例の非表示
この簡単なトグルを使って、線グラフの凡例をオフにします: