lightgbm.LGBMRegressor

class lightgbm.LGBMRegressor(*, 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]

Bases: RegressorMixin, 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’,dropout 遇到多重加性回归树。‘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, callableNone, 可选 (默认=None)) – 指定学习任务及相应的学习目标,或要使用的自定义目标函数(详见下注)。默认值:LGBMRegressor 为 ‘regression’,LGBMClassifier 为 ‘binary’ 或 ‘multiclass’,LGBMRanker 为 ‘lambdarank’。

  • class_weight (dict, 'balanced'None, 可选 (默认=None)) – 与类别关联的权重,形式为 {类别标签: 权重}。仅在多类别分类任务中使用此参数;对于二元分类任务,您可以使用 is_unbalancescale_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 (intNone, 可选 (默认=None)) –

    训练时使用的并行线程数(在预测时可以通过额外的关键字参数进行更改)。

    为了获得更好的性能,建议将其设置为 CPU 中的物理核心数。

    负整数被解释为遵循 joblib 的公式 (n_cpus + 1 + n_jobs),就像 scikit-learn 一样(因此例如 -1 表示使用所有线程)。值为零对应于系统中为 OpenMP 配置的默认线程数。值为 None(默认值)对应于使用系统中的物理核心数(其正确检测需要安装 joblibpsutil 实用库)。

    在版本 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, hessobjective(y_true, y_pred, weight) -> grad, hessobjective(y_true, y_pred, weight, group) -> grad, hess

y_true形状为 [n_samples] 的 numpy 1-D 数组

目标值。

y_pred形状为 [n_samples] 的 numpy 1-D 数组 或 形状为 [n_samples, n_classes] 的 numpy 2-D 数组(用于多类别任务)

预测值。预测值在任何转换之前返回,例如,对于二元任务,它们是原始 margin 而不是正类概率。

weight形状为 [n_samples] 的 numpy 1-D 数组

样本权重。权重应为非负数。

groupnumpy 1-D 数组

组/查询数据。仅用于排名学习任务。sum(group) = n_samples。例如,如果您有一个包含 100 个文档的数据集,其中 group = [10, 20, 40, 10, 10, 10],这意味着您有 6 个组,其中前 10 条记录属于第一个组,记录 11-30 属于第二个组,记录 31-70 属于第三个组,依此类推。

grad形状为 [n_samples] 的 numpy 1-D 数组 或 形状为 [n_samples, n_classes] 的 numpy 2-D 数组(用于多类别任务)

对于每个样本点,损失函数相对于 y_pred 元素的关于 y_pred 元素的一阶导数(梯度)值。

hess形状为 [n_samples] 的 numpy 1-D 数组 或 形状为 [n_samples, n_classes] 的 numpy 2-D 数组(用于多类别任务)

对于每个样本点,损失函数相对于 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_metadata_routing()

获取此对象的元数据路由。

get_params([deep])

获取此估计器的参数。

predict(X[, raw_score, start_iteration, ...])

返回每个样本的预测值。

score(X, y[, sample_weight])

返回预测的决定系数。

set_fit_request(*[, callbacks, ...])

请求传递给 fit 方法的元数据。

set_params(**params)

设置此估计器的参数。

set_predict_request(*[, num_iteration, ...])

请求传递给 predict 方法的元数据。

set_score_request(*[, sample_weight])

请求传递给 score 方法的元数据。

属性

best_iteration_

如果指定了 early_stopping() 回调函数,则为拟合模型的最佳迭代次数。

best_score_

拟合模型的最佳分数。

booster_

此模型的底层 Booster。

evals_result_

如果指定了验证集,则为评估结果。

feature_importances_

特征重要性(值越高越重要)。

feature_name_

特征名称。

feature_names_in_

与 scikit-learn 兼容的 .feature_name_ 版本。

n_estimators_

执行的真实提升迭代次数。

n_features_

拟合模型的特征数量。

n_features_in_

拟合模型的特征数量。

n_iter_

执行的真实提升迭代次数。

objective_

拟合此模型时使用的具体目标函数。

property best_iteration_

如果指定了 early_stopping() 回调函数,则为拟合模型的最佳迭代次数。

类型:

int

property best_score_

拟合模型的最佳分数。

类型:

dict

property booster_

此模型的底层 Booster。

类型:

Booster

property evals_result_

如果指定了验证集,则为评估结果。

类型:

dict

property feature_importances_

特征重要性(值越高越重要)。

注意

importance_type 属性传递给函数以配置提取重要性值的类型。

类型:

形状为 [n_features] 的 array

property feature_name_

特征名称。

注意

如果输入不包含特征名称,则在拟合期间将以 Column_0, Column_1, …, Column_N 的格式添加它们。

