首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关闭h2o后访问h2o模型的问题

关闭h2o后访问h2o模型的问题
EN

Stack Overflow用户
提问于 2019-11-01 02:21:17
回答 1查看 269关注 0票数 1

我使用R运行h2o自动函数,如帮助和文档页面(由typing ?h2o.automl访问)中所描述的那样。该脚本如下:

代码语言:javascript
复制
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完成它的学习阶段之后,我可以使用

代码语言:javascript
复制
auc <- as.vector(aml@leaderboard[,"auc"])

然后,我保存我的会话以供以后使用

代码语言:javascript
复制
save.image("automl_models.RData")

问题是,在h2o实例更改后,auc检索不再成功,原因是,例如,h2o关闭函数已经触发或R会话已经关闭。即使在我使用h2o重新激活h2o.init()实例之后,仍然会发生这种情况。我现在所做的就是保存h2o.automl()在完成学习后提供的每一款车型。

当我试图访问auc时,错误消息是:

代码语言:javascript
复制
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结果。我的系统是:

代码语言:javascript
复制
H2O cluster version:        3.23.0.4468
R Version:                  R version 3.6.0 (2019-04-26)

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-01 15:37:01

R环境实际上并不包含H2O-3模型。

R只是H2O的前端.H2O-3后端是一个java进程,它在内存中存储数据和模型.

请参阅这里的图片,了解R前端和H2O-3 java后端是如何交互的:

  • http://docs.h2o.ai/h2o/latest-stable/h2o-docs/architecture.html#how-r-scripts-tell-h2o-to-ingest-data

因此,您需要使用h2o.saveModel和h2o.loadModel方法将它们保存到磁盘或从磁盘中还原:

  • http://docs.h2o.ai/h2o/latest-stable/h2o-docs/save-and-load-model.html#saving-and-loading-a-model

如果不这样做,第二次调用h2o.init() (假设java进程尚未运行)将只具有一个“空白”的H2O-3 java进程,而内存中没有任何内容。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58653362

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档