3.10.4 ML_PREDICT_ROW

ML_PREDICT_ROWJSON为格式中 指定的一行或多行未标记数据生成预测。ML_PREDICT_ROW 使用SELECT 语句调用。

需要加载模型才能运行 ML_PREDICT_ROW。请参阅第 3.9.3 节,“加载模型”

ML_PREDICT_ROW 语法

SELECT ML_PREDICT_ROW(input_data, model_handle);

ML_PREDICT_ROW 参数:

  • input_data:指定要为其生成预测的数据。可以明确指定单行数据的JSON格式:

    SELECT sys.ML_PREDICT_ROW(JSON_OBJECT("column_name", value, "column_name", value, ...), 
      model_handle);

    ML_PREDICT_ROW 可以通过将列指定为格式中的键值对JSON 并从表中选择来对多行数据运行:

    SELECT sys.ML_PREDICT_ROW(JSON_OBJECT("output_col_name", schema.`input_col_name`, 
    output_col_name", schema.`input_col_name`, ...), model_handle) FROM input_table_name LIMIT N;
  • model_handle:指定模型句柄或包含模型句柄的会话变量。

语法示例

  • ML_PREDICT_ROW 在单行数据上 运行 :

    SELECT sys.ML_PREDICT_ROW(JSON_OBJECT("sepal length", 7.3, "sepal width", 2.9, 
    "petal length", 6.3, "petal width", 1.8), @iris_model);
  • ML_PREDICT_ROW 在从输入表中选择的五行数据上 运行 :

    SELECT sys.ML_PREDICT_ROW(JSON_OBJECT("sepal length", iris_test.`sepal length`, 
    "sepal width", iris_test.`sepal width`, "petal length", iris_test.`petal length`, 
    "petal width", iris_test.`petal width`), @iris_model) 
    FROM ml_data.iris_test LIMIT 5;