回归器#

回归模型组件。

包内容#

类摘要#

ARIMARegressor

自回归积分移动平均模型。三个参数 (p, d, q) 分别是 AR 阶数、差分阶数和 MA 阶数。更多信息请参阅: https://statsmodels.cn/devel/generated/statsmodels.tsa.arima.model.ARIMA.html

BaselineRegressor

使用简单策略进行预测的基准回归器。这对于作为简单基准回归器与其他回归器进行比较非常有用。

CatBoostRegressor

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

DecisionTreeRegressor

决策树回归器。

ElasticNetRegressor

Elastic Net 回归器。

ExponentialSmoothingRegressor

Holt-Winters 指数平滑预测器。

ExtraTreesRegressor

额外树回归器。

LightGBMRegressor

LightGBM 回归器。

LinearRegressor

线性回归器。

MultiseriesTimeSeriesBaselineRegressor

使用朴素预测方法进行预测的多系列时间序列回归器。

ProphetRegressor

Prophet 是一种基于加法模型的时间序列数据预测方法,该模型使用年度、每周和每日季节性以及假日效应来拟合非线性趋势。它最适合具有强季节性效应和多个季节历史数据的时间序列。Prophet 对缺失数据和趋势变化具有鲁棒性,并且通常能很好地处理异常值。

RandomForestRegressor

随机森林回归器。

SVMRegressor

支持向量机回归器。

TimeSeriesBaselineEstimator

使用朴素预测方法进行预测的时间序列估计器。

VARMAXRegressor

带外生回归器的向量自回归移动平均模型。两个参数 (p, q) 分别是 AR 阶数和 MA 阶数。更多信息请参阅: https://statsmodels.cn/stable/generated/statsmodels.tsa.statespace.varmax.VARMAX.html

XGBoostRegressor

XGBoost 回归器。

内容#

class evalml.pipelines.components.estimators.regressors.ARIMARegressor(time_index: Optional[Hashable] = None, trend: Optional[str] = None, start_p: int = 2, d: int = 0, start_q: int = 2, max_p: int = 5, max_d: int =2, max_q: int =5, seasonal: bool = True, sp: int =1, n_jobs: int = -1, random_seed: Union[int, float] = 0, maxiter: int = 10, use_covariates: bool = True, **kwargs)[source]#

自回归积分移动平均模型。三个参数 (p, d, q) 分别是 AR 阶数、差分阶数和 MA 阶数。更多信息请参阅: https://statsmodels.cn/devel/generated/statsmodels.tsa.arima.model.ARIMA.html

目前 ARIMARegressor 不支持通过 conda 安装。建议通过 PyPI 安装。

参数
  • time_index (str) – 指定 X 中提供日期时间对象的列的名称。默认为 None。

  • trend (str) – 控制确定性趋势。选项包括 ['n', 'c', 't', 'ct'],其中 'c' 表示常数项,'t' 表示线性趋势,'ct' 表示两者。在定义多项式时也可以是可迭代对象,例如 [1, 1, 0, 1]。

  • start_p (int) – 最小自回归阶数。默认为 2。

  • d (int) – 最小差分阶数。默认为 0。

  • start_q (int) – 最小移动平均阶数。默认为 2。

  • max_p (int) – 最大自回归阶数。默认为 5。

  • max_d (int) – 最大差分阶数。默认为 2。

  • max_q (int) – 最大移动平均阶数。默认为 5。

  • seasonal (boolean) – 是否对 ARIMA 拟合季节性模型。默认为 True。

  • sp (int or str) – 季节性差分周期,具体而言是每个季节的周期数。如果设置为 "detect",该模型将自动检测此参数(如果时间序列是标准频率),如果无法检测到,则回退到 1(无季节性)。默认为 1。

  • n_jobs (int or None) – 描述管道并行级别的非负整数。默认为 -1。

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

属性

hyperparameter_ranges

{ "start_p": Integer(1, 3), "d": Integer(0, 2), "start_q": Integer(1, 3), "max_p": Integer(3, 10), "max_d": Integer(2, 5), "max_q": Integer(3, 10), "seasonal": [True, False],}

max_cols

7

max_rows

1000

model_family

ModelFamily.ARIMA

modifies_features

True

modifies_target

False

name

ARIMA 回归器

supported_problem_types

[ProblemTypes.TIME_SERIES_REGRESSION]

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

返回长度为 1 的零数组,因为特征重要性未定义为 ARIMA 回归器。

fit

将 ARIMA 回归器拟合到数据。

get_prediction_intervals

使用拟合的 ARIMARegressor 查找预测区间。

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

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

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) numpy.ndarray#

返回长度为 1 的零数组,因为特征重要性未定义为 ARIMA 回归器。

fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)[source]#

将 ARIMA 回归器拟合到数据。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

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

返回

self

引发异常

ValueError – 如果未传入 y。

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

使用拟合的 ARIMARegressor 查找预测区间。

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

  • y (pd.Series) – 目标数据。可选。

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

  • predictions (pd.Series) – 不用于 ARIMA 回归器。

返回

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

返回类型

dict

static load(file_path)#

