メインコンテンツへスキップ
この機能を利用するには、Pro または Enterprise プランが必要です。
オートメーションは、特定のイベントがプロジェクトまたはレジストリ内で発生したときに開始されます。このページでは、各スコープ内でオートメーションのトリガーとなるイベントについて説明します。オートメーションの詳細は、Automations overview または Create an automation を参照してください。

レジストリ

このセクションでは、Registry におけるオートメーションのスコープとイベントについて説明します。

スコープ

Registry の自動化機能は、特定のレジストリ内のコレクション(将来追加されるものも含む)で発生するあらゆるイベントを監視します。

イベント

Registry の自動化では、次のイベントを監視できます。
  • 新しいバージョンがコレクションにリンクされたとき: 新しいモデルやデータセットがレジストリに追加されたタイミングでテストおよび検証を実行します。
  • アーティファクトのエイリアスが追加されたとき: 特定のアーティファクトバージョンに特定のエイリアスが付与されたタイミングで、ワークフローの特定のステップをトリガーします。たとえば、production エイリアスが付与されたときにモデルをデプロイします。

プロジェクト

このセクションでは、プロジェクト におけるオートメーションのスコープとイベントについて説明します。

スコープ

プロジェクトレベルのオートメーションは、そのプロジェクト内のいずれのコレクションで発生するイベントも監視します。指定したイベントの種類に応じて、オートメーションの対象範囲をさらに絞り込むことができます。

アーティファクトイベント

このセクションでは、オートメーションをトリガーできるアーティファクトに関連するイベントについて説明します。
  • 新しいバージョンがアーティファクトに追加されたとき: アーティファクトの各バージョンに対して、同じアクションを適用します。たとえば、新しいデータセットアーティファクトのバージョンが作成されたときに学習ジョブを開始します。
  • アーティファクトエイリアスが追加されたとき: 指定した Alias regex に一致するエイリアスが、あるプロジェクト内の新しいアーティファクトバージョンに適用されたときに、ワークフローの特定のステップをトリガーします。たとえば、test-set-quality-check エイリアスがアーティファクトに適用されたときに一連の後続処理ステップを実行したり、新しいアーティファクトバージョンに latest エイリアスが付与されるたびにワークフローを実行したりします。ある時点で、特定のエイリアスに紐づくアーティファクトバージョンは 1 つだけです。
  • アーティファクトタグが追加されたとき: 指定した Tag regex に一致するタグが、あるプロジェクト内のアーティファクトバージョンに適用されたときに、ワークフローの特定のステップをトリガーします。たとえば、^europe.* を指定して、europe という文字列で始まるタグがアーティファクトバージョンに追加されたときに、地域固有のワークフローをトリガーできます。アーティファクトタグはグループ化およびフィルタリングに使用され、1 つのタグを複数のアーティファクトバージョンに同時に割り当てることができます。

Run events

オートメーションは、run のステータス の変更、または メトリクス値 の変更によって起動されます。

run ステータスの変更

  • 現在は W&B Multi-tenant Cloud でのみ利用できます。
  • ステータスが Killed の run ではオートメーションをトリガーできません。このステータスは、run が管理者ユーザーによって強制的に停止されたことを示します。
run の statusRunningFinished、または Failed に変化したときにワークフローをトリガーするように設定します。必要に応じて、ユーザーや run 名のフィルターを指定して、オートメーションをトリガーできる run をさらに絞り込むことができます。
Screenshot showing a run status change automation
run ステータスは run 全体のプロパティであるため、run ステータスのオートメーションは Automations ページからのみ作成でき、ワークスペースからは作成できません。

Run metrics change

現在は W&B Multi-tenant Cloud でのみ利用できます。
メトリクスとしてログされた値に基づいてワークフローをトリガーします。対象とするのは、run の履歴内のメトリクス、または CPU 使用率の割合を追跡する cpu のようなシステムメトリクスです。W&B は 15 秒ごとにシステムメトリクスを自動的にログします。 run メトリクスのオートメーションは、プロジェクトの Automations タブから、またはワークスペース内の折れ線グラフパネルから直接作成できます。 run メトリクスのオートメーションを設定するには、指定したしきい値とメトリクスの値をどのように比較するかを設定します。選択肢は、イベントの種類と指定したフィルターに応じて異なります。 任意で、ユーザーまたは run 名フィルターを指定することで、オートメーションをトリガーできる run をさらに絞り込むことができます。
しきい値
Run metrics threshold met イベントでは、次の内容を設定できます:
  1. 対象とする、直近でログされた値の数(デフォルトは 5)
  2. ウィンドウ内で評価する値を AverageMinMax のいずれにするか
  3. 比較条件:
    • より大きい (Above)
    • 以上 (Above or equal to)
    • より小さい (Below)
    • 以下 (Below or equal to)
    • 等しくない (Not equal to)
    • 等しい (Equal to)
