问题描述
我在网格(超参数)搜索方面遇到了一些困难。
我目前正在 R 中使用 h2o
(最新版本)。我的问题是当我指定一个带有 2 个超参数的笛卡尔网格进行测试时:
hyper_grid <- list(max_depth = c(1,2),ntrees = c(600,1000))
然后我使用函数 h2o.grid
启动搜索以获取我的网格,它正在为我构建一个包含 107 个模型的网格。此外,当我指定 "multinomial"
分布时,它没有考虑在内。
最后,我不明白为什么网格向我显示具有 100 棵树的“最佳模型”,而我要求创建具有 600 或 1000 棵树的模型,最大深度为 3,而我要求最大深度应该是1 或 2。
我的代码是:
hyper_grid <- list(max_depth = c(1,1000))
# perform grid search
grid <- h2o.grid(
algorithm = "gbm",grid_id = "gbm_grid1",x = predicteurs,y = "strategie",distribution = "multinomial",auc_type = "WEIGHTED_OVO",training_frame = train_nav_80,# Containing 80% of all data
validation_frame = valid_nav_80,# Containing 20% of all data
hyper_params = hyper_grid,seed = 1
)
# collect the results and sort by our model performance metric of choice
grid_perf <- h2o.getGrid(
grid_id = "gbm_grid1",sort_by = "auc",decreasing = F
)
grid_perf
我的结果是:
Grid ID: gbm_grid1
Used hyper parameters:
- max_depth
- ntrees
Number of models: 107,Number of Failed models: 0
Hyper-Parameter Search Summary: ordered by increasing auc
H2OBinomialMetrics: gbm
** Reported on validation data. **
MSE: 0.2284556
RMSE: 0.4779703
LogLoss: 0.6495512
Mean Per-Class Error: 0.346857
AUC: 0.7472901
AUCPR: 0.7680425
Gini: 0.4945802
R^2: 0.082338
### Best model : ###
- Number of trees = 100,- number_of_internal_trees = 100
- max_depth = 3
提前致谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)