繁体   English   中英

如何使用Python从H2O生成和保存POJO

[英]How to generate and save POJO from H2O using Python

我有一个使用Python在H2O中创建的模型。 我想生成该模型的POJO并保存。

假设我的模型称为model_rf。

我努力了:

h2o.save_model(model_rf, path='./pojo_test', force=False)

这将创建一个名为“ pojo_test”的目录,其中包含一堆二进制文件。 我想要一个Java文件,例如model_rf.java,它就是POJO本身。

我试过了:

h2o.download_pojo(model_rf, path='./pojo_test_2', get_jar = True)

给出了错误信息:

IOError: [Errno 2] No such file or directory: u'./pojo_test_2/model_rf.java'

我想念什么? 可能是一个愚蠢的问题,但我无法一生解决这个问题。

一切看起来都很好,就像您需要更改使用的path

不要使用h2o.save_model创建的目录,而h2o.save_model使用一个已知的目录并且知道该目录的路径。 作为第一个测试,您可以保存到桌面,例如使用

h2o.download_pojo(model_rf, path = '/Users/your_user_name/Desktop/', get_jar = True)

需要替换your_user_name的位置(这是假设您使用的是Mac)

这是一个示例,您可以从头开始尝试(首先使用h2o.cluster().shutdown()关闭h2o

     import h2o
     h2o.init()
     iris_df = h2o.import_file("https://s3.amazonaws.com/h2o-public-test-data/smalldata/iris/iris.csv")
     from h2o.estimators.glm import H2OGeneralizedLinearEstimator
     predictors = iris_df.columns[0:4]
     response_col = "C5"
     train,valid,test = iris_df.split_frame([.7,.15], seed =1234)
     glm_model = H2OGeneralizedLinearEstimator(family="multinomial")
     glm_model.train(predictors, response_col, training_frame = train, validation_frame = valid)
     h2o.download_pojo(glm_model, path = '/Users/your_user_name/Desktop/', get_jar = True)

再次在您需要替换your_user_name (假设您使用的是Mac)

(可能发生的情况:看起来像是第一次使用h2o.save_model将H2O模型保存到磁盘时,在运行原始h2o集群的位置创建了一个目录(检查是否要从其他位置连接到h2o集群),第二次尝试使用download_pojo保存模型时,它查看了当前目录,发现那里不存在'pojo_test2'。

当您运行h2o.save_model ,它将打印出创建新目录的完整路径。 查看该路径是否与当前目录相同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM