【问题标题】:h2o - Could not find or load main class code 7 errorh2o - 找不到或加载主类代码 7 错误
【发布时间】:2020-07-19 03:10:57
【问题描述】:

我用下面的代码在 R 中构建了一个 GBM 模型。

gbm_model_sample <- h2o.gbm(x = c(1:78,80:688), y =79, training_frame = train.h2o, seed = 0xDECAF,ntrees = 1000, max_depth = 4,learn_rate = 0.1,stopping_rounds=50,min_rows = 50,distribution ="bernoulli",ignore_const_col=F,
                   histogram_type='QuantilesGlobal',sample_rate=0.7,col_sample_rate=0.7,keep_cross_validation_models = T)

模型构建完成,我将 Mojo 对象保存为:

h2o.download_mojo(gbm_model_sample,get_genmodel_jar = T)

在我的工作目录中保存为“GBM_model_R_1586221409024_1.zip”。

现在我使用函数h2o.mojo_predict_csv 和/或h2o.mojo_predict_df 来预测测试数据帧,这是我得到如下错误的地方

h2o.mojo_predict_csv

h2o.mojo_predict_csv('Test_sample_.csv','GBM_model_R_1586221409024_1.zip',genmodel_jar_path = 'h2o-genmodel.jar',verbose = F)

h2o.mojo_predict_df

h2o.mojo_predict_df(test, 'GBM_model_R_1586221409024_1.zip',verbose = T)

当我使用相同的测试并在 R h2o.predict 中使用它时,它完全可以正常工作,但是之前对我来说工作正常的上述两个代码已经开始出现上述错误。我加载的包如下。是什么导致了这个错误?我还没有设法在网上找到很多关于此的信息。

library(rJava)
require(h2o)
require(readr)
require(dplyr)
require(forcats)
require(ggplot2)
require(scales)
require(caret)
require(stringr)
library(data.table)
require(getPass)

【问题讨论】:

    标签: java r h2o gbm


    【解决方案1】:

    虽然听起来很愚蠢,但 h2o 中似乎存在一个错误,当工作目录集的名称中有空格时会发生这种错误。例如"c:\test folder\model\",如果你把它改成"c:\test_folder\model\"或者"c:\testfolder\model\",那么我们就不会得到上面的错误。H2o很难将文件写入那些地址之间有空格的目录。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-28
      • 2014-11-18
      • 1970-01-01
      • 2013-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多