lgb使用方法与调参

本文参考了lgb中文文档,和lgb调参笔记。

import lightgbm as lgb

lgb参数

*type 1 不需要调试的参数 *
boosting_type
1.gbdt 2.rf
objective
1.regression 回归 2.binary 二分类(01) 3.multiclass 多分类(需要设置num_class)
num_class 多分类的类别数
early_stopping_round 多少轮学习后无优化,则停止。
data 训练数据
valid验证数据

lgb_train = lgb.Dataset(split_train_x, split_train_y)
data = lgb_train #API参数

metric 度量,详见在线文档。
nthread 多进程
device cpu,gpu

type 2 需要调试的参数
learning_rate
num_leaves 一棵树的最大叶子数
max_depth 一棵树的最大深度
min_split_gain 切分的最小增益
min_data_in_leaf叶子上的最小数据量,可以用来解决过拟合
min_sum_hessian_in_leaf叶子上的最小hessian值,可以用来解决过拟合
feature_fraction 0~1,每次训练中仅抽取该比例的特征进行训练,可以用来加速和解决过拟合
bagging_fraction 0~1,每次训练中仅抽取该比例的数据进行训练,可以用来加速和解决过拟合
lambda_l1 L1正则
lambda_l2 L2正则
num_boost_round boosting的最大迭代次数

超参数调试方法
step1 确定n_estimators
step2 确定max_depth和max_leaves
step3 确定min_data_in_leaf 和 max_bin
step4 确定feature_fraction、bagging_fraction、bagging_freq
step5 确定lambda_l1和lambda_l2
step6 确定min_split_gain
step7 降低learning_rate,增大迭代次数,验证模型

你可能感兴趣的:(models,机器学习)