从文件路径加载组件。

参数

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

返回

ComponentBase object

needs_fitting(self)#

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

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

返回

True.

property parameters(self)#

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

predict(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None) pandas.Series[source]#

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

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

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

返回

预测值。

返回类型

pd.Series

引发异常

ValueError – 如果 X 已传递给 fit 但未传递给 predict

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。

class evalml.pipelines.components.estimators.regressors.BaselineRegressor(strategy='mean', random_seed=0, **kwargs)[source]#

使用简单策略进行预测的基准回归器。这对于作为简单基准回归器与其他回归器进行比较非常有用。

参数
  • strategy (str) – 用于预测的方法。有效选项为 "mean", "median"。默认为 "mean"。

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

属性

hyperparameter_ranges

{}

model_family

ModelFamily.BASELINE

modifies_features

True

modifies_target

False

name

基准回归器

supported_problem_types

[ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,]

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

返回与每个特征相关的重要性。由于基准回归器不使用输入特征来计算预测,因此返回一个零数组。

fit

将基准回归组件拟合到数据。

get_prediction_intervals

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

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

使用基准回归策略进行预测。

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)#

返回与每个特征相关的重要性。由于基准回归器不使用输入特征来计算预测,因此返回一个零数组。

返回

一个零数组。

返回类型

np.ndarray (float)

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

将基准回归组件拟合到数据。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

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

返回

self

引发异常

ValueError – 如果输入 y 为 None。

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_样本数, n_特征数]。

  • 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 之前是否需要拟合。

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

返回

True.

property parameters(self)#

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

predict(self, X)[source]#

使用基准回归策略进行预测。

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测值。

返回类型

pd.Series

pd.DataFrame

对标签进行概率估计。

参数

X (pd.DataFrame) – 特征。

返回

概率估计。

返回类型

pd.Series

引发异常

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

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

将组件保存到文件路径。

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

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

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

更新组件的参数字典。

参数
  • update_dict (dict) – 要更新的参数字典。

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

update_parameters(self, update_dict, reset_fit=True)#

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

class evalml.pipelines.components.estimators.regressors.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]#

参数
  • 更多信息请参阅 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。

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

属性

hyperparameter_ranges

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

model_family

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

modifies_features

True

modifies_target

False

name

ModelFamily.CATBOOST

supported_problem_types

CatBoost 回归器

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

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

fit

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

get_prediction_intervals

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

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

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

predict_proba

对标签进行概率估计。

save

将组件保存到文件路径。

update_parameters

更新组件的参数字典。

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

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

返回

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

clone(self)#

返回此组件的默认参数。

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

返回

此组件的默认参数。

返回类型

dict

default_parameters(cls)#

描述一个组件及其参数。

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

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

返回

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

返回类型

None or dict

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

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

property feature_importance(self)#

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

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

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

返回

self

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

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

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

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

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

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

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

返回

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

返回类型

dict

引发异常

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

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

从文件路径加载组件。

参数

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

返回

ComponentBase object

static load(file_path)#

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

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

返回

True.

needs_fitting(self)#

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

property parameters(self)#

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

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测值。

返回类型

predict(self, X)[source]#

pd.DataFrame

对标签进行概率估计。

参数

X (pd.DataFrame) – 特征。

返回

概率估计。

返回类型

pd.Series

引发异常

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

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

将组件保存到文件路径。

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

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

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

更新组件的参数字典。

参数
  • update_dict (dict) – 要更新的参数字典。

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

update_parameters(self, update_dict, reset_fit=True)#

决策树回归器。

参数
  • class evalml.pipelines.components.estimators.regressors.DecisionTreeRegressor(criterion='squared_error', max_features='sqrt', max_depth=6, min_samples_split=2, min_weight_fraction_leaf=0.0, random_seed=0, **kwargs)[source]#

    criterion ({"squared_error", "friedman_mse", "absolute_error", "poisson"}) –

    • 衡量分割质量的函数。支持的标准有

    • “squared_error” 用于均方误差,它等同于方差减少作为特征选择标准,并使用每个叶节点的均值最小化 L2 损失

    • “friedman_mse”,使用 Friedman 改进分数计算潜在分割的均方误差

    • “absolute_error” 用于平均绝对误差,它使用每个叶节点的中位数最小化 L1 损失,

  • “poisson”,使用 Poisson 偏差减少量来查找分割。

    max_features (int, float or {"sqrt", "log2"}) –

    • 在寻找最佳分割时要考虑的特征数量

    • 如果是 int,则在每次分割时考虑 max_features 个特征。

    • 如果是 float,则 max_features 是一个分数,并且在每次分割时考虑 int(max_features * n_features) 个特征。

    • 如果是 “sqrt”,则 max_features=sqrt(n_features)。

    • 如果是 “log2”,则 max_features=log2(n_features)。

    如果是 None,则 max_features = n_features。

  • 即使需要实际检查超过 max_features 个特征,寻找分割也不会停止,直到找到至少一个有效的节点样本划分。

  • max_depth (int) – 树的最大深度。默认为 6。

    min_samples_split (int or float) –

    • 分割内部节点所需的最小样本数

    • 如果是 int,则将 min_samples_split 视为最小数量。

    如果是 float,则 min_samples_split 是一个分数,并且 ceil(min_samples_split * n_样本数) 是每次分割的最小样本数。

  • 默认为 2。

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

