信頼性ルールの設定¶
MLOpsでは、設定 > 信頼性タブを使用してデプロイするための信頼性ルールを作成できます。 信頼性ルールを使うと、モデルが不確かな予測を行ったり、見たことのないデータを受信したりした時点をリアルタイムで認識することができます。 データドリフトとは異なり、モデルの信頼性は時間の経過に伴う幅広い統計プロパティを処理しません。代わりに、個々の予測に対してトリガーされ、さまざまなトリガーに依存するルールを使用して目的の動作を設定できます。 信頼性ルールを使用してトリガーおよび対応するアクションを予測に追加すると、運用環境でモデルのリスクを軽減するのに役立ちます。 信頼性ルールは、監視中にデータの整合性の問題を特定して処理し、不安定な予測の根本原因をより適切に特定するのに役立ちます。
設定 > 信頼性タブには以下のサブタブがあります。
-
設定:不確実性を監視するための信頼性ルールを作成し、それを管理するためのアクションを指定します。
-
予測警告タブ(連続値プロジェクトのみ):デプロイが外れ値で予測を生成した時点を検出する予測警告を設定します。
Specific humility rules are available for multiseries projects. AutoMLプロジェクトと同じ信頼性ルールの一般的なワークフローに従っていますが、特定の設定やオプションがあります。
信頼性ルールの作成¶
デプロイ用の信頼性ルールを作成するには:
-
On the Dashboard, open a deployment and navigate to the Settings > Humility tab.
-
信頼性ルールの設定ページで、モデルに対して信頼性を有効にしていない場合は、信頼性を有効にするトグルをクリックし、次のいずれかを実行します。
-
新しいカスタムルールを作成するには、+ ルールを追加をクリックします。
-
DataRobotが提供するルールを使用するには、+ 推奨ルールを使用をクリックします。 このオプションでは、自動的に設定された2つの信頼性ルールが生成されます。
-
ルール1:不確かな予測トリガーおよび操作なしアクション。
-
ルール2:最も有用性の高い数値特徴量の外れ値の入力トリガー(特徴量のインパクトの結果に基づきます)および操作なしアクション。
どちらの推奨ルールでも、上限と下限のしきい値が自動的に計算されます。
-
-
-
Click the pencil icon () to enter a name for the rule, then, select a Trigger and an Action to take based on the selected trigger. トリガーはルール違反を検知し、アクションは違反する予測を処理します。 The trigger and action selection process differs for multiseries models:
-
作成するルールのトリガーを選択します。 各トリガーには、特定の設定が必要です。 以下の表と次のセクションでは、これらの設定を説明します。 使用可能なトリガーは3つあります。
トリガー 説明 To configure 不確かな予測 予測の値がしきい値に違反しているかどうかを検出します。予測値の下限と上限のしきい値を設定する必要があります。 Enter values either manually or click Calculate to use computed thresholds derived from the Holdout partition of the model (DataRobot models only). - For regression models, the trigger detects any values outside of the configured thresholds.
- For binary classification models, the trigger detects any prediction's probability value that is inside the thresholds.
外れ値入力 数値特徴量の入力値がしきい値の範囲外かどうかを検出します。 数値特徴量を選択し、その入力値の下限しきい値と上限しきい値を設定します。 値を手動で入力するか、計算するをクリックして、トレーニングデータから派生されたしきい値を使用します(DataRobotモデルでのみ使用可能)。 低観測値域 指定された値のリストにカテゴリー特徴量の入力値が含まれていないかどうかを検出します。 カテゴリー特徴量を選択し、1つ以上の値を指定します。 指定された値と一致しない予測リクエストに表示される入力値は、アクションをトリガーします。 -
作成するルールのアクションを選択します。 トリガーがルール違反を示した場合に、DataRobotがアクションを適用します。 使用できるアクションは3つあります。
アクション 説明 設定 予測のオーバーライド 設定済の値でトリガーに違反する行の予測値を変更します。 トリガーに違反する予測の戻り値を上書きする値を設定します。 二値分類モデルと多クラスモデルの場合、示された値はモデルのクラスラベルのいずれかに設定できます(「True」または「False」など)。 連続値モデルの場合、手動で値を入力するか、DataRobotで提供される最大値、最小値、または平均値を使用します(DataRobotモデルにのみ提供されます)。 エラーを発生 トリガーに違反する行は予測とともに480 HTTPエラーを返します。これは、サービスの正常性タブのデータの誤差率にも影響します。 提供されているデフォルトのエラーメッセージを使用するか、独自のカスタムエラーメッセージを指定します。 このエラーメッセージは、予測とともに480 HTTPエラーに表示されます。 操作なし 検出された予測値は変更されません。 No configuration needed.
DataRobotは、履歴を部分的に使用するか全く使用せずに特徴量派生や予測を行える複数系列のブループリントをサポートしています。つまり、以前にトレーニングされておらず、精度の高い予測を行うのに十分なポイントがトレーニングデータセットに含まれていない系列にも対応しています。 これは、需要の予測などに役立ちます。 新製品が発表されたとき、最初の売上予測が必要になる場合があります。 「コールドスタートモデリング」(十分な履歴データがない系列のモデリング)と組み合わせることで、新しい系列について予測できるだけでなく、履歴のある系列で精度の高い予測を維持することもできます。 With the support in place, you can set up a humility rule that triggers on a new series (unseen in training data), takes a specified action, and, optionally, returns a custom error message. To do this, take the following steps:
-
トリガーを選択します。 新しい系列データを含めるには、トリガーとして新しい系列を選択します。 このルールは、トレーニングデータに存在していなくて、かつ正確な予測に必要な十分な履歴が予測データにない系列が存在するかどうかを検出します。
-
アクションを選択します。 次の表で説明するように、後続のオプションは選択したアクションによって異なります。
アクション 新しい系列が検出された場合... さらなるアクション 操作なし DataRobotはイベントを記録しますが、予測は変更されません。 N/A 新しい系列に対応したモデルを使用 予測は、新しい系列に対応する選択されたモデルの予測でオーバーライドされます。 Select a model that supports unseen series modeling. DataRobotは、対応するモデルをドロップダウンにプリロードします。 グローバルに最も頻度なクラスを使用する(二値分類のみ) 予測値は、すべての系列で最も頻度の高いクラスに置き換えられます。 N/A すべての系列でターゲット平均を使用(連続値のみ) 予測値はすべての系列でグローバルターゲット平均値によってオーバーライドされます。 N/A 予測のオーバーライド 予測値が指定した優先値に変更されます。 数値を入力して、新しい系列の予測値を置き換えます。 エラーを戻す 480エラーでデフォルトまたはカスタムエラーが返されます。 デフォルトを使用するか、ボックスをクリックしてカスタムエラーメッセージを入力します。
If you select Use model with new series support, when you expand the Model with new series support dropdown, DataRobot provides a list of models available from the Registry, not from Workbench. レジストリから入手できるモデルを使用すると、ユースケースからモデルが切り離され、パッケージがサポートされます。 この方法では、同じターゲットを使用し、同じ系列がある限り、互換性のある任意のユースケースのバックアップモデルを使用できます。
備考
デプロイ内のモデルを別のユースケースのモデルに置換すると、信頼性ルールは無効になります。 置換が同じユースケースのモデルである場合、ルールは保存されます。
ルールの設定が完了すると、ルールの下にルールの説明が表示され、設定されたトリガーとそれぞれのアクションで何が起こるかに関する説明が表示されます。
-
-
追加をクリックしてルールを保存し、+新しいルールを追加をクリックして新しいルールを追加します。
-
After adding rules, click Submit.
注意
サブミットをクリックすることが、新しいルールとルール変更を恒久的に保存する唯一の方法です。 サブミットをクリックせずに信頼性タブから移動した場合、ルールとルールの編集は保存されません。
備考
ルールが既存のルールと重複している場合、保存できません。 この場合、サブミットをクリックすると、注意が表示されます。
信頼性ルールを保存してサブミットした後、DataRobotは新しいルールと以前に作成されたルールを使用してデプロイを監視します。 ルールが作成された後、予測応答本文は信頼性オブジェクトを返します。 詳細については、予測APIドキュメントを参照してください。
Manage humility rules¶
オーナー権限がある場合は、信頼性 > ルールタブから既存のルールを編集または削除できます。
アイコン | アクション | 説明 |
---|---|---|
編集 | ルールのトリガー、アクション、および関連付けられた値を変更します。 終了したら、変更を保存をクリックします。 | |
削除 | Delete the entire humility rule from the rule list—trigger, action, and values. | |
再並び替え | Drag and drop the selected humility rule to a new place in the rule list. |
重要
信頼性ルールを編集すると、予測値が新しい値で上書きされることや設定されたルールに基づいてエラーが返されることがあるので、デプロイの予測に大きな影響が生じる可能性があります。
After managing the humility rules, click Submit. 信頼性タブから離れる前にサブミットをクリックしなかった場合、編集は失われます。
ルールの適用順序
ルールが適用される順序は、リストに表示されるルールの順序によって決まります。 すべての信頼性ルールトリガーが適用されますが、複数のルールが予測応答のトリガーに一致する場合、リスト内の最初のルールが適用され、予測値が変更されます。 しかし、トリガーされるいずれかのルールに「エラーを発生」アクションがある場合、そのルールが優先されます。
For example, consider a regression model deployment with the following rules:
トリガー | アクション | しきい値 |
---|---|---|
ルール1:不確かな予測 | 予測値を55に上書きします。 | 下限:1 上限:50 |
ルール2:不確かな予測 | 予測値を66に上書きします。 | 下限:45 上限:50 |
予測が値100を返してきた場合、両方のルールがしきい値の外にある不確かな予測を検出するため、両方のルールがトリガーされます。 最初のルールであるルール1が優先されるので、予測値は55に上書きされます。値を66に上書きするアクション(ルール2に基づく)は無視されます。
別の例として、次のルールがあるデプロイを考えてみます。
トリガー | アクション | しきい値 |
---|---|---|
ルール1:不確かな予測 | 予測値を55に上書きします。 | 下限:1 上限:50 |
ルール2:不確かな予測 | エラーを発生させます。 | 下限:45 上限:50 |
If a prediction returns the value 100, both rules will trigger; however, this time, Rule 2 takes priority over Rule 1 because it is configured to return an error. エラーを返すアクションの優先度はルールの番号順よりも高いので、値は上書きされません。
Humility rules considerations¶
Consider the following when using Humility rules:
-
デプロイに対して10以上の信頼性ルールを定義することはできません。
-
信頼性ルールを定義できるのはデプロイのオーナーだけです。 デプロイのユーザーはルールを表示できますが、ルールを編集することや新しいルールを定義することはできません。
-
「不確実な予測」トリガーは、連続値モデルと二値分類モデルでのみサポートされています。
-
多クラスモデルでサポートされるのは「予測のオーバーライド」だけです。