估计器#
一个用于拟合和预测给定数据的组件。
模块内容#
内容#
- class evalml.pipelines.components.estimators.estimator.Estimator(parameters: dict = None, component_obj: Type[evalml.pipelines.components.ComponentBase] = None, random_seed: Union[int, float] = 0, **kwargs)[source]#
一个用于拟合和预测给定数据的组件。
要实现一个新的 Estimator,请定义您自己的类,使其成为 Estimator 的子类,包括名称以及在 AutoML 搜索期间(超参数)要调优的任何参数的可接受范围列表。定义一个 __init__ 方法,该方法设置任何必要的状态和对象。请确保您的 __init__ 仅使用标准关键字参数,并使用 parameters dict 调用 super().__init__()。如果合适,您还可以覆盖此类中的 fit、transform、fit_transform 及其他方法。
要查看一些示例,请查看任何 Estimator 组件子类的定义。
- 参数
parameters (dict) – 组件的参数字典。默认为 None。
component_obj (obj) – 在组件实现中有用的第三方对象。默认为 None。
random_seed (int) – 随机数生成器的种子。默认为 0。
属性
model_family
ModelFamily.NONE
modifies_features
True
modifies_target
False
training_only
False
方法
使用相同的参数和随机状态构造一个新组件。
返回此组件的默认参数。
描述一个组件及其参数。
返回与每个特征相关的特征重要性。
将估计器拟合到数据。
使用拟合的回归器查找预测区间。
从文件路径加载组件。
ModelFamily.NONE
返回此组件的字符串名称。
返回布尔值,确定组件在调用 predict、predict_proba、transform 或 feature_importances 之前是否需要拟合。
返回用于初始化组件的参数。
使用选定的特征进行预测。
生成标签的概率估计。
将组件保存到文件路径。
此估计器支持的问题类型。
更新组件的参数字典。
- clone(self)#
使用相同的参数和随机状态构造一个新组件。
- 返回
此组件的一个新实例,具有相同的参数和随机状态。
- default_parameters(cls)#
返回此组件的默认参数。
按照我们的约定,Component.default_parameters == Component().parameters。
- 返回
此组件的默认参数。
- 返回类型
dict
- describe(self, print_name=False, return_dict=False)#
描述一个组件及其参数。
- 参数
print_name (bool, 可选) – 是否打印组件名称
return_dict (bool, 可选) – 是否以字典格式 {“name”: name, “parameters”: parameters} 返回描述
- 返回
如果 return_dict 为 True,则返回字典,否则返回 None。
- 返回类型
None 或 dict
- property feature_importance(self) pandas.Series #
返回与每个特征相关的特征重要性。
- 返回
与每个特征相关的重要性。
- 返回类型
np.ndarray
- 抛出
MethodPropertyNotFoundError – 如果估计器没有 feature_importance 方法或没有实现 feature_importance 的 component_obj。
- fit(self, X: pandas.DataFrame, y: Optional[pandas.Series] =None)[source]#
将估计器拟合到数据。
- 参数
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] [source]#
使用拟合的回归器查找预测区间。
此函数接受拟合估计器的预测,并使用大小为 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 对象
- property model_family(cls)#
返回此组件的 ModelFamily。
- property name(cls)#
返回此组件的字符串名称。
- needs_fitting(self)#
返回布尔值,确定组件在调用 predict、predict_proba、transform 或 feature_importances 之前是否需要拟合。
对于不需要拟合或其拟合方法不执行任何操作的组件,可以将其覆盖为 False。
- 返回
True。
- property parameters(self)#
返回用于初始化组件的参数。
- predict(self, X: pandas.DataFrame) pandas.Series [source]#
使用选定的特征进行预测。
- 参数
X (pd.DataFrame) – 数据,形状为 [n_samples, n_features]。
- 返回
预测值。
- 返回类型
pd.Series
- 抛出
MethodPropertyNotFoundError – 如果估计器没有 predict 方法或没有实现 predict 的 component_obj。
- predict_proba(self, X: pandas.DataFrame) pandas.Series [source]#
生成标签的概率估计。
- 参数
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 数据流格式。
- property supported_problem_types(cls)#
此估计器支持的问题类型。
- update_parameters(self, update_dict, reset_fit=True)#
更新组件的参数字典。
- 参数
update_dict (dict) – 要更新的参数字典。
reset_fit (bool, 可选) – 如果为 True,将设置 _is_fitted 为 False。