たとえば、平均 accuracy.6 を超えたときにオートメーションをトリガーします。
run メトリクスのしきい値オートメーションを示すスクリーンショット
変化のしきい値
Run metrics change threshold met イベントでは、オートメーションは開始するかどうかを判定するために 2 つの「ウィンドウ」の値を使用します。
  • 判定対象とする、直近にログされた値の 現在のウィンドウ(デフォルトは 10)。
  • 判定対象とする、直近にログされた値の 直前のウィンドウ(デフォルトは 50)。
現在のウィンドウと直前のウィンドウは連続しており、重複しません。 オートメーションを作成するときは、次の内容を設定します。
  1. ログされた値の現在のウィンドウ(デフォルトは 10)。
  2. ログされた値の直前のウィンドウ(デフォルトは 50)。
  3. 値を相対値として評価するか絶対値として評価するか(デフォルトは Relative)。
  4. 設定する比較条件:
    • 少なくともこの値だけ増加
    • 少なくともこの値だけ減少
    • 少なくともこの値だけ増加または減少
たとえば、平均 loss が少なくとも .25 減少したときにオートメーションがトリガーされるように設定できます。
Screenshot showing a run metrics change threshold automation

Run メトリクスの z スコア変化

現在は W&B Multi-tenant Cloud でのみ利用できます。
W&B は、メトリクスの z スコア(標準得点)が指定したしきい値を超えたときにオートメーションをトリガーできます。z スコアは、そのプロジェクト内の run を対象に、設定可能なウィンドウ幅で計算したそのメトリクスの平均値から、その値が何標準偏差離れているかを測定します(デフォルトでは 30 run)。 イベントトリガーとして z スコアを使用するには、Run metrics z-score threshold met イベントを選択します。 z スコアに基づくオートメーションは、モデルや学習プロセスの変化に伴い絶対的なしきい値が変動しうる状況でも、絶対的なしきい値を都度確認することなく、異常なパフォーマンスについてチームに通知できます。 run メトリクスの z スコアを使ったオートメーションは、プロジェクトの Automations タブ、または Workspace 内のラインプロットパネルから直接作成できます。 z スコアオートメーションを作成するには、次の項目を設定します。
  1. 目標とする z スコアのしきい値。正の浮動小数点値(例: 2.0)で指定します。
  2. 平均値を決定するために使用する、ログされた値のウィンドウ(デフォルトは 30)。
  3. 実行する比較内容:
    • Above(パフォーマンスが異常に高いときにトリガー)
    • Below(パフォーマンスが異常に低いときにトリガー)
    • Either above or below(上または下のいずれか)
たとえば、accuracy の z スコアが 2 を超えたときにオートメーションをトリガーするとします。これは、その run がプロジェクト内の他の run よりも有意に高いパフォーマンスを示していることを意味します。 z スコア値の意味:
  • z スコアが 0 の場合、そのメトリクスは平均値です。
  • z スコアが +2.0 の場合、そのメトリクスは平均より 2 標準偏差高いことを意味します。
  • z スコアが -2.0 の場合、そのメトリクスは平均より 2 標準偏差低いことを意味します。
  • ±2 を超える値は、統計的に有意な外れ値と見なされることがよくあります。

run フィルター

このセクションでは、オートメーションが評価対象とする run の選択方法について説明します。
  • デフォルトでは、プロジェクト内の任意の run がイベント発生時にオートメーションをトリガーします。次のいずれかのフィルターを設定することで、どの run がオートメーションをトリガーするかを制限できます:
    • 特定ユーザーの run のみにフィルター: 指定したユーザーが作成した run のみを含めます。
    • run 名でフィルター: 名前が指定した正規表現に一致する run のみを含めます。
    詳細は Create automations を参照してください。
  • 各 run は個別に評価され、それぞれがオートメーションをトリガーする可能性があります。
  • 各 run の値は個別のウィンドウに入れられ、しきい値と個別に比較されます。
  • 24 時間のあいだに、特定のオートメーションが 1 つの run に対してトリガーされるのは最大 1 回です。

次のステップ