catboost_regressor#

CatBoost 回归器,一个使用决策树梯度提升的回归器。CatBoost 是一个开源库,原生支持分类特征。

模块内容#

类摘要#

CatBoostRegressor

CatBoost 回归器,一个使用决策树梯度提升的回归器。CatBoost 是一个开源库,原生支持分类特征。

目录#

class evalml.pipelines.components.estimators.regressors.catboost_regressor.CatBoostRegressor(n_estimators=10, eta=0.03, max_depth=6, bootstrap_type=None, silent=False, allow_writing_files=False, random_seed=0, n_jobs=-1, **kwargs)[source]#

CatBoost 回归器,一个使用决策树梯度提升的回归器。CatBoost 是一个开源库,原生支持分类特征。

有关更多信息,请访问 https://catboost.ai/

参数
  • n_estimators (float) – 要构建的最大树数量。默认为 10。

  • eta (float) – 学习率。默认为 0.03。

  • max_depth (int) – 基础学习器的最大树深度。默认为 6。

  • bootstrap_type (string) – 定义对象权重采样的方法。可用方法有 'Bayesian', 'Bernoulli', 'MVS'。默认为 None。

  • silent (boolean) – 是否使用“静默”日志模式。默认为 True。

  • allow_writing_files (boolean) – 训练期间是否允许写入快照文件。默认为 False。

  • n_jobs (int or None) – 并行运行的作业数。-1 表示使用所有进程。默认为 -1。

  • random_seed (int) – 随机数生成器的种子。默认为 0。

属性

hyperparameter_ranges

{ “n_estimators”: Integer(4, 100), “eta”: Real(0.000001, 1), “max_depth”: Integer(4, 10),}

model_family

ModelFamily.CATBOOST

modifies_features

True

modifies_target

False

name

CatBoost 回归器

supported_problem_types

[ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION, ProblemTypes.MULTISERIES_TIME_SERIES_REGRESSION,]

training_only

False

方法

clone

构造一个具有相同参数和随机状态的新组件。

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

拟合的 CatBoost 回归器的特征重要性。

fit

将 CatBoost 回归器组件拟合到数据。

get_prediction_intervals

使用拟合的回归器查找预测区间。

load

从文件路径加载组件。

needs_fitting

返回布尔值,确定组件在调用 predict, predict_proba, transform 或 feature_importances 之前是否需要拟合。

parameters

返回用于初始化组件的参数。

predict

使用拟合的 CatBoost 回归器进行预测。

predict_proba

对标签进行概率估计。

save

将组件保存到文件路径。

update_parameters

更新组件的参数字典。

clone(self)#

构造一个具有相同参数和随机状态的新组件。

返回

此组件的一个新实例,具有相同的参数和随机状态。

default_parameters(cls)#

返回此组件的默认参数。

我们的约定是 Component.default_parameters == Component().parameters。

返回

此组件的默认参数。

返回类型

dict

describe(self, print_name=False, return_dict=False)#

描述一个组件及其参数。

参数
  • print_name (bool, optional) – 是否打印组件名称

  • return_dict (bool, optional) – 是否将描述作为字典返回,格式为 {“name”: name, “parameters”: parameters}

返回

如果 return_dict 为 True,则返回字典,否则返回 None。

返回类型

None or dict

property feature_importance(self)#

拟合的 CatBoost 回归器的特征重要性。

fit(self, X, y=None)[source]#

将 CatBoost 回归器组件拟合到数据。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_samples, n_features]。

  • y (pd.Series) – 目标训练数据,长度为 [n_samples]。

返回

self

get_prediction_intervals(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None, coverage: List[float] = None, predictions: pandas.Series = None) Dict[str, pandas.Series]#

使用拟合的回归器查找预测区间。

此函数采用拟合估计器的预测结果,并使用窗口大小为 5 计算所有预测的滚动标准差。通过将每个边界的下尾概率(分位数)函数乘以滚动标准差来确定下限和上限预测。

参数
  • X (pd.DataFrame) – 数据,形状为 [n_samples, n_features]。

  • y (pd.Series) – 目标数据。被忽略。

  • coverage (list[float]) – 一个列表,包含介于 0 和 1 之间的浮点数,用于计算预测区间的上限和下限。

  • predictions (pd.Series) – 要使用的可选预测列表。如果为 None,将使用 X 生成预测。

返回

预测区间,键的格式为 {coverage}_lower 或 {coverage}_upper。

返回类型

dict

引发

MethodPropertyNotFoundError – 如果估计器不支持时间序列回归作为问题类型。

static load(file_path)#

从文件路径加载组件。

参数

file_path (str) – 加载文件的位置。

返回

ComponentBase object

needs_fitting(self)#

返回布尔值,确定组件在调用 predict, predict_proba, transform 或 feature_importances 之前是否需要拟合。

对于不需要拟合或其 fit 方法不执行任何操作的组件,可以将其重写为 False。

返回

True.

property parameters(self)#

返回用于初始化组件的参数。

predict(self, X)[source]#

使用拟合的 CatBoost 回归器进行预测。

参数

X (pd.DataFrame) – 数据,形状为 [n_samples, n_features]。

返回

预测值。

返回类型

pd.DataFrame

predict_proba(self, X: pandas.DataFrame) pandas.Series#

对标签进行概率估计。

参数

X (pd.DataFrame) – 特征。

返回

概率估计值。

返回类型

pd.Series

引发

MethodPropertyNotFoundError – 如果估计器没有 predict_proba 方法或没有实现 predict_proba 的 component_obj。

save(self, file_path, pickle_protocol=cloudpickle.DEFAULT_PROTOCOL)#

将组件保存到文件路径。

参数
  • file_path (str) – 保存文件的位置。

  • pickle_protocol (int) – pickle 数据流格式。

update_parameters(self, update_dict, reset_fit=True)#

更新组件的参数字典。

参数
  • update_dict (dict) – 一个用于更新参数的字典。

  • reset_fit (bool, optional) – 如果为 True,将把 _is_fitted 设置为 False。