属性

hyperparameter_ranges

min_weight_fraction_leaf (float) – 在叶节点所需的总权重(所有输入样本的权重总和)的最小加权分数。默认为 0.0。

model_family

{ “criterion”: [“squared_error”, “friedman_mse”, “absolute_error”], “max_features”: [“sqrt”, “log2”], “max_depth”: Integer(4, 10),}

modifies_features

True

modifies_target

False

name

ModelFamily.DECISION_TREE

supported_problem_types

CatBoost 回归器

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

决策树回归器

fit

返回与每个特征相关的重要性。

get_prediction_intervals

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

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

将估计器拟合到数据。

predict_proba

对标签进行概率估计。

save

将组件保存到文件路径。

update_parameters

更新组件的参数字典。

使用选定特征进行预测。

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

返回

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

clone(self)#

返回此组件的默认参数。

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

返回

此组件的默认参数。

返回类型

dict

default_parameters(cls)#

描述一个组件及其参数。

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

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

返回

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

返回类型

None or dict

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

决策树回归器

返回

property feature_importance(self) pandas.Series#

返回类型

与每个特征相关的重要性。

引发异常

np.ndarray

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

返回与每个特征相关的重要性。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

  • fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#

返回

self

y (pd.Series, optional) – 目标训练数据,长度为 [n_样本数]。

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

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

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

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

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

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

返回

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

返回类型

dict

引发异常

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

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

从文件路径加载组件。

参数

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

返回

ComponentBase object

static load(file_path)#

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

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

返回

True.

needs_fitting(self)#

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

property parameters(self)#

将估计器拟合到数据。

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测值。

返回类型

pd.Series

引发异常

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

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

对标签进行概率估计。

参数

X (pd.DataFrame) – 特征。

返回

概率估计。

返回类型

pd.Series

引发异常

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

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

将组件保存到文件路径。

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

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

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

更新组件的参数字典。

参数
  • update_dict (dict) – 要更新的参数字典。

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

update_parameters(self, update_dict, reset_fit=True)#

Elastic Net 回归器。

参数
  • class evalml.pipelines.components.estimators.regressors.ElasticNetRegressor(alpha=0.0001, l1_ratio=0.15, max_iter=1000, random_seed=0, **kwargs)[source]#

  • alpha (float) – 乘以惩罚项的常数。默认为 0.0001。

  • l1_ratio (float) – 混合参数,0 <= l1_ratio <= 1。仅在 penalty='elasticnet' 时使用。设置 l1_ratio=0 等同于使用 penalty='l2',而设置 l1_ratio=1 等同于使用 penalty='l1'。对于 0 < l1_ratio < 1,惩罚是 L1 和 L2 的组合。默认为 0.15。

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

属性

hyperparameter_ranges

max_iter (int) – 最大迭代次数。默认为 1000。

model_family

{ “alpha”: Real(0, 1), “l1_ratio”: Real(0, 1),}

modifies_features

True

modifies_target

False

name

ModelFamily.LINEAR_MODEL

supported_problem_types

CatBoost 回归器

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

Elastic Net 回归器

fit

返回与每个特征相关的重要性。

get_prediction_intervals

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

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

将估计器拟合到数据。

predict_proba

对标签进行概率估计。

save

将组件保存到文件路径。

update_parameters

更新组件的参数字典。

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

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

返回

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

clone(self)#

返回此组件的默认参数。

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

返回

此组件的默认参数。

返回类型

dict

default_parameters(cls)#

描述一个组件及其参数。

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

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

返回

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

返回类型

None or dict

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

Elastic Net 回归器

property feature_importance(self)#

返回与每个特征相关的重要性。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

  • fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#

返回

self

fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#

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

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

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

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

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

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

返回

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

返回类型

dict

引发异常

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

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

从文件路径加载组件。

参数

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

返回

ComponentBase object

static load(file_path)#

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

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

返回

True.

needs_fitting(self)#

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

property parameters(self)#

将估计器拟合到数据。

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测值。

返回类型

pd.Series

引发异常

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

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

对标签进行概率估计。

参数

X (pd.DataFrame) – 特征。

返回

概率估计。

返回类型

pd.Series

引发异常

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

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

将组件保存到文件路径。

参数
  • 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。

class evalml.pipelines.components.estimators.regressors.ExponentialSmoothingRegressor(trend: Optional[str] = None, damped_trend: bool = False, seasonal: Optional[str] = None, sp: int = 2, n_jobs: int = -1, random_seed: Union[int, float] = 0, **kwargs)[源代码]#

Holt-Winters 指数平滑预测器。

目前 ExponentialSmoothingRegressor 不支持通过 conda 安装。建议通过 PyPI 安装。

