【发布时间】:2017-08-21 16:36:02
【问题描述】:
我正在使用 h2o 和 R 在大型(约 600 万)行数据集和约 50 个输出级别上训练随机森林。尽管进度条达到 100%,但控制台(和处理器!)仍然很忙并且挂了一个多小时(到目前为止!)。绝对不是资源限制,我有 120GB 的 RAM 和几十个内核。
考虑到问题的性质,很难给出一个完全可重复的示例,但有 35 个变量,其中一半是因子,我通过 R 运行模型训练,具有以下选项:
rforest <- h2o.randomForest(y = y.var
, x = x.vars
, training_frame = trainData.h2o
, validation_frame = testData.h2o
, ntrees = 100
, stopping_rounds = 3
, seed = 42
, model_id = modCode
, mtries = -1)
请问有没有人遇到过类似的问题/有解释/知道解决方法?
【问题讨论】:
-
你的因子有多少个级别?有成百上千层的吗?您是否使用足够的 RAM 启动了 H2O 集群?除非您指定更大的值,否则默认为 4GB。
-
只有一个超过一打,也就是几百个。 H2O 服务器在启动时分配了 100GB。
-
接下来要尝试的步骤是:使用 Flow,查看 Admin->View Logs 是否有任何可疑之处。查看 Admin->Profiler 和 Admin->Stack Trace 看看发生了什么。
-
我知道这是一个老问题,但是如果您不指定 max_run_time 参数,我发现 GridSearch 进度条非常不准确 - 它似乎以对数方式移动 - 如果我如果每 5 分钟更新一次进度,它看起来像 50%、75%、90%、95%、96%、97%、97%、97% .....