【发布时间】:2018-11-05 20:30:29
【问题描述】:
在 Python 上使用 lightGBM,由于它没有足够的文档,我有一段时间无法解决这个问题。如果这里有有 lgb 经验的人,请帮我解决这几个问题。
- lgb.cv 在具有连续目标变量时不起作用。为什么?
- 当有客观的“回归”时,我可以将 boosting_type 设为“rf”(随机森林)吗?这个在图书馆打开的issue 有点证实我可以。想法?
-
如果我将“rf”参数替换为“gbdt”,下面是一段完全可以正常工作的代码
params = { "objective" : "regression", "metric" : "rmse", "num_leaves" : 150, "learning_rate" : 0.05, "bagging_fraction" : 0.6, "feature_fraction" : 0.7, "bagging_frequency" : 1, "bagging_seed" : 2018, "verbosity" : -1, 'max_depth':-1, "min_child_samples":20, "boosting":"rf"} model = lgb.train(params, lgtrain, 1000, valid_sets=[lgval], early_stopping_rounds=20, verbose_eval=20, evals_result=evals_result)
在使用随机森林增强方法时,我收到以下错误 -
LightGBMError: b'Check failed: config->bagging_freq > 0 && config->bagging_fraction < 1.0f && config->bagging_fraction > 0.0f at /home/travis/build/Microsoft/LightGBM/python-package/compile/src/boosting/rf.hpp, line 29 .\n'
【问题讨论】:
-
stackoverflow.com/questions/49774825/… 添加 stratified=False 有效。我想这个链接在这里回答了我的第一个问题
标签: python random-forest lightgbm