Algorithm 使用H2O和评分的DRF模型预测

Algorithm 使用H2O和评分的DRF模型预测,algorithm,apache-spark,h2o,Algorithm,Apache Spark,H2o,我的目标是使用我拥有的训练、验证和测试数据集在H2O中创建DRF模型,并预测测试模型上的RMSE、R2、MSE等 下面是一段代码: DRFParameters rfParms = (DRFParameters) algParameter; rfParms._response_column = trainDataFrame._names[responseColumn(trainDataFrame)]; //The response column rfParms._train = trainDa

我的目标是使用我拥有的训练、验证和测试数据集在H2O中创建DRF模型,并预测测试模型上的RMSE、R2、MSE等

下面是一段代码:

DRFParameters rfParms = (DRFParameters) algParameter;
rfParms._response_column = trainDataFrame._names[responseColumn(trainDataFrame)]; //The response column 

rfParms._train = trainDataFrame._key;
//rfParms._valid = testDataFrame._key;
rfParms._nfolds = 5;
DRF job = new DRF(rfParms);
DRFModel drf = job.trainModel().get(); // Train the model
Frame pred = drf.score(testDataFrame); //Score the test
在这里,我不知道如何在得分后继续寻找预测(R2、RMSE、MSE、MAE等)


能否请您使用JAVA帮助进行H2O DRF建模和预测计算?

根据您的模型是回归模型、二项模型还是多项式模型,您必须使用ModelMetricsRegression.make()、
ModelMetricsBinomial.make()或
ModelMetricsMultinomic.make()中的一种。它们的签名略有不同——您可以在我们的Java文档中找到它们

对于
trainDataFrame
您可以从
drf
模型中获取它们,它位于
drf.\u输出中。\u training\u metrics
(您可能需要将其转换为适当的类型,因为这是一个通用的
ModelMetrics
)。如果您使用测试数据集作为验证框架,则可以从
drf.\u输出.\u验证\u度量
获取度量

@编辑:

DRFModel drf = job.trainModel().get(); // Train the model
Frame pred = drf.score(testDataFrame); //Score the test
ModelMetricsBinomial mm = ModelMetricsBinomial.make(preds.vec(2), trainDataFrame.vec(rfParms._response_column));
double auc = mm.auc();
double rmse = mm.rmse();
double r2 = mm.r2();
// etc.

你能简要介绍一下二项式的吗?我需要来自'pred'的R2 RMSE等((Frame pred=drf.score(testDataFrame);//为测试打分))还需要找到测试帧与模型的偏差。你介意再举一个代码示例吗?@RejoyMathew see edit,应该可以运行,但我自己没有运行。非常感谢您提供的快速响应。我还有一个问题:在模型的培训和评分之后,我如何找到功能重要的变量(在JAVA中)?