类型:

形状为 [n_features] 的 list

property feature_names_in_

与 scikit-learn 兼容的 .feature_name_ 版本。

在版本 4.5.0 中添加。

类型:

形状为 [n_features] 的 array

fit(X, y, sample_weight=None, init_score=None, eval_set=None, eval_names=None, eval_sample_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 数组, pandas DataFrame, H2O DataTable 的 Frame (已弃用), scipy.sparse, intfloat 列表的列表, 形状 = [n_samples, n_features]) – 输入特征矩阵。

  • y (numpy 数组, pandas DataFrame, pandas Series, intfloat 列表, 形状 = [n_samples]) – 目标值(分类中的类别标签,回归中的实数)。

  • sample_weight (numpy 数组, pandas Series, intfloat 列表, 形状 = [n_samples] 或 None, 可选 (默认=None)) – 训练数据的权重。权重应为非负数。

  • init_score (numpy 数组, pandas DataFrame, pandas Series, intfloat 列表, 形状 = [n_samples] 或 形状 = [n_samples * n_classes] (用于多类别任务) 或 形状 = [n_samples, n_classes] (用于多类别任务) 或 None, 可选 (默认=None)) – 训练数据的初始分数。

  • eval_set (listNone, 可选 (默认=None)) – 用作验证集的 (X, y) 元组对列表。

  • eval_names (str 列表, 或 None, 可选 (默认=None)) – eval_set 的名称。

  • eval_sample_weight (数组列表(与 sample_weight 支持的类型相同),或 None,可选(默认=None))

  • 评估数据的权重。权重应为非负数。

  • eval_metric (str, callable, listNone, 可选 (默认=None)) – 如果是 str,则应为内置的评估指标。如果是 callable,则应为自定义评估指标,详见下注。如果是 list,则可以是内置指标列表、自定义评估指标列表或两者的混合。无论哪种情况,模型参数中的 metric 也将被评估和使用。默认值:LGBMRegressor 为 ‘l2’,LGBMClassifier 为 ‘logloss’,LGBMRanker 为 ‘ndcg’。

  • feature_name (str 列表, 或 'auto', 可选 (默认='auto')) – 特征名称。如果为 ‘auto’ 且数据是 pandas DataFrame,则使用数据列名称。

  • categorical_feature (strint 列表, 或 'auto', 可选 (默认='auto')) – 类别特征。如果是 int 列表,则解释为索引。如果是 str 列表,则解释为特征名称(也需要指定 feature_name)。如果为 ‘auto’ 且数据是 pandas DataFrame,则使用 pandas 无序类别列。类别特征中的所有值都将被转换为 int32,因此应小于 int32 最大值 (2147483647)。大值可能会消耗内存。考虑使用从零开始的连续整数。类别特征中的所有负值都将被视为缺失值。输出不能对类别特征进行单调约束。类别特征中的浮点数将四舍五入到接近 0 的整数。

  • callbacks (callable 列表, 或 None, 可选 (默认=None)) – 在每次迭代时应用的 callback 函数列表。更多信息请参阅 Python API 中的 回调函数。

  • init_model (str, pathlib.Path, Booster, LGBMModelNone, 可选 (默认=None)) – 用于继续训练的 LightGBM 模型文件名、Booster 实例或 LGBMModel 实例。

返回:

self – 返回 self。

返回类型:

LGBMRegressor

注意

自定义评估函数需要一个 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_true形状为 [n_samples] 的 numpy 1-D 数组

目标值。

y_pred形状为 [n_samples] 的 numpy 1-D 数组 或 形状为 [n_samples, n_classes] 的 numpy 2-D 数组(用于多类别任务)

预测值。在使用自定义 objective 时,预测值在任何转换之前返回,例如,在这种情况下,对于二元任务,它们是原始 margin 而不是正类的概率。

weight形状为 [n_samples] 的 numpy 1-D 数组

样本权重。权重应为非负数。

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_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_

拟合此模型时使用的具体目标函数。

类型:

strcallable

predict(X, raw_score=False, start_iteration=0, num_iteration=None, pred_leaf=False, pred_contrib=False, validate_features=False, **kwargs)

返回每个样本的预测值。

