你没有说你是否用3.18对模型进行了重新训练。通常,H2O只保证主要版本H2O之间的模型兼容性。如果您没有重新培训模型,这可能就是XGBoost不能正常工作的原因。如果您已经用3.18对模型进行了重新培训,而XGBoost仍然不起作用,那么请发布一个可复制的示例,我们将进一步检查。
编辑:
我正在添加可复制的示例(与您的代码和此代码的唯一区别是我没有使用
fold_column
此处)。这在3.18.0.2上运行良好。如果没有一个产生错误的可复制示例,我将无法进一步帮助您。
library(h2o)
h2o.init()
# Import a sample binary outcome train set into H2O
train <- h2o.importFile("https://s3.amazonaws.com/erin-data/higgs/higgs_train_10k.csv")
# Identify predictors and response
y <- "response"
x <- setdiff(names(train), y)
# For binary classification, response should be a factor
train[,y] <- as.factor(train[,y])
xgb <- h2o.xgboost(x = x,
y = y,
seed = 1,
training_frame = train,
keep_cross_validation_predictions = TRUE,
eta = 0.01,
max_depth = 3,
sample_rate = 0.8,
col_sample_rate = 0.6,
ntrees = 500,
reg_lambda = 0,
reg_alpha = 1000,
distribution = 'bernoulli')