import lightgbm as lgb

PS:注意,当使用lgb时一定要注意参数名称是否写错,当参数名称输入错时,lgb是不会报错的,参数名写错时lgb会当做无输入处理。

lightgbm.cv使用方法

params_lgb = {'boosting': 'gbdt', 'objective': 'quantile', 'n_jobs':-1,'learning_rate': 0.1, 'num_leaves': 50, 'max_depth': 6,'subsample': 0.8, 'colsample_bytree': 0.8,
}
train_data_lgb = lgb.Dataset(train_x, train_y, silent=True)
cv_results = lgb.cv(params_lgb, train_data_lgb, num_boost_round=10000, nfold=5, stratified=False, shuffle=False, metrics='l2',early_stopping_rounds=100, verbose_eval=50, show_stdv=True, seed=2020)

lightgbm官方文档
重要参数
params 基学习器的参数。详细参数就是LGBRegressor或者LGBClassifier的参数。
train_set 训练集,需要首先使用train_data = lgb.Dataset(train_x,train_y,silient = True)。
num_boost_round 最大迭代次数,建议写大一些,可以通过早停机制提前终止训练
nfold n折交叉验证。
metrics 评价标准。
early_stopping_rounds 早停决策,若n轮迭代之后metrics没有进步,则终止训练。注意,设置此项务必设置metrics,否则lgb会按照metrics缺失处理。
shuffle是否洗牌。
verbose_eval 进行n次验证后,报告metrics情况。

fobj 自定义目标函数。
feval 自定义评价标准。如有需要,自己去官网查看一下怎么实现,暂时我没有用到。

lgb.cv的返回值
返回值是一个字典,show一下python小白都会用,一般用到的方法有。
len(cv_results[‘l2-mean’]) 确定基学习器的数量。
cv_results[‘l2-mean’][-1] 确定最后得分

LGMRegressor使用方法

model_lgb = lgb.LGBMRegressor()

LGM官方文档

参数
PART1 不需要调试的参数
boosting_type :‘gbdt’,‘rf’,‘dart’
n_jobs 几核cpu
silent 默认选择True,选择False会输出很多建模中的细节,作用不大还刷屏。
objective 目标函数
random_state 随机数
PART2 需要调试的参数
learning_rate:学习率,初始状态建议选择较大的学习率,设置为0.1.
n_estimators :树的数量,初始状态适配lr = 0.1
这两个参数是一对情侣,调整一个另外一个也需要调整,相互影响巨大!
这两个参数作用于树的数量,不关心树的内部。
++++++++++++++++这两个参数需要联调++++++++++++++++++++++++++
max_depth:每棵树的最大深度,防止过拟合。初始状态设置3~8。
num_leaves :每棵树的最多叶子数,因为CART是二叉树,所以叶子数量最大值为2 **depth,所以num_leaves要小于该值才有意义。然后lightgbm是leaf-wise,depth = leaf-1,所以depth和leaf调试一个即可。
min_child_samples:又称为min_data_in_leaf,指要想建立一个叶子所需要的的最少样本数,增大它可以降低过拟合。
min_child_weight:又称为min_sum_hessian_in_leaf,指要想建立一个叶子,该叶子需要提供的最小hessian值。这两个参数都是对新建叶子设置了门槛,可以降低叶子数量,减小过拟合。
feature_fraction:每次新建一棵树时,随机使用多少的特征。
bagging_fraction:每次进行bagging时,随机使用多少的样本。
bagging_freq:每建立多少棵树,就进行一次bagging。
reg_alpha :L1正则化参数
reg_lambda :L2正则化参数
+++++++++++++上面的参数是调整每棵树的属性++++++++++++++++++++

lLGBMClassifier API参数解释

和回归差不多,参考官网看一下吧。

调参参考

参考:调参笔记1
调参笔记2

