类别:

模型监视器函数

MODEL_MONITOR_PERFORMANCE_METRIC

模型监视器 获取性能指标。每个模型监视器监控一个机器学习模型。

另请参阅:

有关更多信息,请参阅 查询监控结果

语法

MODEL_MONITOR_PERFORMANCE_METRIC(<model_monitor_name>, <performance_metric_name>,
    [, <granularity> [, <start_time>  [, <end_time> ] ] ] )
Copy

实参

必填:

MODEL_MONITOR_NAME

用于计算指标的模型监视器名称。

有效值:模型监视器名称字符串。

模型监视器名称字符串。它可以是一个简单或完全限定的名称。

METRIC_NAME

性能指标的名称。

如果模型监视器连接到回归模型,则有效值包括:

  • 'RMSE'

  • 'MAE'

  • 'MAPE'

  • 'MSE'

如果模型监视器连接到二进制分类模型,则有效值包括:

  • 'ROC_AUC'

  • 'CLASSIFICATION_ACCURACY'

  • 'PRECISION'

  • 'RECALL'

  • 'F1_SCORE'

可选:

GRANULARITY

正在查询的时间范围的粒度。默认值为 1 DAY

有效值:模型监视器名称字符串。

  • '<num> DAY'

  • '<num> WEEK'

  • '<num> MONTH'

  • '<num> QUARTER'

  • '<num> YEAR'

  • 'ALL'

  • NULL

START_TIME

用于计算指标的时间范围的起始点。默认值为当前时间前 60 天,每次调用该函数时都会计算。

有效值:模型监视器名称字符串。

时间戳表达式或 NULL

END_TIME

用于计算指标的时间范围的终点。默认值是当前时间,每次调用该函数时都会计算。

有效值:模型监视器名称字符串。

时间戳表达式或 NULL

返回

描述

示例值

EVENT_TIMESTAMP

时间范围开始的时间戳。

2024-01-01 00:00:00.000

METRIC_VALUE

指定时间范围内的指标值。

0.5

COUNT_USED

用于计算指标的记录数。

100

COUNT_UNUSED

从指标计算中排除的记录数。

10

METRIC_NAME

已计算的指标名称。

ROC_AUC

SEGMENT_COLUMN

Name of the segment column used in the metric calculation.

EXAMPLE_COLUMN_NAME

SEGMENT_VALUE

计算指标的分段的值。

EXAMPLE_SEGMENT_VALUE

使用说明

如果您为 model_monitor_name 指定的值区分大小写或包含特殊字符或空格,请将它们放在双引号里。您必须将双引号放在单引号里。例如,'"<example_model_monitor_name>"'

如果您不使用双引号,则假定 model_monitor_name 不区分大小写。

为更大限度地减少架构变更的潜在影响,请更新您的查询,仅明确选择必要的列,而不是使用通配符 (*)。

一般要求

  • 模型监视器必须与支持请求的指标类型的模型相关联。

  • 模型监视器必须包含每个指标类型的必要数据,如下所述。

指标要求

以下是要获取回归指标所需的列:

  • RMSE:需要 prediction_scoreactual_score

  • MAE:需要 prediction_scoreactual_score

  • MAPE:需要 prediction_scoreactual_score

以下是要获取二进制分类指标所需的列:

  • ROC_AUC:需要 prediction_scoreactual_class

  • CLASSIFICATION_ACCURACY:需要 prediction_classactual_class

  • PRECISION:需要 prediction_classactual_class

  • RECALL:需要 prediction_classactual_class

  • F1_SCORE:需要 prediction_classactual_class

以下是要获取多类分类指标所需的列:

  • CLASSIFICATION_ACCURACY:需要 prediction_classactual_class

  • MACRO_AVERAGE_PRECISION:需要 prediction_classactual_class

  • MACRO_AVERAGE_RECALL:需要 prediction_classactual_class

  • MICRO_AVERAGE_PRECISION:需要 prediction_classactual_class

  • MICRO_AVERAGE_RECALL:需要 prediction_classactual_class

备注

对于二进制分类,您可以使用微平均精度和召回率指标,就像在多类别分类中使用分类精度一样。

错误情况

如果执行以下操作,可能会遇到错误:

  • 请求准确性指标,而不设置相应的预测列或实际列。

  • 无法在 actual_scoreactual_class 列中提供数据。

示例

以下示例从模型监视器获取一天期间的均方根误差 (RMSE)。

SELECT * FROM TABLE(MODEL_MONITOR_PERFORMANCE_METRIC(
'MY_MONITOR', 'RMSE', '1 DAY', TO_TIMESTAMP_TZ('2024-01-01'), TO_TIMESTAMP_TZ('2024-01-02'))
)
Copy

以下示例从模型监视器获取过去 30 天的均方根误差 (RMSE):

SELECT * FROM TABLE(MODEL_MONITOR_PERFORMANCE_METRIC(
'MY_MONITOR', 'RMSE', '1 DAY', DATEADD('DAY', -30, CURRENT_DATE()), CURRENT_DATE())
)
Copy
语言: 中文