gbm.step,总平均偏差不会降低

时间:2017-11-23 11:36:15

标签: r gbm

我正在使用以下参数从dismo包运行gbm.step函数

 gbm_tmp <- dismo::gbm.step(data = data,
                               gbm.x = predictor_names ,
                               gbm.y = i,
                               #site.weights = weights,
                               max.trees = 10000,
                               var.monotone = mon_vec,
                               family = "gaussian", learning.rate = 0.0005,
                               bag.fraction = 0.7, n.folds = 10,      #n.trees=1100,
                               tree.complexity = 9,          prev.stratify = F, 
                               step.size = 25                                   )

然而,该模型最多可达500棵树然后停止。 “坚持偏差”与乞讨几乎处于同一水平。

另外,如果我增加n.trees,或学习率,或step.size我得到一个错误,我应该重新启动gbm函数学习率降低或step.size。

奇怪的是,我使用与其他y变量/ kpis相同的函数/参数和相同的数据/回归量,我没有遇到任何问题。

可以解释什么?我还可以尝试或调查其他任何内容吗?

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题(类似的模型设置,包括高斯误差分布,模型设置已经使用不同的响应变量) - 我有一个平线偏差,它停在50棵树(或任何最小n .trees我输入)。我发现减少我的响应变量的范围(在我的情况下,将单位从cm改为米,因此范围是0到14而不是0到1400)解决了这个问题。我不知道为什么。