美文网首页算法杂货铺
lightgbm调参的关键参数

lightgbm调参的关键参数

作者: 徐卜灵 | 来源:发表于2019-01-07 10:21 被阅读0次

提高准确率:

learning_rate:学习率.

默认值:0.1
调参策略:最开始可以设置得大一些,如0.1。调整完其他参数之后最后再将此参数调小。
取值范围:0.01~0.3.

max_depth:树模型深度

默认值:-1
调整策略:无
取值范围:3-8(不超过10)

num_leaves:叶子节点数,数模型复杂度。

默认值:31
调整策略:可以设置为2的n次幂。如2^{max\_depth-1} 但要大于分类的类别数
取值范围:classes<num\_leaves <2^{max\_depth}

降低过拟合

max_bin:工具箱数(叶子结点数+非叶子节点数?)

工具箱的最大数特征值决定了容量 工具箱的最小数特征值可能会降低训练的准确性, 但是可能会增加一些一般的影响(处理过度学习)
LightGBM 将根据 max_bin 自动压缩内存。 例如, 如果 maxbin=255, 那么 LightGBM 将使用 uint8t 的特性值

min_data_in_leaf:一个叶子上数据的最小数量. 可以用来处理过拟合

默认值:20
调参策略:搜索,尽量不要太大。

feature_fraction:每次迭代中随机选择特征的比例。

默认值:1.0
调参策略:0.5-0.9之间调节。
可以用来加速训练
可以用来处理过拟合

bagging_fraction:不进行重采样的情况下随机选择部分数据

默认值:1.0
调参策略:0.5-0.9之间调节。
可以用来加速训练
可以用来处理过拟合

bagging_freq:bagging的次数。0表示禁用bagging,非零值表示执行k次bagging

默认值:0
调参策略:3-5

lambda_l1:L1正则
lambda_l2:L2正则

min_split_gain:执行切分的最小增益
默认值:0.1

For Faster Speed

  • Use bagging by setting bagging_fraction and bagging_freq
  • Use feature sub-sampling by setting feature_fraction
  • Use small max_bin
  • Use save_binary to speed up data loading in future learning
  • Use parallel learning, refer to Parallel Learning Guide

For Better Accuracy

  • Use large max_bin (may be slower)
  • Use small learning_rate with large num_iterations
  • Use large num_leaves (may cause over-fitting)
  • Use bigger training data
  • Try dart

Deal with Over-fitting

  • Use small max_bin
  • Use small num_leaves
  • Use min_data_in_leaf and min_sum_hessian_in_leaf
  • Use bagging by set bagging_fraction and bagging_freq
  • Use feature sub-sampling by set feature_fraction
  • Use bigger training data
  • Try lambda_l1, lambda_l2 and min_gain_to_split for regularization
  • Try max_depth to avoid growing deep tree

相关文章

  • LightGBM使用

    可以参考LightGBM原生/sk接口的常用参数LightGBM使用 lightGBM调参 所有的参数含义,参考:...

  • lightgbm调参的关键参数

    提高准确率: learning_rate:学习率.默认值:0.1调参策略:最开始可以设置得大一些,如0.1。调整完...

  • LightGBM 如何调参

    本文结构: 什么是 LightGBM 怎么调参 和 xgboost 的代码比较 1. 什么是 LightGBM L...

  • XGBoost和LightGBM的参数以及调参

    一、XGBoost参数解释 XGBoost的参数一共分为三类: 通用参数:宏观函数控制。 Booster参数:控制...

  • Day 6: 参数调节

    我们平时一直都在说“调参、调参”,但实际上,不是调“参数”,而是调“超参数” 1.参数(Parameter) 参数...

  • 【DL碎片4】深度学习中的的超参数调节

    深度学习中的的超参数调节 我们平时一直都在说“调参、调参”,但实际上,不是调“参数”,而是调“超参数”。 一、参数...

  • 使用hyperopt对Lightgbm调参----自动调参

    微软的lightgbm已经成为了数据挖掘竞赛的必用工具,运行速度快,准确率高等等各种优点。 调参也是竞赛中不可缺少...

  • python-函数参数的顺序

    定义形参的顺序依次为:形参、默认参数、可变参数、命名关键字参数、关键字参数 可变参数后面不需要再添加命名关键字参数...

  • 决策树最骚操作

    大家好,最近我原创了一系列文章 LightGBM 可视化调参[https://mp.weixin.qq.com/s...

  • Python:函数参数

    固定参数 无参 有参 默认参数 可变参数 关键字参数 转载 http://www.cnblogs.com/tqsu...

网友评论

    本文标题:lightgbm调参的关键参数

    本文链接:https://www.haomeiwen.com/subject/hgmyrqtx.html