PREDICT_NAIVE_BAYES_CLASSES

对输入关系应用 Naive Bayes 模型并返回类的概率:

  • VARCHAR predicted 列包含概率最高的类标签。

  • 多个 FLOAT 列,其中第一个 probability 列包含预测列中指定的类的概率。其他列包含属于 classes 参数中指定的每个类的概率。

语法

PREDICT_NAIVE_BAYES_CLASSES ( predictor‑columns
        USING PARAMETERS model_name = 'model‑name'
            [, key_columns = 'key‑columns']
            [, exclude_columns = 'excluded‑columns]
            [, classes = 'classes']
            [, match_by_pos = match‑by‑position] )
OVER( [window-partition-clause] )

参数

predictor‑columns
输入关系中要使用的列的逗号分隔列表,或者使用星号 (*) 选择所有列。

参数

model_name

模型的名称(不区分大小写)。

key_columns

用于标识输出行的预测工具列名称的逗号分隔列表。要排除这些和其他预测工具列用于预测,请将其包含在参数 exclude_columns 的实参列表中。

exclude_columns
要从处理中排除来自 predictor‑columns 列的逗号分隔列表。
classes
以逗号分隔的模型类标签列表。分类器预测属于此给定类的概率。值区分大小写。
match_by_pos
布尔值,指定预测指标列如何匹配模型特征:
  • false (默认值):按名称匹配。

  • true:按预测指标列列表中列的位置匹配。

示例

=> SELECT PREDICT_NAIVE_BAYES_CLASSES (id, vote1, vote2 USING PARAMETERS
model_name='naive_house84_model',key_columns='id',exclude_columns='id',
classes='democrat, republican', match_by_pos='false')
        OVER() FROM house84_test;
 id  | Predicted  |    Probability    |     democrat      |    republican
-----+------------+-------------------+-------------------+-------------------
  21 | democrat   | 0.775473383353576 | 0.775473383353576 | 0.224526616646424
  28 | democrat   | 0.775473383353576 | 0.775473383353576 | 0.224526616646424
  83 | republican | 0.592510497724379 | 0.407489502275621 | 0.592510497724379
 102 | democrat   | 0.779889432167111 | 0.779889432167111 | 0.220110567832889
 107 | republican | 0.598662714551597 | 0.401337285448403 | 0.598662714551597
 125 | republican | 0.598662714551597 | 0.401337285448403 | 0.598662714551597
 132 | republican | 0.592510497724379 | 0.407489502275621 | 0.592510497724379
 136 | republican | 0.592510497724379 | 0.407489502275621 | 0.592510497724379
 155 | republican | 0.598662714551597 | 0.401337285448403 | 0.598662714551597
 174 | republican | 0.592510497724379 | 0.407489502275621 | 0.592510497724379
...
(1 row)

另请参阅