我试图用h2o过度填充GBM(我知道它很奇怪,但我需要这个来说明一点)。所以我增加了树的max_depth和收缩率,并禁用了停止标准:
overfit <- h2o.gbm(y=response
, training_frame = tapp.hex
, ntrees = 100
, max_depth = 30
, learn_rate = 0.1
, distribution = "gaussian"
, stopping_rounds = 0
, distribution = "gaussian"
)
过度拟合效果很好,但是我注意到在第64棵树之后训练错误没有改善。你知道为什么吗 ?如果我理解了充分提升的概念,随着树木数量的增加,训练误差应该收敛到0。
有关我的数据的信息: 观察量约为100万 10个变量 响应变量是定量的。
祝你有个美好的一天!
答案 0 :(得分:0)
如果0.1学习率不适合你,我建议降低学习率,如0.01或0.001。虽然你声明训练错误在第64页之后停止减少,但我仍然建议尝试添加更多的树,至少1000-5000,特别是如果你尝试较慢的学习速率。
答案 1 :(得分:0)
您是否尝试降低min_split_improvement参数? 1e-5的默认值已经是微观的,但在拥有一百万行时是相关的。 我想64号之后的所有树木(在你的例子中)都是微不足道的?