无法在automl()用例中加载非获胜模型

时间:2017-12-05 14:55:00

标签: r h2o automl

我正在使用automl函数和下面显示的代码段

h2o.init()
h2o_train = as.h2o(train)
h2o_test = as.h2o(test)
aml <- h2o.automl(x=x, y=y, training_frame=h2o_train, leaderboard_frame=h2o_test)
print(aml@leaderboard)  # view top models
print(getParms(aml@leader))  #  get related info for top1 model 

在阅读完文档后,我找不到如何为其他模型加载结果,排行榜显示了他们的 model_id 。如果我们可以加载这些模型,或至少看到它们的参数,那将是很有价值的。

2 个答案:

答案 0 :(得分:4)

您可以使用以下方法获取所有模型ID的列表:

> aml@leaderboard 

请注意输出如下:

                                               model_id      auc  logloss
1    DeepLearning_grid_0_AutoML_20171205_070022_model_1 0.808806 0.536941
2             GLM_grid_0_AutoML_20171205_070022_model_0 0.808672 0.524783
3 StackedEnsemble_BestOfFamily_0_AutoML_20171205_070022 0.797148 0.541090
4    DeepLearning_grid_0_AutoML_20171205_070022_model_2 0.793247 0.654405
5    StackedEnsemble_AllModels_0_AutoML_20171205_070022 0.788943 0.545078
6                 DeepLearning_0_AutoML_20171205_070022 0.783562 0.570281

之后,您可以使用h2o.getModel()API获取以下任何模型:

> aml6 = h2o.getModel("DeepLearning_0_AutoML_20171205_070022")
> aml6

以上将使您可以从AML排行榜访问model = 6。一旦您使用getModel()API中的model_id访问模型,任何H2O Model API都将起作用。

答案 1 :(得分:3)

要获得任何模型,您可以m <- h2o.getModel(model_id)model_id可以是排行榜中的任何模型ID。

要查看非默认参数列表,您可以执行h2o.getModel(model_id)@parametersh2o.getModel(model_id)@allparameters查看所有参数,包括默认值。

希望这有帮助。

-Navdeep