参数
  • trend (str) – 趋势分量的类型。默认为 None。

  • damped_trend (bool) – 趋势分量是否应被阻尼。默认为 False。

  • seasonal (str) – 季节性分量的类型。取值范围 {“additive”, None}。如果

  • 0 (none of the target data is) – 目标数据中没有 0,也可以是 multiplicative,

  • None. (but AutoMLSearch wiill not tune for this. Defaults to) – 但 AutoMLSearch 不会对此进行调优。默认为 None。

  • sp (int) – 要考虑的季节周期数。默认为 2。

  • n_jobs (int or None) – 描述管道并行级别的非负整数。默认为 -1。

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

属性

hyperparameter_ranges

{ “trend”: [None, “additive”], “damped_trend”: [True, False], “seasonal”: [None, “additive”], “sp”: Integer(2, 8),}

model_family

ModelFamily.EXPONENTIAL_SMOOTHING

modifies_features

True

modifies_target

False

name

指数平滑回归器

supported_problem_types

[ProblemTypes.TIME_SERIES_REGRESSION]

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

返回长度为 1 的全 0 数组,因为指数平滑回归器未定义特征重要性。

fit

将指数平滑回归器拟合到数据。

get_prediction_intervals

使用已拟合的 ExponentialSmoothingRegressor 查找预测区间。

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

使用已拟合的指数平滑回归器进行预测。

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) pandas.Series#

返回长度为 1 的全 0 数组,因为指数平滑回归器未定义特征重要性。

fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)[源代码]#

将指数平滑回归器拟合到数据。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本, n_特征]。被忽略。

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

返回

self

引发异常

ValueError – 如果未传入 y。

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

使用已拟合的 ExponentialSmoothingRegressor 查找预测区间。

通过模拟遵循指定状态空间模型的时间序列来计算预测区间。

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

  • y (pd.Series) – 目标数据。可选。

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

  • predictions (pd.Series) – 不用于指数平滑回归器。

返回

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

返回类型

dict

static load(file_path)#

从文件路径加载组件。

参数

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

返回

ComponentBase object

needs_fitting(self)#

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

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

返回

True.

property parameters(self)#

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

predict(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None) pandas.Series[源代码]#

使用已拟合的指数平滑回归器进行预测。

参数
  • X (pd.DataFrame) – 数据形状为 [n_样本, n_特征]。除了用于设置预测范围外,其余被忽略。

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

返回

预测值。

返回类型

pd.Series

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。

class evalml.pipelines.components.estimators.regressors.ExtraTreesRegressor(n_estimators: int = 100, max_features: str = 'sqrt', max_depth: int = 6, min_samples_split: int = 2, min_weight_fraction_leaf: float = 0.0, n_jobs: int = -1, random_seed: Union[int, float] = 0, **kwargs)[源代码]#

额外树回归器。

参数
  • n_estimators (float) – 森林中的树数量。默认为 100。

  • “poisson”,使用 Poisson 偏差减少量来查找分割。

    max_features (int, float or {"sqrt", "log2"}) –

    • 在寻找最佳分割时要考虑的特征数量

    • 如果是 int,则在每次分割时考虑 max_features 个特征。

    • 如果是 float,则 max_features 是一个分数,并且在每次分割时考虑 int(max_features * n_features) 个特征。

    • 如果是 “sqrt”,则 max_features=sqrt(n_features)。

    • 如果是 “log2”,则 max_features=log2(n_features)。

    如果是 None,则 max_features = n_features。

  • 即使需要实际检查超过 max_features 个特征,寻找分割也不会停止,直到找到至少一个有效的节点样本划分。

  • max_depth (int) – 树的最大深度。默认为 6。

    min_samples_split (int or float) –

    • 分割内部节点所需的最小样本数

    • 如果是 int,则将 min_samples_split 视为最小数量。

  • 2. (Defaults to) – 默认为 2。

  • 默认为 2。

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

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

属性

hyperparameter_ranges

{ “n_estimators”: Integer(10, 1000), “max_features”: [“sqrt”, “log2”], “max_depth”: Integer(4, 10),}

model_family

ModelFamily.EXTRA_TREES

modifies_features

True

modifies_target

False

name

额外树回归器

supported_problem_types

CatBoost 回归器

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

决策树回归器

fit

返回与每个特征相关的重要性。

get_prediction_intervals

使用已拟合的 ExtraTreesRegressor 查找预测区间。

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

将估计器拟合到数据。

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) pandas.Series#

决策树回归器

返回

property feature_importance(self) pandas.Series#

返回类型

与每个特征相关的重要性。

引发异常

np.ndarray

fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#

返回与每个特征相关的重要性。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

  • fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#

返回

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][源代码]#

使用已拟合的 ExtraTreesRegressor 查找预测区间。

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

  • y (pd.Series) – 目标数据。可选。

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

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

返回

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

返回类型

dict

static load(file_path)#

从文件路径加载组件。

参数

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

返回

ComponentBase object

needs_fitting(self)#

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

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

返回

True.

property parameters(self)#

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

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

将估计器拟合到数据。

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测值。

返回类型

pd.Series

引发异常

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

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。

