メインコンテンツへスキップ
このページでは、折れ線グラフの設定について詳しく説明します。折れ線グラフの操作の詳細については、Line plots overviewを参照してください.

データ設定

X軸

X軸の選択
X軸の範囲は、wandb.Run.log() でログした任意の整数値または浮動小数点値に設定できます。 利用可能な時間ベースの X軸 オプション:
  • Step: wandb.Run.log() が呼び出されるたびに増加します。モデルからログされたトレーニング step 数を反映します。 (デフォルト)
  • Relative Time (Wall): プロセスの開始からの経過時間です。run を開始して 1 日間一時停止し、その後再開してログすると、その時点は 24 時間として表示されます。
  • Relative Time (Process): 実行中のプロセス内での経過時間です。run を開始して 10 秒間実行し、1 日間一時停止してから再開すると、その時点は 10 秒として表示されます。
  • Wall Time: グラフ上の最初の run の開始から経過した分数です。
  • X range: デフォルトでは、X軸の最小値から最大値までが使用されます。最小値と最大値はカスタマイズできます.

Y軸

Y軸の変数には、wandb.Run.log()でログした任意の整数値または浮動小数点値を設定できます。単一の値、値の配列、または値のヒストグラムを指定します。ある変数で 1500 個を超えるデータ点をログした場合、W&B は 1500 点までサンプリングします。
Runs table で run の色を変更すると、Y軸の線の色をカスタマイズできます。
利用可能な Y軸オプション:
  • Y range: デフォルトでは、メトリクスの最小の正の値 (0 を含む) からメトリクスの最大値までの範囲になります。最小値と最大値はカスタマイズできます。

ポイント集約の method

データポイントの表示に使用するサンプリングモードを選択します。

スムージング

スムージング係数 を 0 から 1 の間で設定します。0 はスムージングなし、1 は最大のスムージングです。 利用可能なスムージング method:
  • 時間加重 EMA (デフォルト) : 以前の点の重みを指数関数的に減衰させることで、時系列データを平滑化する手法です。
  • 移動平均: 指定した x 値の前後のウィンドウ内にある点の平均値で、その点を置き換えます。
  • ガウシアン: 点の加重平均を計算します。このとき、重みはガウス分布に従い、標準偏差はスムージングのパラメーターとして指定されます。
  • スムージングなし
詳細については、折れ線グラフのスムージングを参照してください。

外れ値を無視

デフォルトのプロットの最小値および最大値のスケールから外れ値を除外するように、プロットのスケールを再調整します。この設定の影響は、プロットのサンプリングモードによって異なります。
  • ランダムサンプリングモード: 外れ値を無視すると、5% 未満および 95% を超える点はプロットから除外されます。
  • フルフィデリティモード: 外れ値を無視すると、すべての点が表示され、各 bucket の最後の値まで圧縮されたうえで、5% 未満および 95% を超える領域が網掛け表示されます。

Runs またはグループの最大数

デフォルトでは、プロットには Runs リストまたは Runs セットの先頭 10 件の Runs または Runs グループのみが表示されます。表示する Runs またはグループを制御するには、並び順を変更します。
Workspace では、設定に関係なく、最大 1000 件の run までしか表示できません。

チャートタイプ

プロットスタイルを選択します。
  • 折れ線グラフ
    折れ線グラフのスタイル
  • エリアプロット
    エリアプロットのスタイル
  • パーセンテージエリアプロット:
    パーセンテージエリアプロットのスタイル
チャートタイプは Data タブで設定します。詳しくは を参照してください。

グループ化設定

グループ化を有効にすると、すべての Runs を集約できます。また、特定の変数でグループ化することもできます。Runs table でグループ化を有効にすると、グループが自動的にグラフに反映されます。
  • Group runs: プロットで Runs のグループ化を有効にします。下記のプロットの網掛け範囲を設定するには必須です。
  • Group by: 必要に応じて column を選択します。その column で同じ値を持つすべての Runs が同じグループにまとめられます。
  • Aggregation: グラフ上の線の値です。オプションは、グループの平均、中央値、最小値、最大値です。
  • Range: 高忠実度の折れ線グラフの網掛け領域を設定します。オプションは Min/Max、Std Dev、Std Err、None です。

チャート設定

タイトルと凡例の表示設定を行います。
  • パネルタイトル: パネル上部に表示されるタイトル。
  • X軸タイトル: X軸のラベル。
  • Y軸タイトル: Y軸のラベル。
  • 凡例: 凡例の表示/非表示を切り替え、位置を設定します。

凡例の設定

凡例をカスタマイズすると、ログされた任意の設定値や、作成日時、そのrunを作成したユーザーなど、runsのメタデータを表示できます。

凡例テンプレート

