transformer#

一个可能需要或不需要拟合来转换数据的组件。这些组件在评估器之前使用。

模块内容#

类摘要#

Transformer

一个可能需要或不需要拟合来转换数据的组件。这些组件在评估器之前使用。

目录#

class evalml.pipelines.components.transformers.transformer.Transformer(parameters=None, component_obj=None, random_seed=0, **kwargs)[source]#

一个可能需要或不需要拟合来转换数据的组件。这些组件在评估器之前使用。

要实现新的 Transformer,请定义您自己的类,该类是 Transformer 的子类,包括一个名称以及在自动机器学习搜索(超参数)期间要调优的任何参数的可接受范围列表。定义一个 __init__ 方法来设置任何必要的状态和对象。确保您的 __init__ 仅使用标准关键字参数,并使用参数字典调用 super().__init__()。如果合适,您还可以覆盖此类中的 fittransformfit_transform 和其他方法。

要查看一些示例,请查阅任何 Transformer 组件的定义。

参数
  • parameters (dict) – 组件的参数字典。默认为 None。

  • component_obj (obj) – 在组件实现中有用的第三方对象。默认为 None。

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

属性

modifies_features

True

modifies_target

False

training_only

False

方法

clone

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

default_parameters

返回此组件的默认参数。

describe

描述一个组件及其参数。

fit

将组件拟合到数据。

fit_transform

对 X 进行拟合并转换 X。

load

从文件路径加载组件。

name

返回此组件的字符串名称。

needs_fitting

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

parameters

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

save

将组件保存到文件路径。

transform

转换数据 X。

update_parameters

更新组件的参数字典。

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

fit(self, X, y=None)#

将组件拟合到数据。

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

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

返回

self

引发

MethodPropertyNotFoundError – 如果组件没有 fit 方法或 component_obj 没有实现 fit 方法。

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

对 X 进行拟合并转换 X。

参数
  • X (pd.DataFrame) – 用于拟合和转换的数据。

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

返回

转换后的 X。

返回类型

pd.DataFrame

引发

MethodPropertyNotFoundError – 如果 transformer 没有 transform 方法或 component_obj 没有实现 transform 方法。

static load(file_path)#

从文件路径加载组件。

参数

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

返回

ComponentBase 对象

property name(cls)#

返回此组件的字符串名称。

needs_fitting(self)#

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

对于不需要拟合或其 fit 方法不做任何事情的组件,可以将其覆盖为 False。

返回

True。

property parameters(self)#

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

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

将组件保存到文件路径。

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

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

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

转换数据 X。

参数
  • X (pd.DataFrame) – 要转换的数据。

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

返回

转换后的 X

返回类型

pd.DataFrame

引发

MethodPropertyNotFoundError – 如果 transformer 没有 transform 方法或 component_obj 没有实现 transform 方法。

update_parameters(self, update_dict, reset_fit=True)#

更新组件的参数字典。

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

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