【LGBM】LightGBM sklearn API超参数解释与使用方法(优化)

        接下来我们进一步解释LGBM的sklearn API中各评估器中的超参数及使用方法。

  在LGBM的sklearn API中,总共包含四个模型类(也就是四个评估器),分别是lightgbm.LGBMModel、LGBMClassifier 和 LGBMRegressor 以及LGBMRanker:

LGBMModel

  LGBMModel 是 LightGBM 的基础模型类,它提供了所有 LightGBM 模型的通用接口。虽然它本身不是为特定任务设计的,但它包含了所有基本的训练和预测方法。

主要方法:
  • fit(X, y, sample_weight=None, init_score=None, eval_set=None, eval_names=None, eval_sample_weight=None, eval_class_weight=None, eval_init_score=None, eval_metric=None, early_stopping_rounds=None, verbose=True, feature_name='auto', categorical_feature='auto', callbacks=None, init_model=None)
  • predict(X, raw_score=False, start_iteration=0, num_iteration=None, pred_leaf=False, pred_contrib=False, **kwargs)
  • feature_importances_:返回特征的重要性评分。

LGBMClassifier

LGBMClassifier 是用于分类任务的模型类,适用于二分类和多分类问题。

主要超参数:
  • boosting_type='gbdt':提升类型,可选值有 'gbdt' (默认), 'dart', 'goss', 'rf'。
  • num_leaves=31:每棵树的最大叶子数。
  • max_depth=-1:树的最大深度,负值表示不限制。
  • learning_rate=0.1:学习率,控制每次迭代的学习步长。
  • n_estimators=100:提升树的数量。
  • subsample_for_bin=200000:构造直方图时使用的样本数量。
  • min_split_gain=0.0:分裂节点所需的最小增益。
  • min_child_weight=0.001:叶子节点的最小权重。
  • min_child_samples=20:叶子节点的最小样本数。
  • subsample=1.0:每棵树训练时使用的样本比例。
  • colsample_bytree=1.0:每棵树训练时使用的特征比例。
  • reg_alpha=0.0:L1 正则化系数。
  • reg_lambda=0.0:L2 正则化系数。
  • random_state=None:随机种子,用于复现结果。
  • n_jobs=-1:并行任务数,-1 表示使用所有可用的 CPU 核心。
  • silent=True:是否静默模式,不显示训练过程中的信息。
  • importance_type='split':特征重要性的计算方式,可选值有 'split' 和 'gain'。
示例代码:
from lightgbm import LGBMClassifier
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split

# 加载数据集
data = loa
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值