class evalml.pipelines.components.estimators.regressors.LightGBMRegressor(boosting_type='gbdt', learning_rate=0.1, n_estimators=20, max_depth=0, num_leaves=31, min_child_samples=20, bagging_fraction=0.9, bagging_freq=0, n_jobs=-1, random_seed=0, **kwargs)[源代码]#

LightGBM 回归器。

参数
  • boosting_type (string) – 要使用的提升类型。默认为 “gbdt”。 - 'gbdt' 使用传统的梯度提升决策树 - “dart” 使用 Dropouts meet Multiple Additive Regression Trees - “goss” 使用基于梯度的单侧采样 - “rf” 使用随机森林

  • learning_rate (float) – 提升学习率。默认为 0.1。

  • n_estimators (int) – 要拟合的提升树数量。默认为 100。

  • max_depth (int) – 基学习器的最大树深度,<=0 表示无限制。默认为 0。

  • num_leaves (int) – 基学习器的最大树叶节点数。默认为 31。

  • min_child_samples (int) – 子节点(叶节点)所需的最小数据量。默认为 20。

  • bagging_fraction (float) – 如果该值小于 1.0,LightGBM 将在每次迭代(树)时随机选择一个特征子集,而不进行重采样。例如,如果设置为 0.8,LightGBM 在训练每棵树之前会选择 80% 的特征。这可用于加快训练速度并处理过拟合。默认为 0.9。

  • bagging_freq (int) – Bagging 的频率。0 表示禁用 bagging。k 表示每 k 次迭代执行一次 bagging。每第 k 次迭代,LightGBM 会随机选择 bagging_fraction * 100% 的数据用于接下来的 k 次迭代。默认为 0。

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

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

属性

hyperparameter_ranges

{ “learning_rate”: Real(0.000001, 1), “boosting_type”: [“gbdt”, “dart”, “goss”, “rf”], “n_estimators”: Integer(10, 100), “max_depth”: Integer(0, 10), “num_leaves”: Integer(2, 100), “min_child_samples”: Integer(1, 100), “bagging_fraction”: Real(0.000001, 1), “bagging_freq”: Integer(0, 1),}

model_family

ModelFamily.LIGHTGBM

modifies_features

True

modifies_target

False

name

LightGBM 回归器

SEED_MAX

SEED_BOUNDS.max_bound

SEED_MIN

0

supported_problem_types

[ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,]

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

决策树回归器

fit

将 LightGBM 回归器拟合到数据。

get_prediction_intervals

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

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

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

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) pandas.Series#

决策树回归器

返回

property feature_importance(self) pandas.Series#

返回类型

与每个特征相关的重要性。

引发异常

np.ndarray

fit(self, X, y=None)[源代码]#

将 LightGBM 回归器拟合到数据。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

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

返回

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_样本数, n_特征数]。

  • 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 之前是否需要拟合。

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

返回

True.

property parameters(self)#

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

predict(self, X)[源代码]#

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

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测值。

返回类型

pd.Series

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。

class evalml.pipelines.components.estimators.regressors.LinearRegressor(fit_intercept=True, n_jobs=-1, random_seed=0, **kwargs)[源代码]#

线性回归器。

参数
  • fit_intercept (boolean) – 是否为模型计算截距。如果设置为 False,则计算中不使用截距(即数据应已中心化)。默认为 True。

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

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

属性

hyperparameter_ranges

{ “fit_intercept”: [True, False],}

model_family

{ “alpha”: Real(0, 1), “l1_ratio”: Real(0, 1),}

modifies_features

True

modifies_target

False

name

线性回归器

supported_problem_types

CatBoost 回归器

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

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

fit

返回与每个特征相关的重要性。

get_prediction_intervals

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

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

将估计器拟合到数据。

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)#

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

fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#

返回与每个特征相关的重要性。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

  • fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#

返回

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_样本数, n_特征数]。

  • 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 之前是否需要拟合。

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

返回

True.

property parameters(self)#

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

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

将估计器拟合到数据。

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测值。

返回类型

pd.Series

引发异常

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

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。

class evalml.pipelines.components.estimators.regressors.MultiseriesTimeSeriesBaselineRegressor(gap=1, forecast_horizon=1, random_seed=0, **kwargs)[源代码]#

使用朴素预测方法进行预测的多系列时间序列回归器。

这对于多序列时间序列问题来说,是一个有用的简单基准估计器。

参数
  • gap (int) – 预测日期和目标日期之间的间隔,必须是正整数。如果 gap 为 0,目标日期将向前移动 1 个时间周期。默认为 1。

  • forecast_horizon (int) – 模型预期预测的时间步数。

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

属性

hyperparameter_ranges

{}

model_family

ModelFamily.BASELINE

modifies_features

True

modifies_target

False

name

多序列时间序列基准回归器

supported_problem_types

[ ProblemTypes.MULTISERIES_TIME_SERIES_REGRESSION,]

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

决策树回归器

fit

将多序列时间序列基准回归器拟合到数据。

get_prediction_intervals

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

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

使用已拟合的多序列时间序列基准回归器进行预测。

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)#

决策树回归器

由于基准估计器不使用输入特征计算预测结果,因此返回全零数组。

返回

一个零数组。

返回类型

np.ndarray (float)

