CREATE MODEL MONITOR

現在のスキーマまたは指定したスキーマの モデルモニター を作成または置換します。

こちらもご参照ください。

ALTER MODEL MONITORSHOW MODEL MONITORSDESCRIBE MODEL MONITORDROP MODEL MONITOR

構文

CREATE [ OR REPLACE ] MODEL MONITOR [ IF NOT EXISTS ] <monitor_name> WITH
    MODEL = <model_name>
    VERSION = '<version_name>'
    FUNCTION = '<function_name>'
    SOURCE = <source_name>
    WAREHOUSE = <warehouse_name>
    REFRESH_INTERVAL = '<refresh_interval>'
    AGGREGATION_WINDOW = '<aggregation_window>'
    TIMESTAMP_COLUMN = <timestamp_name>
    [ BASELINE = <baseline_name> ]
    [ ID_COLUMNS = <id_column_name_array> ]
    [ PREDICTION_CLASS_COLUMNS = <prediction_class_column_name_array> ]
    [ PREDICTION_SCORE_COLUMNS = <prediction_column-name_array> ]
    [ ACTUAL_CLASS_COLUMNS = <actual_class_column_name_array> ]
    [ ACTUAL_SCORE_COLUMNS = <actual_column_name_array> ]
Copy

必須パラメーター

monitor_name

モデルモニターの識別子を指定します。モニターが作成されるスキーマで一意であり、モニターされるモデルと同じスキーマにする必要があります。

モニター識別子が完全修飾されていない場合(db_name.schema_name.name または schema_name.name の形式)、コマンドはセッションの現在のスキーマにモデルを作成します。

また、識別子はアルファベット文字で始まる必要があり、識別子文字列全体が二重引用符で囲まれていない限り、スペースや特殊文字を含めることはできません(例: "My object")。二重引用符で囲まれた識別子も大文字と小文字が区別されます。

詳細については、 識別子の要件 をご参照ください。

MODEL = model_name

モニターするモデルの名前。モニターが作成されたのと同じスキーマにする必要があります。

VERSION = 'version_name'

モニターするモデルのバージョン名前。

FUNCTION = function_name

モニターするモデルバージョンにある特定の関数の名前。

SOURCE = source_name

特徴量、推論、およびグランドトゥルースのラベルを含むソーステーブルまたはビューの名前。

WAREHOUSE = warehouse_name

モニター内部の演算処理に使用するSnowflakeウェアハウスの名前。

REFRESH_INTERVAL = 'refresh_interval'

モニターが内部状態をリフレッシュする間隔。値は '1 day' などの、期間を表す文字列でなければなりません。サポートされる単位は、seconds、minutes、hours、days、weeks、months、quarters、およびyearsです。単数形("hour")でも複数形("hours")でもかまいませんが、省略形は使用できません。

AGGREGATION_WINDOW = 'aggregation_window'

モニターがデータを集計するウィンドウ。値は '1 day' などの、期間を表す文字列でなければなりません。日間のみがサポートされています。間隔名は単数形(「day」)でも複数形(「days」)でもかまいませんが、省略することはできません。

TIMESTAMP_COLUMN = timestamp_name

タイムスタンプを含むソースデータにある列の名前。型は TIMESTAMP_NTZ または DATE にする必要があります。

オプションのパラメーター

BASELINE = baseline_name

ドリフトを計算するために使用される SOURCE のようなデータのスナップショットを含むベースラインテーブルまたはビューの名前。このデータのスナップショットは、モニターオブジェクト内に埋め込まれます。このパラメーターはオプションですが、設定されていない場合、モニターはドリフトを検出できません。

ID_COLUMNS = id_column_name_array

合わせてソースデータの各行を一意に識別する文字列名の配列。 ARRAY 定数 をご参照ください。

注釈

少なくとも1つの予測列(予測スコアまたは予測クラスのいずれか)が必須です。

  • 分類モデルの場合: 予測はスコアでもクラスでもかまいません。

  • 回帰モデルの場合: 予測と実績の両方

PREDICTION_CLASS_COLUMNS = prediction_class_column_name_array

データソース内にあるすべての予測クラス列の名前を指定する文字列の配列。 ARRAY 定数 をご参照ください。列は、型 NUMBER にする必要があります。

PREDICTION_SCORE_COLUMNS = prediction_column_name_array

データソース内にあるすべての予測スコア列の名前を指定する文字列の配列。 ARRAY 定数 をご参照ください。列は、型 NUMBER にする必要があります。

ACTUAL_CLASS_COLUMNS = actual_class_column_name_array

データソース内にあるすべての実際クラス列の名前を指定する文字列の配列。 ARRAY 定数 をご参照ください。列は、型 NUMBER にする必要があります。

ACTUAL_SCORE_COLUMNS = actual_column_name_array

データソース内にあるすべての実際スコア列の名前を指定する文字列の配列。 ARRAY 定数 をご参照ください。列は、型 NUMBER にする必要があります。

アクセス制御の要件

この操作の実行に使用される ロール には、少なくとも次の 権限 が必要です。

権限

オブジェクト

メモ

OWNERSHIP

モデルモニター

OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege).

CREATE MODEL MONITOR

スキーマ

SELECT

SOURCE パラメーターで指定されたテーブルまたはビュー

USAGE

WAREHOUSE パラメーターで指定されたウェアハウス

USAGE

MODEL パラメーターで指定されたモデル

スキーマ内のオブジェクトに対して操作を実行するには、親データベースとスキーマに対する USAGE 権限が必要です。

指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。

セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。

使用上の注意

パラメーターには以下の要件が適用されます。

  • モデルタスクは tabular_binary_classification または tabular_regression にする必要があります。

  • 複数出力モデルは現在サポートされていません。予測列と実際列は配列ですが、配列の要素は1つのみにする必要があります。

  • 少なくとも1つの予測列を指定する必要があります。

  • 実際列は任意ですが、指定しないと精度メトリクスは計算されません。

  • 列はすべてのパラメーターで1回のみ指定できます(例: ID 列を予測列にもすることはできません)。

モニターできる特徴量の数は500個に制限されています。

MODEL MONITOR インスタンスの基本構成(モニターするモデルや使用するデータソースを含む)を、モニター作成後に変更することはできません。 ALTER MODEL MONITOR を使って変更できるのは、いくつかのオプションのみです。モニターの構成を変更するには、インスタンスをドロップして新しいインスタンスを作成します。

複製 は、 CUSTOM_CLASSIFIER クラスのインスタンスに対してのみサポートされます。