Oracle PREDICTION_COST() 函数使用指南
Oracle PREDICTION_COST() 是一个内置机器学习函数,它结合预先关联的成本矩阵(Cost Matrix),计算若将当前记录判定为指定类别时所产生的预期成本(Expected Cost)。
在现实商业场景中,不同类别的预测错误代价往往极度不对称(例如:把欺诈交易误判为正常交易的损失,远大于把正常交易误判为可疑交易后进行二次短信确认的成本)。PREDICTION_COST() 帮助决策系统基于商业代价而非纯粹的概率阈值做出最优决策。
Oracle PREDICTION_COST() 语法
这里是 Oracle PREDICTION_COST() 函数的语法:
PREDICTION_COST(
model_name
[, class_value ]
[ USING { * | expr [ AS alias ] [, ... ] } ]
)
参数
model_name-
必需的。包含成本矩阵关联定义的分类机器学习模型名称。
class_value-
可选的。指定评估的目标类别。如果省略,则返回模型预测最佳分类时的最小成本。
USING ...-
传递给模型的输入特征。
返回值
返回一个 NUMBER 类型数值,代表预期的决策成本分值。分值越低,代表该决策的潜在误判损失越小。
Oracle PREDICTION_COST() 示例
基本用法:筛选出欺诈预期成本最低的决策方案
SELECT
txn_id,
PREDICTION(fraud_detection_model USING *) AS predicted_label,
PREDICTION_COST(fraud_detection_model USING *) AS min_cost,
PREDICTION_COST(fraud_detection_model, 'FRAUD' USING *) AS cost_if_fraud
FROM transactions
WHERE txn_id = 99881;
输出:
TXN_ID PREDICTED_LABEL MIN_COST COST_IF_FRAUD
---------- --------------- ---------- -------------
99881 NORMAL 0.12 4.50结论
PREDICTION_COST()结合了统计概率与商业成本,是金融风控、医疗诊断等敏感场景中最核心的决策支持函数。- 需确保模型训练或配置中通过
DBMS_DATA_MINING.ADD_COST_MATRIX正确绑定了成本矩阵。