fit(self, X, y=None)[源代码]#

将多序列时间序列基准回归器拟合到数据。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本, n_特征 * n_系列]。

  • y (pd.DataFrame) – 目标训练数据,形状为 [n_样本, n_特征 * n_系列]。

返回

self

引发异常

ValueError – 如果输入 y 为 None 或 y 不是具有多列的 DataFrame。

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_样本数, n_特征数]。

  • 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 之前是否需要拟合。

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

返回

True.

property parameters(self)#

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

predict(self, X)[源代码]#

使用已拟合的多序列时间序列基准回归器进行预测。

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测值。

返回类型

predict(self, X)[source]#

引发异常

ValueError – 如果 X 中不存在滞后列。

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。

class evalml.pipelines.components.estimators.regressors.ProphetRegressor(time_index: Optional[Hashable] = None, changepoint_prior_scale: float = 0.05, seasonality_prior_scale: int = 10, holidays_prior_scale: int = 10, seasonality_mode: str = 'additive', stan_backend: str = 'CMDSTANPY', interval_width: float = 0.95, random_seed: Union[int, float] = 0, **kwargs)[源代码]#

Prophet 是一种基于加法模型的时间序列数据预测方法,该模型使用年度、每周和每日季节性以及假日效应来拟合非线性趋势。它最适合具有强季节性效应和多个季节历史数据的时间序列。Prophet 对缺失数据和趋势变化具有鲁棒性,并且通常能很好地处理异常值。

更多信息请参见:https://fbdocs.cn/prophet/

参数
  • time_index (str) – 指定 X 中提供日期时间对象的列的名称。默认为 None。

  • changepoint_prior_scale (float) – 确定用于拟合变化率的稀疏先验的强度。增加此值会增加趋势的灵活性。默认为 0.05。

  • seasonality_prior_scale (int) – 类似于 changepoint_prior_scale。调整季节性模型拟合数据的程度。默认为 10。

  • holidays_prior_scale (int) – 类似于 changepoint_prior_scale。调整节假日拟合数据的程度。默认为 10。

  • seasonality_mode (str) – 确定此组件如何拟合季节性。选项为“additive”和“multiplicative”。默认为“additive”。

  • stan_backend (str) – 确定应使用哪个后端运行 Prophet。选项为“CMDSTANPY”和“PYSTAN”。默认为“CMDSTANPY”。

  • interval_width (float) – 调用 get_prediction_intervals 时确定预测区间范围的置信度。接受范围 (0,1) 内的值。默认为 0.95。

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

属性

hyperparameter_ranges

{ “changepoint_prior_scale”: Real(0.001, 0.5), “seasonality_prior_scale”: Real(0.01, 10), “holidays_prior_scale”: Real(0.01, 10), “seasonality_mode”: [“additive”, “multiplicative”],}

model_family

ModelFamily.PROPHET

modifies_features

True

modifies_target

False

name

Prophet 回归器

supported_problem_types

[ProblemTypes.TIME_SERIES_REGRESSION]

training_only

False

方法

build_prophet_df

构建 Prophet 数据,用于拟合和预测。

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

返回长度为 1 的全 0 数组,因为 Prophet 回归器未定义特征重要性。

fit

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

get_params

获取 Prophet 回归器的参数。

get_prediction_intervals

使用已拟合的 ProphetRegressor 查找预测区间。

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

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

predict_proba

对标签进行概率估计。

save

将组件保存到文件路径。

update_parameters

更新组件的参数字典。

static build_prophet_df(X: pandas.DataFrame, y: Optional[pandas.Series] = None, time_index: str = 'ds') pandas.DataFrame[源代码]#

构建 Prophet 数据,用于拟合和预测。

clone(self)#

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

返回

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

default_parameters(cls) dict#

返回此组件的默认参数。

返回

此组件的默认参数。

返回类型

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) numpy.ndarray#

返回长度为 1 的全 0 数组,因为 Prophet 回归器未定义特征重要性。

fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)[源代码]#

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

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

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

返回

self

get_params(self) dict[源代码]#

获取 Prophet 回归器的参数。

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

使用已拟合的 ProphetRegressor 查找预测区间。

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

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

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

  • predictions (pd.Series) – 不用于 Prophet 估计器。

返回

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

返回类型

dict

static load(file_path)#

从文件路径加载组件。

参数

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

返回

ComponentBase object

needs_fitting(self)#

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

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

返回

True.

property parameters(self)#

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

predict(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None) pandas.Series[source]#

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

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

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

返回

预测值。

返回类型

pd.Series

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。

class evalml.pipelines.components.estimators.regressors.RandomForestRegressor(n_estimators: int = 100, max_depth: int = 6, n_jobs: int = -1, random_seed: Union[int, float] = 0, **kwargs)[source]#

随机森林回归器。

参数
  • n_estimators (float) – 森林中的树数量。默认为 100。

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

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

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

属性

hyperparameter_ranges

{ “n_estimators”: Integer(10, 1000), “max_depth”: Integer(1, 32),}

model_family

ModelFamily.RANDOM_FOREST

modifies_features

True

modifies_target

False

name

随机森林回归器

