データドリフトのモニタリングを設定¶
モデルをデプロイするとき、トレーニングおよび検定に使用するデータセットが予測データと異なっていることがあります。 データドリフト監視は、設定 > データドリフトタブで有効にすることができます。 DataRobotはターゲットドリフトと特徴量ドリフトの両方の情報を監視し、結果をモニタリング > データドリフトタブに表示します。
DataRobotでのドリフトの追跡方法
DataRobot tracks two types of drift:
-
ターゲットドリフト:DataRobotは予測に関する統計情報を蓄積しているため、時間の経過と共にターゲットの分布と値がどのように変化するかを監視することができます。 ターゲット分布の比較の基準として、DataRobotではホールドアウトの予測値の分布を使用します。
-
特徴量ドリフト:DataRobotは予測に関する統計情報を蓄積しているため、時間の経過と共に特徴量の分布と値がどのように変化するかを監視することができます。 The supported feature data types are numeric, categorical, and text. 特徴量の分布を比較するためのベースラインとして:
-
500MBより大きいトレーニングデータセットでは、DataRobotはトレーニングデータのランダムサンプルの分布を使用します。
-
500MBより小さいトレーニングデータセットでは、DataRobotはトレーニングデータの100%の分布を使用します。
-
デプロイのデータドリフト設定ページでは、次の設定を行うことができます。
フィールド | 説明 |
---|---|
データドリフト | |
特徴量ドリフト追跡の有効化 | デプロイ内の特徴量ドリフトを追跡するようDataRobotを設定します。 特徴量ドリフト追跡にはトレーニングデータが必要です。 |
ターゲット監視の有効化 | デプロイ内のターゲットドリフトを追跡するようDataRobotを設定します。 精度監視にはターゲット監視が必要です。 |
トレーニングデータ | |
トレーニングデータ | モデルを構築する際にトレーニングのベースラインとして使用されたデータセットを表示します。 |
特徴量ドリフト | |
特徴量ドリフト | Defines the strategy used to select the 25 features tracked for feature drift in the deployment. |
推論データ | |
予測を保存しています。 | DataRobotがこのデプロイによって行われた予測の結果を記録し、保存していることを確認します。 デプロイを作成すると、DataRobotにデプロイの推論データが保存されます。 これは、個別のアップロードすることはできません。 |
推論データ(外部モデル) | |
DataRobotは、このデプロイに対して行われたすべての予測結果を記録しています | DataRobotが外部モデルによって行われた予測の結果を記録し、保存していることを確認します。 |
ここにファイルをドロップするか、ファイルを選択する | 予測履歴データを含むファイルをアップロードして、データドリフトを監視します。 |
定義 | |
定義を設定 | データドリフトを監視するために、ドリフトと有用性の指標設定としきい値定義を行います。 |
本機能の提供について
データドリフト追跡は、デプロイ対応の予測APIルートを使用するデプロイでのみ使用できます(https://example.datarobot.com/predApi/v1.0/deployments/<deploymentId>/predictions
など)。
データプライバシー通知
DataRobotはターゲットドリフトと特徴量ドリフトの両方の情報を監視し、結果をモニタリング > データドリフトタブに表示します。 たとえば、監視する必要のない機微データがデプロイに含まれている場合などは、ターゲット監視を有効化と特徴量ドリフト追跡を有効化のトグルを使用して追跡をオフにします。 ターゲット監視の有効化設定は、精度監視を有効にする際にも必要です。
特徴量ドリフト追跡のカスタマイズ¶
When feature drift tracking is enabled for a deployment, the Feature drift section appears. Choose one of the following strategies to select the 25 features tracked:
Supported feature data types
The supported feature data types are numeric, categorical, and text.
-
Automatic: (Default) DataRobot selects the 25 features.
-
Manual: Click Select features and select up to 25 features from the list (sorted by importance).
Manual feature selection considerations
In the feature selection table:
-
Features are sorted by feature importance in descending order. The secondary sort is alphabetical order by name.
-
Not all features have an importance value and some features may have a negative value.
-
For deployments of external models, the feature importance value is unavailable.
-
For deployments of Leaderboard or custom models with training data, the table uses normalized ACE as the importance value, not Feature Impact.
-
For deployments of text generation models, the table uses an assigned score—the target is 1.0, text features are 0.9, and other features are 0.1.
For all deployments with manual feature selection enabled:
-
Only the selected features are tracked for drift. If a feature is not selected, it is not tracked, even if the feature exists in prediction requests or uploaded statistics.
-
Switching from manual to automatic selection may result in the removal of previously tracked features from drift tracking if they are not important enough.
-
Accumulated feature drift statistics are not removed by switching back and forth between automatic and manual or by adding or removing tracked features.
When manually selecting features for drift tracking:
-
The available features are taken from the champion model project's feature list (if applicable) or training dataset (if applicable).
-
The supported feature data types are numeric, categorical, and text.
-
For deployments with imported model packages as champion, the only supported features are those with a pre-calculated baseline (in the .mlpkg file).
-
For deployments with a Leaderboard model as champion:
-
For non-time series models, any supported feature in a project’s feature list is available, even if a feature is not part of model’s feature list.
-
For time series non-segmented models, any supported feature in a model’s feature list is available.
-
For time series segmented models, feature drift isn’t supported.
-
-
For deployments with a custom model as champion:
-
For non-timeseries models, any supported column in the training data is available.
-
For time series models, any supported column in the training data is available.
-
-
For deployments with external models, any supported column in the training data is available.
During model replacement:
-
Features currently selected are removed after replacement if they are not supported or included in the replacement model.
-
Feature drift is disabled if none of the currently selected features are eligible for tracking in the replacement model.
-
A model replacement validation warning is displayed if either of these changes will happen after replacement.
データドリフト監視の通知を定義する¶
ドリフトは、指定された範囲で、すべての特徴量でデータの分布がどのように変化するかを評価します。 設定したしきい値によって、通知がトリガーされる前に許容されるドリフト量が決まります。
ドリフト監視の設定権限
データドリフトの監視設定を変更できるのは、デプロイオーナーだけです。ただし、ユーザーは 通知が送信される条件を設定することができます。 コンシューマーは監視や通知の設定を変更できません。
さらに、デプロイオーナーは、各デプロイのドリフトステータスの計算に使用されるルールをカスタマイズできます。 デプロイのオーナーとして、次のことができます。
-
有用性の高いまたは低い特徴量のリストを定義または上書きして、有用な特徴量を監視、または有用性の低い特徴量をあまり重視しないようにします。
-
ドリフトステータスの計算と注意からドリフトすると予想される特徴量は除外されるため、誤ってアラームが発生することはありません。
-
「注意」および「失敗」のドリフトステータスの平均をカスタマイズして、各デプロイのドリフトステータスを必要に応じてパーソナライズおよび調整します。
ドリフトと有用性のしきい値を設定するには、設定 > データドリフトタブの定義セクションを使用します。
-
ドリフトは、新しい予測データがモデルのトレーニングに使用された元のデータとどの程度異なるかを示す指標です。
-
有用性により、有用性の高い特徴量と有用性の低い特徴量の差異を明らかにすることができます。
ドリフトと有用性の両方について、データドリフトタブで、しきい値とそれがどのように特徴量を分離するかを視覚化できます。 デフォルトで、デプロイのデータドリフトステータスは、少なくとも1つの有用性の高い特徴量が設定されたドリフトメトリックのしきい値を超えると、「失敗」()とマーク付けされます。有用性の高い特徴量はないが、少なくとも1つの有用性の低い特徴量がしきい値を超えと、「注意」()としてマーク付けされます。
デプロイのドリフトステータス監視を設定するには、データドリフト設定ページの定義セクションで、データドリフトを監視する設定を行います。
要素 | 説明 | |
---|---|---|
1 | 範囲 | リファレンス期間の時間範囲を調整し、トレーニングデータと予測データを比較します。 ドロップダウンメニューから時間範囲を選択します。 |
2 | ドリフト指標 | DataRobotはPSI(Population Stability Index)指標のみをサポートしています。 詳細については、以下のドリフト指標のサポートを参照してください。 |
3 | 有用性指標 | DataRobotは置換の有用性指標のみをサポートしています。 有用性指標は、トレーニングデータで最も影響の大きい特徴量を測定します。 |
4 | X 個の除外特徴量 |
ドリフトステータス計算から特徴量(ターゲットを含む)を除外できます。 X 個の除外特徴量 をクリックすると、ダイアログボックスが開き、ドリフト追跡からの除外として設定する特徴量の名前を入力できます。 除外された特徴量はデプロイのドリフトステータスには影響しませんが、特徴量ドリフト対特徴量の有用性のチャートには引き続き表示されます。 |
5 | X 個のスター付き特徴量 |
最初は有用性が低く割り当てられていた場合でも、有用性が高く扱われるように特徴量を設定します。 X 個のスター付き特徴量 をクリックすると、ダイアログボックスが開き、有用性高(スター)として設定する特徴量の名前を入力できます。 追加されると、これらの特徴量には高い有用性が割り当てられます。 有用性のしきい値は無視されますが、特徴量ドリフト対特徴量の有用性のチャートには引き続き表示されます。 |
6 | ドリフトしきい値 | ドリフト指標のしきい値を設定します。 ドリフトのしきい値が変更されると、特徴量ドリフト対特徴量の有用性のチャートが更新され、変更が反映されます。 |
7 | 有用性しきい値 | 有用性指標のしきい値を設定します。 有用性指標は、トレーニングデータで最も影響の大きい特徴量を測定します。 ドリフトのしきい値が変更されると、特徴量ドリフト対特徴量の有用性のチャートが更新され、変更が反映されます。 |
8 | 「注意」/「失敗」のしきい値 | 「注意」()と「失敗」()のドリフトステータスをトリガーする値を設定します。 |
備考
しきい値の変更は、デプロイの履歴全体にわたって予測が行われる期間に影響します。 これらの更新されたしきい値は、データドリフトタブでのパフォーマンス監視のビジュアライゼーションに反映されます。
ドリフト指標のサポート
DataRobot UIはPSI(Population Stability Index)指標のみをサポートしますが、DataRobot APIはカルバックライブラー情報量、ヘリンガー距離、コルモゴロフ–スミルノフ、ヒストグラム交差、ワッサースタイン距離、イェンセンシャノン情報量をサポートします。 さらに、Python APIクライアントを使用すると、 サポート対象の指標のリストを取得できます。