gpt4 book ai didi

python - LightGBM运行时如何更改参数?

转载 作者:行者123 更新时间:2023-11-30 08:57:31 25 4
gpt4 key购买 nike

因此,我想在 LightGBM 运行后更改参数运行 10000 次后,我想添加另一个具有不同参数的模型,但使用之前训练的模型。

类似这样的事情:

params = {
"objective" : "regression",
"metric" : "mae",
"num_leaves" : 35,
"learning_rate" : 0.05,
"bagging_fraction" : 0.7,
"bagging_seed" : 0,
"num_threads" : 4,
"colsample_bytree" : 0.7,
'min_data_in_leaf':200,
'min_split_gain':0.0004,
'lambda_l2':0.1
}

model = lgb.train( params,
train_set = train_set,
num_boost_round=1000,
early_stopping_rounds=200,
verbose_eval=100,
valid_sets=[train_set,valid_set]
)

params = {
"objective" : "dart",
"metric" : "mae",
"num_leaves" : 44,
"learning_rate" : 0.01,
"bagging_fraction" : 0.3,
"bagging_seed" : 0,
"num_threads" : 4,
"colsample_bytree" : 0.1,
'min_data_in_leaf':400,
'min_split_gain':0.0001,
'lambda_l2':0.2
}

model = lgb.train(
params,
train_set = train_set,
num_boost_round=2000,
early_stopping_rounds=200,
verbose_eval=100,
init_model=model,
valid_sets=[train_set,valid_set]

)

但是在这里,当我使用 init_model=model 时,我收到此错误:

LightGBMError:释放原始数据后无法设置预测器,在构造数据集时设置 free_raw_data=False 以避免这种情况。

最佳答案

这是幸运的错误之一,您需要准确执行错误消息所解释的操作(这是我的代码片段):

d_train = lgb.Dataset(x_train, label=y_train, free_raw_data = False)

当您构建 lightgbm.Dataset 对象时,验证和测试集相同。

其余的不需要改变,你的代码看起来很好(还有 init_model 部分)。问题在于 LightGBM 的 Python 包装器,需要为此类拉入/拉出模型用途设置原始数据的构造。如果您有兴趣更深入地了解情况,请查看:https://lightgbm.readthedocs.io/en/latest/FAQ.html

我相信这个答案可以解决您的问题。但如果没有,请随时询问更多。祝你好运!

关于python - LightGBM运行时如何更改参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53904948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com