LIFT_TABLE

返回一个对比机器学习模型的可预测质量的表。此函数也被称为提升图

语法

LIFT_TABLE ( targets, probabilities
        [ USING PARAMETERS [num_bins = num‑bins] [, main_class = class‑name ] ] )
OVER()

参数

参数

num_bins

该整数值用于确定决策边界的数量。决策边界以 0 和 1(包含)之间的等距间隔设置。该函数在每个 num‑bin + 1 点处计算一次表。

默认值:100

main_class

仅当 targets 是 CHAR/VARCHAR 类型时使用,请指定要与 probabilities 实参关联的类。

示例

对输入表 mtcars 执行 LIFT_TABLE

=> SELECT LIFT_TABLE(obs::int, prob::float USING PARAMETERS num_bins=2) OVER()
    FROM (SELECT am AS obs, PREDICT_LOGISTIC_REG(mpg, cyl, disp, drat, wt, qsec, vs, gear, carb
                                                    USING PARAMETERS model_name='myLogisticRegModel',
                                                    type='probability') AS prob
             FROM mtcars) AS prediction_output;
 decision_boundary | positive_prediction_ratio |       lift       |                   comment
-------------------+---------------------------+------------------+---------------------------------------------
                 1 |                         0 |              NaN |
               0.5 |                   0.40625 | 2.46153846153846 |
                 0 |                         1 |                1 | Of 32 rows, 32 were used and 0 were ignored
(3 rows)

第一列 decision_boundary 指示将响应值分类为 0 还是 1 的分界点。例如,对于每行,如果 prob 大于或等于 decision_boundary,将响应值分类为 1。如果 prob 小于 decision_boundary,将响应值分类为 0。

第二列中,positive_prediction_ratio 表示分类 1 中使用相应 decision_boundary 值进行争取分类的样本比例。

第三列中,lift 函数用正确或错误分类为类 1 的行百分比来除 positive_prediction_ratio