ML_PREDICT函数用于预测结构化数据,常见于分类、回归等传统机器学习任务。
命令格式
STRING|STRUCT ML_PREDICT(<model_name>, <version_name>, col1,col2,...);参数说明
model_name:必填。待使用的模型名,支持模型的model_type为
BOOSTED_TREE_REGRESSOR或BOOSTED_TREE_CLASSIFIER。version_name:必填。待使用的模型版本名。如果调用默认version,支持直接输入
DEFAULT_VERSION。col1,col2,...:必填。参与预测的输入列。其类型、顺序及个数必须和模型定义时保持一致,否则会报错。
返回值说明
当模型model_type为
BOOSTED_TREE_REGRESSOR(回归模型)时,返回STRING类型的结果列,作为模型的预测结果。当模型model_type为
BOOSTED_TREE_CLASSIFIER(分类模型)时,返回STRUCT类型的结果列,具体格式为STRUCT<label:STRING, probs:ARRAY(prob:FLOAT)>,其中STRUCT的第一个字段
label,代表本行数据预测的分类结果。STRUCT的第二个字段
probs,代表每类结果预测的概率值。
使用示例
示例1:调用已经创建好的名为demo_model_xgboost_regressor的XGBoost回归模型,如暂未创建,需先创建模型,详细步骤参考场景实践:使用MaxCompute进行XGboost模型训练和预测,创建完成后,按照如下示例,输入对应的要预测的数据。
SELECT ML_PREDICT(demo_model_xgboost_regressor,v01,0.22438f,0f,9.69f,0,0.585f,6.027f,79.7f,2.4982f,6.123f,391f,19.2f,14.33f); -- 返回20.03961。示例2:调用已经创建好的名为test_xgboost_classifier的XGBoost分类模型,如暂未创建,需先创建模型,示例请参考创建与删除模型,输入对应的要预测的数据。
SELECT ML_PREDICT(test_xgboost_classifier,v1,1,2,3,4); -- 返回{label:0, probs:[0.9266666, 0.03781649, 0.03551693]}。
该文章对您有帮助吗?