我使用R运行h2o自动函数,如帮助和文档页面(由typing ?h2o.automl访问)中所描述的那样。该脚本如下:
library(h2o)
h2o.init()
votes_path <- system.file("extdata", "housevotes.csv", package = "h2o")
votes_hf <- h2o.uploadFile(path = votes_path, header = TRUE)
aml <- h2o.automl(y = "Class", training_frame = votes_hf, max_runtime_secs = 30)在h2o完成它的学习阶段之后,我可以使用
auc <- as.vector(aml@leaderboard[,"auc"])然后,我保存我的会话以供以后使用
save.image("automl_models.RData")问题是,在h2o实例更改后,auc检索不再成功,原因是,例如,h2o关闭函数已经触发或R会话已经关闭。即使在我使用h2o重新激活h2o.init()实例之后,仍然会发生这种情况。我现在所做的就是保存h2o.automl()在完成学习后提供的每一款车型。
当我试图访问auc时,错误消息是:
ERROR: Unexpected HTTP Status code: 400 Bad Request (url = http://localhost:54321/99/Rapids)
Error in .h2o.doSafeREST(h2oRestApiVersion = h2oRestApiVersion, urlSuffix = page, :
ERROR MESSAGE:
Name lookup of 'RTMP_sid_978c_5' failed我想知道这是否是正确的方法,或者我仍然有可能通过只加载保存在R环境中的h2o.automl()变量来访问h2o结果。我的系统是:
H2O cluster version: 3.23.0.4468
R Version: R version 3.6.0 (2019-04-26)谢谢。
发布于 2019-11-01 15:37:01
R环境实际上并不包含H2O-3模型。
R只是H2O的前端.H2O-3后端是一个java进程,它在内存中存储数据和模型.
请参阅这里的图片,了解R前端和H2O-3 java后端是如何交互的:
因此,您需要使用h2o.saveModel和h2o.loadModel方法将它们保存到磁盘或从磁盘中还原:
如果不这样做,第二次调用h2o.init() (假设java进程尚未运行)将只具有一个“空白”的H2O-3 java进程,而内存中没有任何内容。
https://stackoverflow.com/questions/58653362
复制相似问题