LGB 模型保存及应用

1 原生模式
# 模型训练
gbm = lgb.train(params, lgb_train, num_boost_round=20, valid_sets=lgb_eval, early_stopping_rounds=5)
 
# 模型保存
gbm.save_model('model.txt')
 
# 模型加载
gbm = lgb.Booster(model_file='model.txt')
 
# 模型预测
y_pred = gbm.predict(X_test, num_iteration=gbm.best_iteration)

2 sklearn接口模式
from lightgbm import LGBMRegressor
from sklearn.metrics import mean_squared_error
from sklearn.model_selection import GridSearchCV
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.externals import joblib
 
 
# 模型训练
gbm = LGBMRegressor(objective='regression', num_leaves=31, learning_rate=0.05, n_estimators=20)
gbm.fit(X_train, y_train, eval_set=[(X_test, y_test)], eval_metric='l1', early_stopping_rounds=5)
 
# 模型存储
joblib.dump(gbm, 'loan_model.pkl')
# 模型加载
gbm = joblib.load('loan_model.pkl')
 
# 模型预测
y_pred = gbm.predict(X_test, num_iteration=gbm.best_iteration_)

 

  • 4
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
LGB(LightGBM)是一种基于决策树的梯度提升框架,具有高效、准确的特点,被广泛应用于机器学习和数据科学领域。下面是LGB模型中常用的参数及其含义: 1. `num_leaves`:决策树的最大叶子节点数,这是LGB模型中最重要的参数之一,通常取值在40-60之间。 2. `learning_rate`:学习率,每次迭代中每个树的权重缩减量,通常取值在0.01-0.1之间。 3. `max_depth`:决策树的最大深度,控制模型的复杂度和过拟合情况,通常取值在5-15之间。 4. `min_child_samples`:叶子节点最少样本数,控制过拟合情况,通常取值在20-100之间。 5. `subsample`:每个树的样本采样比例,通常取值在0.5-0.8之间。 6. `colsample_bytree`:每个树的特征采样比例,通常取值在0.5-0.8之间。 7. `reg_alpha`:L1正则化系数,控制模型的复杂度和过拟合情况。 8. `reg_lambda`:L2正则化系数,控制模型的复杂度和过拟合情况。 关于调参方法,通常采用网格搜索或贝叶斯优化等方法,通过交叉验证来确定最佳参数组合。具体步骤如下: 1. 确定模型的初始参数范围。 2. 采用交叉验证方法,在训练集上训练模型,并在验证集上评估模型的性能。 3. 根据模型的性能,调整参数范围,重新训练模型,并重新进行交叉验证。 4. 重复步骤3,直到达到最佳性能,得到最佳的参数组合。 需要注意的是,调参的过程需要耗费大量时间和计算资源,因此需要谨慎选择参数范围和调参方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值