【发布时间】:2016-12-11 05:09:15
【问题描述】:
我已经运行了 h2o deeplearning 并获得了如下模型
best_model<- h2o.deeplearning( activation = "RectifierWithDropout",
hidden = c(200, 200, 200, 200, 200),
hidden_dropout_ratio = c(0.1, 0.1, 0.1, 0.1, 0.1),
loss = "CrossEntropy",
l1 = 1e-5,
epochs = EPOCHS,
distribution = "multinomial",
seed = 5000,
balance_classes = TRUE,
y = c("Churn"),
x = columns,
validation_frame = churn_validation,
training_frame = churn_training
)
现在我尝试使用这样的测试数据对其进行测试
churn_prediction <- h2o.predict(best_model, my_test)
我收到此错误:
Error in chk.H2OFrame(x) : must be an H2OFrame
有什么建议吗?
编辑:文档中的示例似乎工作正常
library(h2o)
h2o.init()
iris.hex <- as.h2o(iris)
iris.dl <- h2o.deeplearning(x = 1:4, y = 5, training_frame = iris.hex)
# now make a prediction
predictions <- h2o.predict(iris.dl, iris.hex)
【问题讨论】:
-
看起来 my_test 不是 H2OFrame。您是否将 my_test 转换为 h2oframe?
-
@phiver 文档示例表明我们可以直接使用深度学习函数的输出。不需要显式转换。所以我不确定这里出了什么问题。
-
我在这里使用 phiver,my_test 必须是 H2OFrame。如果您不同意,请发布确切的文档参考,让您有不同的想法和/或创建一个可重复的示例。
-
抱歉,phiver 和 jmuhlenkamp 是对的。我忽略了应该转换为 h2o 框架的 my_test 变量
标签: r deep-learning h2o