lightgbm API参数解释相关推荐

  1. 中国天气网天气API参数详细解释说明

    经常大家要使用到天气的API,但是,中国天气网天气api返回的JSON参数太多,那么给出中国天气网天气API参数详细解释说明,可以供给参考: view source print? 01 { 02    ...

  2. LightGBM的参数详解以及如何调优

    lightGBM可以用来解决大多数表格数据问题的算法.有很多很棒的功能,并且在kaggle这种该数据比赛中会经常使用. 但我一直对了解哪些参数对性能的影响最大以及我应该如何调优lightGBM参数以最 ...

  3. XGBoost-Python完全调参指南-参数解释篇

    本文转自XGBoost-Python完全调参指南-参数解释篇.对XGBoost有需要小伙伴可以参看.并在此基础上,添加了一些内容. 在analytics vidhya上看到一篇<Complete ...

  4. videojs插件的参数解释

    videojs插件的参数解释 初始化 <!-- vjs-big-play-centered可使大的播放按钮居住,vjs-fluid可使视频占满容器 --> <video id=&qu ...

  5. Windows任务管理器参数解释

    Windows任务管理器参数解释 一.概述及菜单 任务管理器提供正在您的计算上运行的程序和进程的相关信息.也显示最常用的度量进程性能的单位. 使用任务管理器可以监视计算机性能的关键指示器.可以查看正在 ...

  6. statsmodel之summary参数解释

    # -*-coding:utf-8 -*- import pandas as pd import matplotlib.pyplot as plt import matplotlib import n ...

  7. lightbgm参数_XGBoost和LightGBM的参数以及调参

    一.XGBoost参数解释 XGBoost的参数一共分为三类: 通用参数:宏观函数控制. Booster参数:控制每一步的booster(tree/regression).booster参数一般可以调 ...

  8. /etc/sysctl.conf参数解释

    /etc/sysctl.conf参数解释: fs.file max = 999999 #表示进程(例如一个worker进程)可能同时打开的最大句柄数,直接限制最大并发连接数net.ipv4.tcp_t ...

  9. lcd参数解释及刷新率计算,LCD时序

    一.LCD显示图像的过程如下: 其中,VSYNC和HSYNC是有宽度的,加上后如下: 参数解释: HBP(Horizontal Back Porch)水平后沿:在每行或每列的象素数据开始输出时要插入的 ...

最新文章

  1. 如何在OS X中打印到PDF文件
  2. 在AngularJS中读取查询参数的最简洁方法是什么?
  3. AWS S3宕机的启发: 云必须分散化
  4. python中bin是什么意思_Python之一、#!/usr/bin/python到底是什么意思
  5. Python numpy 平方、乘方和平方根函数
  6. k8s网络之Calico网络
  7. JNI基础 c语言调用java方法
  8. oss客户端工具_干货 | 基于Go SDK操作京东云对象存储OSS的入门指南
  9. MFC小笔记:开机自动启动
  10. 【回文串1 动态规划 马拉车算法】LeetCode 5. Longest Palindromic Substring
  11. 程序设计导引及在线实践之大整数乘法
  12. Openwrt:icmpv6_send: no reply to icmp error
  13. linux 命令:userdel 详解
  14. UOJ#454. 【UER #8】打雪仗
  15. java红牛农场,在新加坡的,完一朋友一个夜班喝5瓶红牛。 下班坐地
  16. python风变编程培训骗局
  17. 问题:EO-1 hyperion影像做 MNF 时报错问题解决
  18. CUDA实例系列一: 矩阵乘法优化
  19. 使用EKF融合odometry及imu数据
  20. 虚拟机中Linux配置java-jdk和tomcat

热门文章

  1. USBC 故障处理方法
  2. 狂傲的王勃,如流星般划过大唐璀璨的夜空
  3. 陌生环境下部署的思路
  4. 实验3-6 计算个人所得税 (10 分)
  5. JSP汽车维修服务管理系统myeclipse开发SqlServer数据库bs框架java编程web网页结构
  6. python画圆柱体,python绘制圆柱体的方法
  7. 八个流行的Python可视化工具包,你喜欢哪个?
  8. 用互联网思维破解城市病 未来十年投资将超两万亿
  9. 全国首个兼容多种底层链和云服务的区块链服务平台发布
  10. jquery 实现文字闪动效果