参数:
  • X (numpy 数组, pandas DataFrame, H2O DataTable 的 Frame (已弃用), scipy.sparse, intfloat 列表的列表, 形状 = [n_samples, n_features]) – 输入特征矩阵。

  • raw_score (bool, 可选 (默认=False)) – 是否预测原始分数。

  • start_iteration (int, 可选 (默认=0)) – 预测迭代的起始索引。如果 <= 0,则从第一次迭代开始。

  • num_iteration (intNone, 可选 (默认=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 (类似数组,形状 = [n_samples] 或 形状 = [n_samples, n_classes])

  • 预测值。

  • X_leaves (类似数组,形状 = [n_samples, n_trees] 或 形状 = [n_samples, n_trees * n_classes])

如果 pred_leaf=True,则为每个样本的每棵树的预测叶节点。

返回预测的决定系数。

X_SHAP_values (类似数组,形状 = [n_samples, n_features + 1] 或 形状 = [n_samples, (n_features + 1) * n_classes] 或 长度为 n_classes 的此类对象列表)

参数:
  • 如果 pred_contrib=True,则为每个样本的特征贡献。

  • score(X, y, sample_weight=None)

  • 决定系数 \(R^2\) 定义为 \((1 - \frac{u}{v})\),其中 \(u\) 是残差平方和 ((y_true - y_pred)** 2).sum()\(v\) 是总平方和 ((y_true - y_true.mean()) ** 2).sum()。最佳可能得分是 1.0,并且它可以为负(因为模型可能任意差)。一个始终预测 y 的期望值而忽略输入特征的常数模型将获得 0.0 的 \(R^2\) 分数。

返回:

X (类似数组,形状 (n_samples, n_features)) – 测试样本。对于某些估计器,这可能是一个预计算的核矩阵或一个通用对象列表,形状为 (n_samples, n_samples_fitted),其中 n_samples_fitted 是拟合估计器时使用的样本数量。

返回类型:

y (类似数组,形状 (n_samples,) 或 (n_samples, n_outputs)) – X 的真实值。

sample_weight (类似数组,形状 (n_samples,), 默认=None) – 样本权重。

scoreself.predict(X) 相对于 y\(R^2\) 值。

float

请求传递给 fit 方法的元数据。

注意

在回归器上调用 score 时使用的 \(R^2\) 分数从 0.23 版本开始使用 multioutput='uniform_average',以便与 r2_score() 的默认值保持一致。这会影响所有多输出回归器(MultiOutputRegressor 除外)的 score 方法。

  • set_fit_request(*, callbacks='$UNCHANGED$', categorical_feature='$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$')

  • 请注意,此方法仅在 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_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 – 更新后的对象。

返回:

self – 返回 self。

返回类型:

init_score (str, True, False, 或 None, 默认=sklearn.utils.metadata_routing.UNCHANGED) – fit 方法中 init_score 参数的元数据路由。

object

请求传递给 predict 方法的元数据。

注意

在回归器上调用 score 时使用的 \(R^2\) 分数从 0.23 版本开始使用 multioutput='uniform_average',以便与 r2_score() 的默认值保持一致。这会影响所有多输出回归器(MultiOutputRegressor 除外)的 score 方法。

  • set_params(**params)

  • **params – 参数名称及其新值。

  • 每个参数的选项如下:

  • True:请求元数据,如果提供则传递给 fit。如果未提供元数据,则忽略请求。

False:不请求元数据,且元估计器不会将其传递给 fit

None:不请求元数据,如果用户提供元数据,元估计器将引发错误。

注意

str:应将元数据以给定的别名而不是原始名称传递给元估计器。

参数:
  • set_predict_request(*, num_iteration='$UNCHANGED$', pred_contrib='$UNCHANGED$', pred_leaf='$UNCHANGED$', raw_score='$UNCHANGED$', start_iteration='$UNCHANGED$', validate_features='$UNCHANGED$')

  • True:请求元数据,如果提供则传递给 predict。如果未提供元数据,则忽略请求。

  • False:不请求元数据,且元估计器不会将其传递给 predict

  • 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 参数的元数据路由。

返回:

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 参数的元数据路由。

raw_score (str, True, False, 或 None, 默认=sklearn.utils.metadata_routing.UNCHANGED) – predict 方法中 raw_score 参数的元数据路由。

请求传递给 score 方法的元数据。

注意

在回归器上调用 score 时使用的 \(R^2\) 分数从 0.23 版本开始使用 multioutput='uniform_average',以便与 r2_score() 的默认值保持一致。这会影响所有多输出回归器(MultiOutputRegressor 除外)的 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 参数的元数据路由。

  • 每个参数的选项如下:

  • True:请求元数据,如果提供则传递给 fit。如果未提供元数据,则忽略请求。

False:不请求元数据,且元估计器不会将其传递给 fit

None:不请求元数据,如果用户提供元数据,元估计器将引发错误。

注意

str:应将元数据以给定的别名而不是原始名称传递给元估计器。

参数:

set_score_request(*, sample_weight='$UNCHANGED$')

返回:

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 参数的元数据路由。