LightGBM算法梳理

LightGBM

LightGBM的起源

Histogram VS pre-sorted

leaf-wise VS level-wise

特征并行和数据并行

顺序访问梯度

支持类别特征

应用场景

sklearn参数

CatBoost(了解)

https://blog.csdn.net/hnlylnjyp/article/details/90382417
https://lightgbm.readthedocs.io/en/latest/pythonapi/lightgbm.LGBMRegressor.html

参数

LGBMRegressor(

  • boosting_type='gbdt',
    “ gbdt”,传统的梯度增强决策树。 'dart',满足多个加性回归树。 基于梯度的“ goss”单边采样。 “ rf”,随机森林。

  • num_leaves=31
    每棵树的最多叶子数,因为CART是二叉树,所以叶子数量最大值为2 **depth,所以num_leaves要小于该值才有意义。

  • max_depth=-1,

  • learning_rate=0.1,

  • n_estimators=100,

  • subsample_for_bin=200000,

  • objective=None,

  • class_weight=None,

  • min_split_gain=0.0,

  • min_child_samples=20
    想建立一个叶子所需要的的最少样本数,增大它可以降低过拟合。

  • min_child_weight=0.001
    指要想建立一个叶子,该叶子需要提供的最小hessian值。这两个参数都是对新建叶子设置了门槛,可以降低叶子数量,减小过拟合。

  • bagging_fraction:
    每次进行bagging时,随机使用多少的样本。 subsample=1.0

  • bagging_freq:
    每建立多少棵树,就进行一次bagging。,subsample_freq=0,

  • colsample_bytree=1.0,

  • reg_alpha=0.0,L1正则化参数

  • reg_lambda=0.0,L2正则化参数

  • random_state=None,

  • n_jobs=-1,

  • silent=True, 输出很多建模中的细节

  • feature_fraction
    每次新建一棵树时,随机使用多少的特征。
    **kwargs,
    )
    基本调参思路,首先设置lr=0.1确定树的数量,然后调整每颗树的内部参数到最佳。确定树的内部参数后,用该参数,降低lr,反调lr和树的数量。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容