本文为您介绍POJO部署预测的部署流程。

操作步骤

  1. 新建文件夹。
    在模型部署所在的机器执行如下命令。
    mkdir gdb_automl
    说明 以下步骤中的文件均放在gdb_automl文件夹下。
  2. 下载依赖包。
    1. 模型详情页面,单击下载模型2.7
    2. 将下载的依赖包gdbautoml-genmodel.jar,放在gdb_automl文件夹下。
  3. 下载模型部署包。
    1. 模型详情页面,单击下载模型部署包(MOJO)2.6
    2. 下载完成后的模型部署包文件名为“模型ID.java”,当前示例中模型部署包的文件名为“GBM_2_AutoML_20210726_081632.java”,放在gdb_automl文件夹下。
  4. 编写Java类。
    新建main.java文件,按照压缩包中polo/main.java新建文件,命名为main.java,其中类名和预测数据需要根据模型进行修改。
    import java.io.*;
    import hex.genmodel.easy.RowData;
    import hex.genmodel.easy.EasyPredictModelWrapper;
    import hex.genmodel.easy.prediction.*;
    // 类名为步骤三中下载的文件名
    public class main {
      private static String modelClassName = "GBM_2_AutoML_20210726_081632";
      public static void main(String[] args) throws Exception {
        hex.genmodel.GenModel rawModel;
        rawModel = (hex.genmodel.GenModel) Class.forName(modelClassName).newInstance();
        EasyPredictModelWrapper model = new EasyPredictModelWrapper(rawModel);
        System.out.println(model);
        //数据根据实际预测的数据进行修改
        RowData row = new RowData();
         row.put("V1", "是");
         row.put("V2", "互联网公共服务平台");
         row.put("V3", "GC3");
         row.put("V4", "DB4");
         row.put("V5", "否");
         row.put("V6", 49653.0753);
         row.put("V7", 2419006.0264);
         row.put("V8", "互联网游戏");
         row.put("V9", "是");
         row.put("V10", "是");
         row.put("V11", "是");
         row.put("V12", "是");
         row.put("V13", "是");
         row.put("V14", "是");
         row.put("V15", 500000.0);
        BinomialModelPrediction p = model.predictBinomial(row);
        System.out.println("The prediction result is: " + p.label);
        System.out.print("Class probabilities: ");
        for (int i = 0; i < p.classProbabilities.length; i++) {
          if (i > 0) {
            System.out.print(",");
          }
          System.out.print(p.classProbabilities[i]);
        }
        System.out.println("");
      }
    }
  5. 编译执行。
    1. 执行以下命令。
      javac -cp gdbautoml-genmodel.jar -J-Xmx2g -J-XX:MaxPermSize=128m GBM_2_AutoML_20210726_081632.java  main.java
      说明 其中GBM_2_AutoML_20210726_081632.java要修改为步骤三中下载的模型部署包文件名。
    2. 执行以下命令。
      java -cp .:gdbautoml-genmodel.jar main
  6. 返回结果。
    返回结果如下所示,返回格式可在main.java文件中修改。
    The prediction result is: 0
    Class probabilities: 0.9607,0.0392