supported_problem_types

CatBoost 回归器

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

决策树回归器

fit

返回与每个特征相关的重要性。

get_prediction_intervals

使用已拟合的 RandomForestRegressor 查找预测区间。

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

将估计器拟合到数据。

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) pandas.Series#

决策树回归器

返回

property feature_importance(self) pandas.Series#

返回类型

与每个特征相关的重要性。

引发异常

np.ndarray

fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#

返回与每个特征相关的重要性。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

  • fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#

返回

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][source]#

使用已拟合的 RandomForestRegressor 查找预测区间。

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

  • y (pd.Series) – 目标数据。可选。

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

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

返回

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

返回类型

dict

static load(file_path)#

从文件路径加载组件。

参数

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

返回

ComponentBase object

needs_fitting(self)#

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

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

返回

True.

property parameters(self)#

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

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

将估计器拟合到数据。

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测值。

返回类型

pd.Series

引发异常

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

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。

class evalml.pipelines.components.estimators.regressors.SVMRegressor(C=1.0, kernel='rbf', gamma='auto', random_seed=0, **kwargs)[source]#

支持向量机回归器。

参数
  • C (float) – 正则化参数。正则化强度与 C 成反比。必须是严格正数。惩罚项为平方 l2 惩罚。默认为 1.0。

  • kernel ({"poly", "rbf", "sigmoid"}) – 指定算法中使用的核类型。默认为 “rbf”。

  • gamma ({"scale", "auto"} or float) – “rbf”、“poly” 和 “sigmoid” 的核系数。默认为 “auto”。 - 如果 gamma='scale',则使用 1 / (n_features * X.var()) 作为 gamma 值 - 如果为 “auto”(默认),则使用 1 / n_features

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

属性

hyperparameter_ranges

{ “C”: Real(0, 10), “kernel”: [“poly”, “rbf”, “sigmoid”], “gamma”: [“scale”, “auto”],}

model_family

ModelFamily.SVM

modifies_features

True

modifies_target

False

name

SVM 回归器

supported_problem_types

[ ProblemTypes.REGRESSION, ProblemTypes.TIME_SERIES_REGRESSION,]

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

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

fit

返回与每个特征相关的重要性。

get_prediction_intervals

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

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

将估计器拟合到数据。

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)#

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

仅在线性核下有效。如果核不是线性,则返回零的 numpy 数组。

返回

已拟合 SVM 回归器的特征重要性,如果核不是线性,则为零数组。

fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#

返回与每个特征相关的重要性。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

  • fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#

返回

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_样本数, n_特征数]。

  • 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 之前是否需要拟合。

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

返回

True.

property parameters(self)#

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

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

将估计器拟合到数据。

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测值。

返回类型

pd.Series

引发异常

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

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。

class evalml.pipelines.components.estimators.regressors.TimeSeriesBaselineEstimator(gap=1, forecast_horizon=1, random_seed=0, **kwargs)[source]#

使用朴素预测方法进行预测的时间序列估计器。

这对于时间序列问题来说是一个简单的基线估计器。

参数
  • gap (int) – 预测日期和目标日期之间的间隔,必须是正整数。如果 gap 为 0,目标日期将向前移动 1 个时间周期。默认为 1。

  • forecast_horizon (int) – 模型预期预测的时间步数。

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

属性

hyperparameter_ranges

{}

model_family

ModelFamily.BASELINE

modifies_features

True

modifies_target

False

name

时间序列基线估计器

supported_problem_types

[ ProblemTypes.TIME_SERIES_REGRESSION, ProblemTypes.TIME_SERIES_BINARY, ProblemTypes.TIME_SERIES_MULTICLASS,]

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

决策树回归器

fit

将时间序列基线估计器拟合到数据。

get_prediction_intervals

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

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

使用已拟合的时间序列基线估计器进行预测。

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)#

决策树回归器

由于基准估计器不使用输入特征计算预测结果,因此返回全零数组。

返回

一个零数组。

返回类型

np.ndarray (float)

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

将时间序列基线估计器拟合到数据。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

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

返回

self

引发异常

ValueError – 如果输入 y 为 None。

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_样本数, n_特征数]。

  • 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 之前是否需要拟合。

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

返回

True.

property parameters(self)#

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

predict(self, X)[source]#

使用已拟合的时间序列基线估计器进行预测。

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测值。

返回类型

pd.Series

引发异常

ValueError – 如果输入 y 为 None。

predict_proba(self, X)[source]#

使用已拟合的时间序列基线估计器进行预测概率。

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测概率值。

返回类型

predict(self, X)[source]#

引发异常

ValueError – 如果输入 y 为 None。

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。

class evalml.pipelines.components.estimators.regressors.VARMAXRegressor(time_index: Optional[Hashable] = None, p: int = 1, q: int = 0, trend: Optional[str] = 'c', random_seed: Union[int, float] = 0, maxiter: int = 10, use_covariates: bool = False, **kwargs)[source]#

带外生回归器的向量自回归移动平均模型。两个参数 (p, q) 分别是 AR 阶数和 MA 阶数。更多信息请参阅: https://statsmodels.cn/stable/generated/statsmodels.tsa.statespace.varmax.VARMAX.html