凡例名のテンプレートを定義します。
  1. 歯車アイコンをクリックして、プロットの設定を開きます。
  2. Display preferences タブに移動します。
  3. Advanced legend を展開し、凡例テンプレートを指定します。
  4. Apply をクリックします。
例: ${run:displayName} - ${config:dropout} と指定すると、royal-sweep - 0.5 のような凡例名が生成されます。ここで、royal-sweep は run 名、0.5dropout という名前の設定パラメーターです。

ポイント固有の値

[[ ]] 内に値を設定すると、チャートにカーソルを合わせたときに、クロスヘアにポイント固有の値を表示できます。
  1. 歯車アイコンをクリックして、プロットの設定を開きます。
  2. Display preferences タブに移動します。
  3. タブの下部で、プロットの1つ以上のメトリクスに対してポイント固有の値を設定します。
  4. Apply をクリックします。
例: [[ $x: $y ($original) ]] と設定すると、“2: 3 (2.9)” のように表示されます [[ ]] 内でサポートされる値:
Value意味
${x}X 値
${y}Y 値 (スムージング調整を含む)
${original}Y 値 (スムージング調整を含まない)
${mean}グループ化された Runs の平均値
${stddev}グループ化された Runs の標準偏差
${min}グループ化された Runs の最小値
${max}グループ化された Runs の最大値
${percent}全体に占める割合 (積み上げエリアチャートの場合)

派生メトリクスを作成するためのカスタム計算式を追加します。

Y軸の式

メトリクスから算出した値をプロットします。たとえば、1-accuracy やその他の算術式を計算できます。現在は、単一のメトリクスをプロットする場合にのみ機能します。 サポートされる演算子: +, -, *, /, %, および ** (累乗) 。 ログしたメトリクスと、ハイパーパラメーターなどの設定値の両方を使って、カスタムラインを計算できます。

X軸 の式

カスタム式で計算した値を使用して、X軸 のスケールを変更します。 使用できる変数:
  • _step: デフォルトの X軸 値。
  • ${summary:value}: summary の参照値。

複数メトリクスパネルの式

正規表現を使用すると、複数のメトリクスをまとめて表示する単一の折れ線グラフを作成できます (今後ログされる、パターンに一致するメトリクスも含まれます) 。詳しくは、折れ線グラフを追加するを参照してください。 例:
  • 各レイヤーのメトリクスごとに個別のパネルを作成する代わりに、1 つのパネルにまとめて表示できます。たとえば、layer_0_losslayer_1_losslayer_2_loss のように一貫した命名でメトリクスをログする場合は、layer_\d+_loss のような正規表現を使用して、すべてのレイヤーの損失を 1 つのプロットに表示できます。
  • 共通の命名パターンを持つすべてのメトリクスに一致させることもできます。たとえば:
    • train_.* は、train_losstrain_accuracytrain_f1_score など、すべてのトレーニングメトリクスに一致します
    • .*_accuracy は、train_accuracyval_accuracytest_accuracy のような、異なるデータセットにまたがる精度メトリクスに一致します
  • 必要なメトリクスだけに一致させるには、選択を使用します。たとえば、非キャプチャグループ (?:layer_0|layer_10)_loss は、途中のレイヤーを除外し、1 番目と 10 番目のレイヤーの損失にのみ一致します。

キャプチャグループ

正規表現内のキャプチャグループによって、複数メトリクスのパネルがどのように作成されるかが決まります。これを想定していないと、この挙動はわかりにくい場合があります。
  • キャプチャグループを使うと複数のパネルが作成される 正規表現にキャプチャグループを構成する丸括弧が含まれている場合、UI はそのグループでキャプチャされた各一意の値ごとに個別のパネルを作成します。 たとえば、式 (layer_0|layer_10)_loss にはキャプチャグループが含まれているため、2 つの別々のパネルが作成されます。
    1. layer_0 に一致するメトリクスのパネル
    2. layer_10 に一致するメトリクスのパネル
  • 非キャプチャグループを使うとメトリクスは同じパネルにまとまる 複数の選択肢に一致させつつ別々のパネルを作成したくない場合は、?: 構文の非キャプチャグループを使用します。式 (?:layer_0|layer_10)_loss は前の例と同じメトリクスに一致しますが、それらを 1 つのパネルにまとめて表示します。
違いは次のとおりです。
  • (layer_0|layer_10)_loss - レイヤーごとに 1 つずつ、合計 2 つのパネルを作成します。
  • (?:layer_0|layer_10)_loss - 両方のレイヤーをまとめて表示する 1 つのパネルを作成します。
これにより、分析内容に応じて適切な方法を柔軟に選べます。メトリクスを別々のパネルに分けたい場合はキャプチャグループを使用します。メトリクスを 1 つのプロット上でまとめて比較したい場合は非キャプチャグループを使用します。