PREDICT_RF_CLASSIFIER_CLASSES
对输入关系应用随机森林模型并返回类的概率:
-
VARCHAR
predicted
列包含投票(公民投票)排名最高的类标签。 -
多个 FLOAT 列,其中第一个
probability
列包含预测列中报告的类的概率。其他列包含classes
参数中指定的每个类的概率。 -
与参数
key_columns
中指定的匹配输入列具有相同值和数据类型的关键字列。
注意
预测类的选择取决于森林中决策树的公民投票。因此,在特殊情况下,预测类的计算概率可能不是最高的。语法
PREDICT_RF_CLASSIFIER_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_RF_CLASSIFIER_CLASSES(Sepal_Length, Sepal_Width, Petal_Length, Petal_Width
USING PARAMETERS model_name='myRFModel') OVER () FROM iris;
predicted | probability
-----------+-------------------
setosa | 1
setosa | 0.99
setosa | 1
setosa | 1
setosa | 1
setosa | 0.97
setosa | 1
setosa | 1
setosa | 1
setosa | 1
setosa | 0.99
...
(150 rows)
此示例显示了如何通过 match_by_pos
参数使用函数 PREDICT_RF_CLASSIFIER_CLASSES
:
=> SELECT PREDICT_RF_CLASSIFIER_CLASSES(Sepal_Length, Sepal_Width, Petal_Length, Petal_Width
USING PARAMETERS model_name='myRFModel', match_by_pos='true') OVER () FROM iris;
predicted | probability
-----------+-------------------
setosa | 1
setosa | 1
setosa | 1
setosa | 1
setosa | 1
setosa | 1
setosa | 1
setosa | 1
setosa | 1
setosa | 1
setosa | 1
...
(150 rows)s