繁体   English   中英

训练H2O模型时忽略ID变量

[英]Ignore ID variable when training an H2O model

如果有人可以告诉我如何在创建(培训和测试模型)时将ID变量保留为指标变量而不是预测变量,那将是非常不错的。 我正在通过R使用H2o。感谢有人可以回应他们的想法。

我认为术语“指标变量”的更常用用法是指二进制预测变量(而不是唯一标识符),但这听起来像是在询问是否可以仅将ID列保留在数据框中而不使用它。用于预测。

这在H2O中很容易做到-您使用x参数来指示应将哪些列用作预测变量,因此,如果不使用ID列,则它将忽略它。 虹膜数据示例:

library(h2o)
h2o.init()

iris$ID <- 1:nrow(iris)  #add ID column
train <- as.h2o(iris)
fit <- h2o.gbm(x = 1:4, y = 5, training_frame = train)  #fit a GBM

通过查看变量的重要性,您可以看到未使用ID:

> h2o.varimp(fit)

Variable Importances: 
      variable relative_importance scaled_importance percentage
1  Petal.Width          258.856262          1.000000   0.563269
2 Petal.Length          195.480728          0.755171   0.425364
3  Sepal.Width            2.891532          0.011170   0.006292
4 Sepal.Length            2.332296          0.009010   0.005075

如果您根据测试集进行预测(这里我仅将训练集用于演示目的),那么该模型已经知道也将忽略ID列。

> pred <- h2o.predict(fit, train)
> head(pred)
  predict    setosa   versicolor    virginica
1  setosa 0.9989301 0.0005656447 0.0005042210
2  setosa 0.9985183 0.0006462680 0.0008354416
3  setosa 0.9989298 0.0005663071 0.0005038929
4  setosa 0.9989310 0.0005660443 0.0005029535
5  setosa 0.9989315 0.0005649384 0.0005035886
6  setosa 0.9983457 0.0011517334 0.0005025218

暂无
暂无

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

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