lightgbm.LGBMClassifier
- class lightgbm.LGBMClassifier(*, boosting_type='gbdt', num_leaves=31, 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_weight=0.001, min_child_samples=20, subsample=1.0, subsample_freq=0, colsample_bytree=1.0, reg_alpha=0.0, reg_lambda=0.0, random_state=None, n_jobs=None, importance_type='split', **kwargs)[source]
基类:
ClassifierMixin
,LGBMModel
LightGBM 分类器。
- __init__(*, boosting_type='gbdt', num_leaves=31, 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_weight=0.001, min_child_samples=20, subsample=1.0, subsample_freq=0, colsample_bytree=1.0, reg_alpha=0.0, reg_lambda=0.0, random_state=None, n_jobs=None, importance_type='split', **kwargs)[source]
构造梯度提升模型。
- 参数:
boosting_type (str, 可选 (默认值='gbdt')) – ‘gbdt’,传统梯度提升决策树。‘dart’,Dropouts meets Multiple Additive Regression Trees。‘rf’,随机森林。
num_leaves (int, 可选 (默认值=31)) – 基学习器的最大树叶数。
max_depth (int, 可选 (默认值=-1)) – 基学习器的最大树深度,<=0 表示无限制。如果将其设置为正值,请考虑同时将
num_leaves
更改为<= 2^max_depth
。learning_rate (float, 可选 (默认值=0.1)) – 提升学习率。您可以使用
fit
方法的callbacks
参数,在训练中通过reset_parameter
回调函数来收缩/调整学习率。请注意,这将忽略训练中的learning_rate
参数。n_estimators (int, 可选 (默认值=100)) – 要拟合的提升树的数量。
subsample_for_bin (int, 可选 (默认值=200000)) – 用于构建 bins 的样本数。
objective (str, callable 或 None, 可选 (默认值=None)) – 指定学习任务及相应的学习目标,或要使用的自定义目标函数(参见下面的注释)。默认值:LGBMRegressor 为 ‘regression’,LGBMClassifier 为 ‘binary’ 或 ‘multiclass’,LGBMRanker 为 ‘lambdarank’。
class_weight (dict, 'balanced' 或 None, 可选 (默认值=None)) – 与类别相关的权重,形式为
{class_label: weight}
。仅用于多类别分类任务;对于二分类任务,您可以使用is_unbalance
或scale_pos_weight
参数。请注意,使用所有这些参数会导致单个类别概率的估计不准确。您可能需要考虑对模型进行概率校准 (https://scikit-learn.cn/stable/modules/calibration.html)。‘balanced’ 模式使用 y 的值自动调整权重,使其与输入数据中的类别频率成反比,计算方式为n_samples / (n_classes * np.bincount(y))
。如果为 None,则所有类别都被假定为权重一。请注意,如果指定了sample_weight
(通过fit
方法传递),这些权重将与sample_weight
相乘。min_split_gain (float, 可选 (默认值=0.)) – 在树的叶节点上进行进一步划分所需的最小损失减少量。
min_child_weight (float, 可选 (默认值=1e-3)) – 子节点(叶节点)所需的最小实例权重(Hessian)总和。
min_child_samples (int, 可选 (默认值=20)) – 子节点(叶节点)所需的最小数据量。
subsample (float, 可选 (默认值=1.)) – 训练实例的子样本比例。
subsample_freq (int, 可选 (默认值=0)) – 子样本的采样频率,<=0 表示禁用。
colsample_bytree (float, 可选 (默认值=1.)) – 构建每棵树时特征(列)的子样本比例。
reg_alpha (float, 可选 (默认值=0.)) – 权重的 L1 正则化项。
reg_lambda (float, 可选 (默认值=0.)) – 权重的 L2 正则化项。
random_state (int, RandomState 对象 或 None, 可选 (默认值=None)) – 随机数种子。如果是 int,则使用此数字为 C++ 代码设置种子。如果是 RandomState 或 Generator 对象 (numpy),则根据其状态选择一个随机整数为 C++ 代码设置种子。如果为 None,则使用 C++ 代码中的默认种子。
n_jobs (int 或 None, 可选 (默认值=None)) –
用于训练的并行线程数(可以在预测时通过将其作为额外的关键字参数传递来更改)。
为了获得更好的性能,建议将其设置为 CPU 中的物理核心数。
负整数按照 joblib 的公式 (n_cpus + 1 + n_jobs) 进行解释,与 scikit-learn 类似(例如 -1 表示使用所有线程)。零值对应于系统中为 OpenMP 配置的默认线程数。None(默认值)表示使用系统中的物理核心数(正确检测需要安装
joblib
或psutil
实用程序库)。版本 4.0.0 中更改。
importance_type (str, 可选 (默认值='split')) – 要填充到
feature_importances_
中的特征重要性类型。如果为 ‘split’,结果包含特征在模型中使用的次数。如果为 ‘gain’,结果包含使用该特征的分割的总增益。**kwargs –
模型的其他参数。请查看 https://lightgbm.cn/en/stable/Parameters.html 获取更多参数。
警告
**kwargs
在 sklearn 中不受支持,可能导致意外问题。
注意
可以为
objective
参数提供自定义目标函数。在这种情况下,它应该具有签名objective(y_true, y_pred) -> grad, hess
,objective(y_true, y_pred, weight) -> grad, hess
或objective(y_true, y_pred, weight, group) -> grad, hess
- y_truenumpy 1-D 数组,形状 = [n_samples]
目标值。
- y_prednumpy 1-D 数组,形状 = [n_samples],或 numpy 2-D 数组,形状 = [n_samples, n_classes](用于多类别任务)
预测值。预测值在进行任何转换之前返回,例如,对于二分类任务,它们是原始边距而不是正类概率。
- weightnumpy 1-D 数组,形状 = [n_samples]
样本权重。权重应为非负数。
- groupnumpy 1-D 数组
组/查询数据。仅用于排序学习任务。
sum(group) = n_samples
。例如,如果您有一个包含 100 份文档且group = [10, 20, 40, 10, 10, 10]
的数据集,这意味着您有 6 个组,其中前 10 条记录属于第一个组,记录 11-30 属于第二个组,记录 31-70 属于第三个组,依此类推。- gradnumpy 1-D 数组,形状 = [n_samples],或 numpy 2-D 数组,形状 = [n_samples, n_classes](用于多类别任务)
损失相对于 y_pred 的一阶导数(梯度)的值,用于每个样本点。
- hessnumpy 1-D 数组,形状 = [n_samples],或 numpy 2-D 数组,形状 = [n_samples, n_classes](用于多类别任务)
损失相对于 y_pred 的二阶导数(Hessian)的值,用于每个样本点。
对于多类别任务,y_pred 是形状为 [n_samples, n_classes] 的 numpy 2-D 数组,并且 grad 和 hess 应以相同格式返回。
方法
__init__
(*[, boosting_type, num_leaves, ...])构造梯度提升模型。
fit
(X, y[, sample_weight, init_score, ...])根据训练集 (X, y) 构建梯度提升模型。
获取此对象的元数据路由。
get_params
([deep])获取此评估器的参数。
predict
(X[, raw_score, start_iteration, ...])返回每个样本的预测值。
predict_proba
(X[, raw_score, ...])返回每个样本的每个类别的预测概率。
score
(X, y[, sample_weight])返回给定测试数据和标签上的平均准确率。
set_fit_request
(*[, callbacks, ...])请求传递给
fit
方法的元数据。set_params
(**params)设置此评估器的参数。
set_predict_proba_request
(*[, ...])请求传递给
predict_proba
方法的元数据。set_predict_request
(*[, num_iteration, ...])请求传递给
predict
方法的元数据。set_score_request
(*[, sample_weight])请求传递给
score
方法的元数据。属性
如果指定了
early_stopping()
回调,则为拟合模型的最佳迭代次数。拟合模型的最佳分数。
此模型的底层 Booster。
类别标签数组。
如果指定了验证集,则为评估结果。
特征重要性(值越高,越重要)。
特征名称。
与 scikit-learn 兼容的
.feature_name_
版本。类别数量。
执行的实际提升迭代次数。
拟合模型的特征数量。
拟合模型的特征数量。
执行的实际提升迭代次数。
拟合此模型时使用的具体目标。
- property best_iteration_
如果指定了
early_stopping()
回调,则为拟合模型的最佳迭代次数。- 类型:
int
- property best_score_
拟合模型的最佳分数。
- 类型:
dict
- property classes_
类别标签数组。
- 类型:
array
形状 = [n_classes]
- property evals_result_
如果指定了验证集,则为评估结果。
- 类型:
dict
- property feature_importances_
特征重要性(值越高,越重要)。
注意
将
importance_type
属性传递给函数以配置要提取的重要性值类型。- 类型:
array
形状 = [n_features]
- property feature_name_
特征名称。
注意
如果输入不包含特征名称,将在拟合期间以
Column_0
,Column_1
, …,Column_N
的格式添加。- 类型:
list
形状 = [n_features]
- property feature_names_in_
与 scikit-learn 兼容的
.feature_name_
版本。添加于版本 4.5.0。
- 类型:
array
形状 = [n_features]
- 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, feature_name='auto', categorical_feature='auto', callbacks=None, init_model=None)[source]
根据训练集 (X, y) 构建梯度提升模型。
- 参数:
X (numpy array, pandas DataFrame, H2O DataTable 的 Frame (已弃用), scipy.sparse, int 或 float 列表的列表,形状 = [n_samples, n_features]) – 输入特征矩阵。
y (numpy array, pandas DataFrame, pandas Series, int 或 float 列表,形状 = [n_samples]) – 目标值(分类中的类别标签,回归中的实数)。
sample_weight (numpy array, pandas Series, int 或 float 列表,形状 = [n_samples] 或 None, 可选 (默认值=None)) – 训练数据权重。权重应为非负数。
init_score (numpy array, pandas DataFrame, pandas Series, int 或 float 列表,形状 = [n_samples] 或 形状 = [n_samples * n_classes] (用于多类别任务) 或 形状 = [n_samples, n_classes] (用于多类别任务) 或 None, 可选 (默认值=None)) – 训练数据的初始分数。
eval_set (list 或 None, 可选 (默认值=None)) – 用作验证集的 (X, y) 元组对列表。
eval_names (str 列表, 或 None, 可选 (默认值=None)) – eval_set 的名称。
eval_sample_weight (array 列表 (与
sample_weight
支持的类型相同),或 None, 可选 (默认值=None)) – 评估数据权重。权重应为非负数。eval_class_weight (list 或 None, 可选 (默认值=None)) – 评估数据的类别权重。
eval_init_score (array 列表 (与
init_score
支持的类型相同),或 None, 可选 (默认值=None)) – 评估数据的初始分数。eval_metric (str, callable, list 或 None, 可选 (默认值=None)) – 如果是 str,则应使用内置评估指标。如果是 callable,则应使用自定义评估指标,更多详情请参阅下面的注释。如果是 list,可以是内置指标列表、自定义评估指标列表或两者的混合。无论哪种情况,模型参数中的
metric
也将被评估和使用。默认值:LGBMRegressor 为 ‘l2’,LGBMClassifier 为 ‘logloss’,LGBMRanker 为 ‘ndcg’。feature_name (str 列表, 或 'auto', 可选 (默认值='auto')) – 特征名称。如果为 ‘auto’ 且数据为 pandas DataFrame,则使用数据列名称。
categorical_feature (str 或 int 列表, 或 'auto', 可选 (默认值='auto')) – 类别特征。如果是 int 列表,则解释为索引。如果是 str 列表,则解释为特征名称(还需要指定
feature_name
)。如果为 ‘auto’ 且数据为 pandas DataFrame,则使用 pandas 的无序类别列。类别特征中的所有值将被转换为 int32,因此应小于 int32 的最大值 (2147483647)。大数值可能会占用大量内存。考虑使用从零开始的连续整数。类别特征中的所有负值将被视为缺失值。输出不能相对于类别特征进行单调约束。类别特征中的浮点数将四舍五入为接近 0 的整数。callbacks (callable 列表, 或 None, 可选 (默认值=None)) – 在每次迭代时应用的 callback 函数列表。有关更多信息,请参阅 Python API 中的 Callbacks。
init_model (str, pathlib.Path, Booster, LGBMModel 或 None, 可选 (默认值=None)) – 用于继续训练的 LightGBM 模型文件名、Booster 实例或 LGBMModel 实例。
- 返回:
self – 返回自身。
- 返回类型:
注意
自定义评估函数期望一个具有以下签名的 callable:
func(y_true, y_pred)
,func(y_true, y_pred, weight)
或func(y_true, y_pred, weight, group)
,并返回 (eval_name, eval_result, is_higher_better) 或 (eval_name, eval_result, is_higher_better) 列表- y_truenumpy 1-D 数组,形状 = [n_samples]
目标值。
- y_prednumpy 1-D 数组,形状 = [n_samples],或 numpy 2-D 数组,形状 = [n_samples, n_classes](用于多类别任务)
预测值。如果使用自定义
objective
,预测值在进行任何转换之前返回,例如,对于二分类任务,在这种情况下它们是原始边距而不是正类的概率。- weightnumpy 1-D 数组,形状 = [n_samples]
样本权重。权重应为非负数。
- groupnumpy 1-D 数组
组/查询数据。仅用于排序学习任务。
sum(group) = n_samples
。例如,如果您有一个包含 100 份文档且group = [10, 20, 40, 10, 10, 10]
的数据集,这意味着您有 6 个组,其中前 10 条记录属于第一个组,记录 11-30 属于第二个组,记录 31-70 属于第三个组,依此类推。- eval_namestr
评估函数的名称(无空格)。
- eval_resultfloat
评估结果。
- is_higher_betterbool
评估结果是否越高越好,例如 AUC 是
is_higher_better
。
- get_metadata_routing()
获取此对象的元数据路由。
请查阅 用户指南,了解路由机制的工作原理。
- 返回:
routing – 封装路由信息的
MetadataRequest
。- 返回类型:
MetadataRequest
- get_params(deep=True)
获取此评估器的参数。
- 参数:
deep (bool, 可选 (默认值=True)) – 如果为 True,将返回此评估器及其包含的作为评估器的子对象的参数。
- 返回:
params – 参数名称映射到其值。
- 返回类型:
dict
- property n_classes_
类别数量。
- 类型:
int
- property n_estimators_
执行的实际提升迭代次数。
如果启用了 early stopping 或由于
min_gain_to_split
等复杂性限制而导致 boosting 提前停止,则此值可能小于参数n_estimators
。添加于版本 4.0.0。
- 类型:
int
- property n_features_
拟合模型的特征数量。
- 类型:
int
- property n_features_in_
拟合模型的特征数量。
- 类型:
int
- property n_iter_
执行的实际提升迭代次数。
如果启用了 early stopping 或由于
min_gain_to_split
等复杂性限制而导致 boosting 提前停止,则此值可能小于参数n_estimators
。添加于版本 4.0.0。
- 类型:
int
- property objective_
拟合此模型时使用的具体目标。
- 类型:
str
或callable
- predict(X, raw_score=False, start_iteration=0, num_iteration=None, pred_leaf=False, pred_contrib=False, validate_features=False, **kwargs)[source]
返回每个样本的预测值。
- 参数:
X (numpy array, pandas DataFrame, H2O DataTable 的 Frame (已弃用), scipy.sparse, int 或 float 列表的列表,形状 = [n_samples, n_features]) – 输入特征矩阵。
raw_score (bool, 可选 (默认值=False)) – 是否预测原始分数。
start_iteration (int, 可选 (默认值=0)) – 要预测的迭代的起始索引。如果 <= 0,则从第一次迭代开始。
num_iteration (int 或 None, 可选 (默认值=None)) – 预测中使用的总迭代次数。如果为 None,并且最佳迭代存在且 start_iteration <= 0,则使用最佳迭代;否则,使用从
start_iteration
开始的所有迭代(无限制)。如果 <= 0,则使用从start_iteration
开始的所有迭代(无限制)。pred_leaf (bool, 可选 (默认值=False)) – 是否预测叶节点索引。
pred_contrib (bool, 可选 (默认值=False)) –
是否预测特征贡献。
注意
如果您想使用 SHAP 值(例如 SHAP 交互值)获取模型预测的更多解释,可以安装 shap 包 (https://github.com/slundberg/shap)。请注意,与 shap 包不同,使用
pred_contrib
时,我们返回一个带有一列额外列的矩阵,其中最后一列是期望值。validate_features (bool, 可选 (默认值=False)) – 如果为 True,确保用于预测的特征与用于训练的特征匹配。仅当数据为 pandas DataFrame 时使用。
**kwargs – 预测的其他参数。
- 返回:
predicted_result (array-like,形状 = [n_samples] 或 形状 = [n_samples, n_classes]) – 预测值。
X_leaves (array-like,形状 = [n_samples, n_trees] 或 形状 = [n_samples, n_trees * n_classes]) – 如果
pred_leaf=True
,则为每个样本的每棵树的预测叶节点。X_SHAP_values (array-like,形状 = [n_samples, n_features + 1] 或 形状 = [n_samples, (n_features + 1) * n_classes],或包含 n_classes 个此类对象的列表) – 如果
pred_contrib=True
,则为每个样本的特征贡献。
- predict_proba(X, raw_score=False, start_iteration=0, num_iteration=None, pred_leaf=False, pred_contrib=False, validate_features=False, **kwargs)[source]
返回每个样本的每个类别的预测概率。
- 参数:
X (numpy array, pandas DataFrame, H2O DataTable 的 Frame (已弃用), scipy.sparse, int 或 float 列表的列表,形状 = [n_samples, n_features]) – 输入特征矩阵。
raw_score (bool, 可选 (默认值=False)) – 是否预测原始分数。
start_iteration (int, 可选 (默认值=0)) – 要预测的迭代的起始索引。如果 <= 0,则从第一次迭代开始。
num_iteration (int 或 None, 可选 (默认值=None)) – 预测中使用的总迭代次数。如果为 None,并且最佳迭代存在且 start_iteration <= 0,则使用最佳迭代;否则,使用从
start_iteration
开始的所有迭代(无限制)。如果 <= 0,则使用从start_iteration
开始的所有迭代(无限制)。pred_leaf (bool, 可选 (默认值=False)) – 是否预测叶节点索引。
pred_contrib (bool, 可选 (默认值=False)) –
是否预测特征贡献。
注意
如果您想使用 SHAP 值(例如 SHAP 交互值)获取模型预测的更多解释,可以安装 shap 包 (https://github.com/slundberg/shap)。请注意,与 shap 包不同,使用
pred_contrib
时,我们返回一个带有一列额外列的矩阵,其中最后一列是期望值。validate_features (bool, 可选 (默认值=False)) – 如果为 True,确保用于预测的特征与用于训练的特征匹配。仅当数据为 pandas DataFrame 时使用。
**kwargs – 预测的其他参数。
- 返回:
predicted_probability (array-like,形状 = [n_samples] 或 形状 = [n_samples, n_classes]) – 预测值。
X_leaves (array-like,形状 = [n_samples, n_trees] 或 形状 = [n_samples, n_trees * n_classes]) – 如果
pred_leaf=True
,则为每个样本的每棵树的预测叶节点。X_SHAP_values (array-like,形状 = [n_samples, n_features + 1] 或 形状 = [n_samples, (n_features + 1) * n_classes],或包含 n_classes 个此类对象的列表) – 如果
pred_contrib=True
,则为每个样本的特征贡献。
- score(X, y, sample_weight=None)
返回给定测试数据和标签上的平均准确率。
在多标签分类中,这是子集准确率,这是一个严格的指标,因为它要求每个样本的每个标签集都被正确预测。
- 参数:
X (array-like,形状 (n_samples, n_features)) – 测试样本。
y (array-like,形状 (n_samples,) 或 (n_samples, n_outputs)) – X 的真实标签。
sample_weight (array-like,形状 (n_samples,), 默认值=None) – 样本权重。
- 返回:
score –
self.predict(X)
相对于 y 的平均准确率。- 返回类型:
float
- set_fit_request(*, callbacks='$UNCHANGED$', categorical_feature='$UNCHANGED$', eval_class_weight='$UNCHANGED$', eval_init_score='$UNCHANGED$', eval_metric='$UNCHANGED$', eval_names='$UNCHANGED$', eval_sample_weight='$UNCHANGED$', eval_set='$UNCHANGED$', feature_name='$UNCHANGED$', init_model='$UNCHANGED$', init_score='$UNCHANGED$', sample_weight='$UNCHANGED$')
请求传递给
fit
方法的元数据。请注意,此方法仅在
enable_metadata_routing=True
时相关(参见sklearn.set_config()
)。请参阅 用户指南,了解路由机制的工作原理。每个参数的选项是
True
:请求元数据,如果提供则传递给fit
。如果未提供元数据,则忽略该请求。False
:不请求元数据,并且元估计器不会将其传递给fit
。None
:不请求元数据,如果用户提供,元估计器将引发错误。str
:元数据应使用此给定别名而不是原始名称传递给元估计器。
默认值(
sklearn.utils.metadata_routing.UNCHANGED
)保留现有请求。这允许您更改某些参数的请求而不更改其他参数。添加于版本 1.3。
注意
此方法仅当此评估器用作元评估器的子评估器时才相关,例如在
Pipeline
内部使用。否则无效。- 参数:
callbacks (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
fit
方法中callbacks
参数的元数据路由。categorical_feature (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
fit
方法中categorical_feature
参数的元数据路由。eval_class_weight (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
fit
方法中eval_class_weight
参数的元数据路由。eval_init_score (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
fit
方法中eval_init_score
参数的元数据路由。eval_metric (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
fit
方法中eval_metric
参数的元数据路由。eval_names (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
fit
方法中eval_names
参数的元数据路由。eval_sample_weight (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
fit
方法中eval_sample_weight
参数的元数据路由。eval_set (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
fit
方法中eval_set
参数的元数据路由。feature_name (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
fit
方法中feature_name
参数的元数据路由。init_model (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
fit
方法中init_model
参数的元数据路由。init_score (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
fit
方法中init_score
参数的元数据路由。sample_weight (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
fit
方法中sample_weight
参数的元数据路由。
- 返回:
self – 更新后的对象。
- 返回类型:
object
- set_params(**params)
设置此评估器的参数。
- 参数:
**params – 带有新值的参数名称。
- 返回:
self – 返回自身。
- 返回类型:
object
- set_predict_proba_request(*, num_iteration='$UNCHANGED$', pred_contrib='$UNCHANGED$', pred_leaf='$UNCHANGED$', raw_score='$UNCHANGED$', start_iteration='$UNCHANGED$', validate_features='$UNCHANGED$')
请求传递给
predict_proba
方法的元数据。请注意,此方法仅在
enable_metadata_routing=True
时相关(参见sklearn.set_config()
)。请参阅 用户指南,了解路由机制的工作原理。每个参数的选项是
True
:请求元数据,如果提供则传递给predict_proba
。如果未提供元数据,则忽略该请求。False
:不请求元数据,并且元估计器不会将其传递给predict_proba
。None
:不请求元数据,如果用户提供,元估计器将引发错误。str
:元数据应使用此给定别名而不是原始名称传递给元估计器。
默认值(
sklearn.utils.metadata_routing.UNCHANGED
)保留现有请求。这允许您更改某些参数的请求而不更改其他参数。添加于版本 1.3。
注意
此方法仅当此评估器用作元评估器的子评估器时才相关,例如在
Pipeline
内部使用。否则无效。- 参数:
num_iteration (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
predict_proba
方法中num_iteration
参数的元数据路由。pred_contrib (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
predict_proba
方法中pred_contrib
参数的元数据路由。pred_leaf (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
predict_proba
方法中pred_leaf
参数的元数据路由。raw_score (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
predict_proba
方法中raw_score
参数的元数据路由。start_iteration (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
predict_proba
方法中start_iteration
参数的元数据路由。validate_features (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
predict_proba
方法中validate_features
参数的元数据路由。
- 返回:
self – 更新后的对象。
- 返回类型:
object
- set_predict_request(*, num_iteration='$UNCHANGED$', pred_contrib='$UNCHANGED$', pred_leaf='$UNCHANGED$', raw_score='$UNCHANGED$', start_iteration='$UNCHANGED$', validate_features='$UNCHANGED$')
请求传递给
predict
方法的元数据。请注意,此方法仅在
enable_metadata_routing=True
时相关(参见sklearn.set_config()
)。请参阅 用户指南,了解路由机制的工作原理。每个参数的选项是
True
:请求元数据,如果提供则传递给predict
。如果未提供元数据,则忽略该请求。False
:不请求元数据,并且元估计器不会将其传递给predict
。None
:不请求元数据,如果用户提供,元估计器将引发错误。str
:元数据应使用此给定别名而不是原始名称传递给元估计器。
默认值(
sklearn.utils.metadata_routing.UNCHANGED
)保留现有请求。这允许您更改某些参数的请求而不更改其他参数。添加于版本 1.3。
注意
此方法仅当此评估器用作元评估器的子评估器时才相关,例如在
Pipeline
内部使用。否则无效。- 参数:
num_iteration (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
predict
方法中num_iteration
参数的元数据路由。pred_contrib (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
predict
方法中pred_contrib
参数的元数据路由。pred_leaf (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
predict
方法中pred_leaf
参数的元数据路由。raw_score (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
predict
方法中raw_score
参数的元数据路由。start_iteration (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
predict
方法中start_iteration
参数的元数据路由。validate_features (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
predict
方法中validate_features
参数的元数据路由。
- 返回:
self – 更新后的对象。
- 返回类型:
object
- set_score_request(*, sample_weight='$UNCHANGED$')
请求传递给
score
方法的元数据。请注意,此方法仅在
enable_metadata_routing=True
时相关(参见sklearn.set_config()
)。请参阅 用户指南,了解路由机制的工作原理。每个参数的选项是
True
:请求元数据,如果提供则传递给score
。如果未提供元数据,则忽略该请求。False
:不请求元数据,并且元估计器不会将其传递给score
。None
:不请求元数据,如果用户提供,元估计器将引发错误。str
:元数据应使用此给定别名而不是原始名称传递给元估计器。
默认值(
sklearn.utils.metadata_routing.UNCHANGED
)保留现有请求。这允许您更改某些参数的请求而不更改其他参数。添加于版本 1.3。
注意
此方法仅当此评估器用作元评估器的子评估器时才相关,例如在
Pipeline
内部使用。否则无效。- 参数:
sample_weight (str, True, False, 或 None, 默认值=sklearn.utils.metadata_routing.UNCHANGED) –
score
方法中sample_weight
参数的元数据路由。- 返回:
self – 更新后的对象。
- 返回类型:
object