目前 VARMAXRegressor 不支持通过 conda 安装。建议通过 PyPI 安装。

参数
  • time_index (str) – 指定 X 中提供日期时间对象的列的名称。默认为 None。

  • p (int) – 最大自回归阶数。默认为 1。

  • q (int) – 最大移动平均阶数。默认为 0。

  • trend (str) – 控制确定性趋势。选项包括 ['n', 'c', 't', 'ct'],其中 'c' 表示常数项,'t' 表示线性趋势,'ct' 表示两者。在定义多项式时也可以是可迭代对象,例如 [1, 1, 0, 1]。

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

  • max_iter (int) – 解算器的最大迭代次数。默认为 10。

  • use_covariates (bool) – 如果为 True,将在 fit/predict 方法中传递外生变量。如果为 False,预测将仅基于日期时间和目标值。默认为 True。

属性

hyperparameter_ranges

{ “p”: Integer(1, 10), “q”: Integer(1, 10), “trend”: Categorical([‘n’, ‘c’, ‘t’, ‘ct’]),}

model_family

ModelFamily.VARMAX

modifies_features

True

modifies_target

False

name

VARMAX 回归器

supported_problem_types

[ProblemTypes.MULTISERIES_TIME_SERIES_REGRESSION]

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

返回长度为 1 的 0 数组,因为 VARMAX 回归器未定义 feature_importance。

fit

将 VARMAX 回归器拟合到数据。

get_prediction_intervals

使用已拟合的 VARMAXRegressor 查找预测区间。

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

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

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) numpy.ndarray#

返回长度为 1 的 0 数组,因为 VARMAX 回归器未定义 feature_importance。

fit(self, X: pandas.DataFrame, y: Optional[pandas.DataFrame] = None)[source]#

将 VARMAX 回归器拟合到数据。

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

  • y (pd.DataFrane) – 目标训练数据,形状为 [n_samples, n_series_id_values]。

返回

self

引发异常

ValueError – 如果未传入 y。

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

使用已拟合的 VARMAXRegressor 查找预测区间。

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

  • y (pd.DataFrame) – 目标数据,形状为 [n_samples, n_series_id_values]。可选。

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

  • predictions (pd.Series) – VARMAX 回归器未使用此参数。

返回

预测区间的字典,字典格式为 {series_id: {coverage}_lower 或 {coverage}_upper}。

返回类型

dict[dict]

static load(file_path)#

从文件路径加载组件。

参数

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

返回

ComponentBase object

needs_fitting(self)#

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

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

返回

True.

property parameters(self)#

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

predict(self, X: pandas.DataFrame, y: Optional[pandas.DataFrame] = None) pandas.Series[source]#

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

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

  • y (pd.DataFrame) – 目标数据,形状为 [n_samples, n_series_id_values]。

返回

预测值。

返回类型

pd.Series

引发异常

ValueError – 如果 X 已传递给 fit 但未传递给 predict

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。

class evalml.pipelines.components.estimators.regressors.XGBoostRegressor(eta: float = 0.1, max_depth: int = 6, min_child_weight: int = 1, n_estimators: int = 100, random_seed: Union[int, float] = 0, n_jobs: int = 12, **kwargs)[source]#

XGBoost 回归器。

参数
  • eta (float) – Boosting 学习率。默认为 0.1。

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

  • min_child_weight (float) – 子节点所需的实例权重 (hessian) 的最小总和。默认为 1.0

  • n_estimators (int) – 梯度提升树的数量。等同于 boosting 轮数。默认为 100。

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

  • n_jobs (int) – 运行 xgboost 使用的并行线程数。请注意,创建线程竞争会显著降低算法速度。默认为 12。

属性

hyperparameter_ranges

{ “eta”: Real(0.000001, 1), “max_depth”: Integer(1, 20), “min_child_weight”: Real(1, 10), “n_estimators”: Integer(1, 1000),}

model_family

ModelFamily.XGBOOST

modifies_features

True

modifies_target

False

name

XGBoost 回归器

SEED_MAX

SEED_MIN

supported_problem_types

CatBoost 回归器

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

feature_importance

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

fit

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

get_prediction_intervals

使用已拟合的 XGBoostRegressor 查找预测区间。

load

从文件路径加载组件。

needs_fitting

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

parameters

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

predict

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

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) pandas.Series#

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

fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)[source]#

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

参数
  • X (pd.DataFrame) – 输入训练数据,形状为 [n_样本数, n_特征数]。

  • fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] = None)#

返回

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][source]#

使用已拟合的 XGBoostRegressor 查找预测区间。

参数
  • X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

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

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

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

返回

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

返回类型

dict

static load(file_path)#

从文件路径加载组件。

参数

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

返回

ComponentBase object

needs_fitting(self)#

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

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

返回

True.

property parameters(self)#

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

predict(self, X: pandas.DataFrame) pandas.Series[source]#

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

参数

X (pd.DataFrame) – 数据,形状为 [n_样本数, n_特征数]。

返回

预测值。

返回类型

pd.Series

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。