engine#
EvalML Engine 类,用于在 AutoMLSearch 中评估管道。
包内容#
类摘要#
concurrent.futures (CF) 引擎。 |
|
dask 引擎。 |
|
EvalML 引擎的基类。 |
|
封装(可能是异步)引擎计算结果的包装器。 |
|
AutoML 搜索的默认引擎。 |
函数#
提交给 submit_evaluation_job 引擎方法的函数。 |
|
给定管道、配置和数据,训练并评估管道,并返回 CV 或 TV 分数。 |
|
训练管道并在必要时调优阈值。 |
目录#
- class evalml.automl.engine.CFEngine(client=None)[source]#
concurrent.futures (CF) 引擎。
- 参数
client (None 或 CFClient) – 如果为 None,则创建线程池进行处理。默认为 None。
方法
用于正确关闭引擎客户端资源的函数。
确定引擎客户端资源是否已关闭的属性。
为作业设置记录器。
将评估作业发送到集群。
将评分作业发送到集群。
将训练作业发送到集群。
- property is_closed(self)#
确定引擎客户端资源是否已关闭的属性。
- static setup_job_log()#
为作业设置记录器。
- submit_evaluation_job(self, automl_config, pipeline, X, y, X_holdout=None, y_holdout=None)[source]#
将评估作业发送到集群。
- 参数
automl_config – 包含从 AutoMLSearch 实例传递的数据的结构。
pipeline (pipeline.PipelineBase) – 要评估的管道。
X (pd.DataFrame) – 用于建模的输入数据。
y (pd.Series) – 用于建模的目标数据。
X_holdout (pd.Series) – 用于留出集评分的留出输入数据。
y_holdout (pd.Series) – 用于留出集评分的留出目标数据。
- 返回
- 一个对象,封装对资源池中进行的未来计算(future-like computation)的引用
在资源池中进行
- 返回类型
CFComputation
- submit_scoring_job(self, automl_config, pipeline, X, y, objectives, X_train=None, y_train=None)[source]#
将评分作业发送到集群。
- 参数
automl_config – 包含从 AutoMLSearch 实例传递的数据的结构。
pipeline (pipeline.PipelineBase) – 要评分的管道。
X (pd.DataFrame) – 用于建模的输入数据。
y (pd.Series) – 用于建模的目标数据。
X_train (pd.DataFrame) – 训练特征。用于时间序列中的特征工程。
y_train (pd.Series) – 训练目标。用于时间序列中的特征工程。
objectives (list[ObjectiveBase]) – 要评分的目标列表。
- 返回
- 一个对象,封装对资源池中进行的未来计算(future-like computation)的引用
在资源池中进行。
- 返回类型
CFComputation
- submit_training_job(self, automl_config, pipeline, X, y)[source]#
将训练作业发送到集群。
- 参数
automl_config – 包含从 AutoMLSearch 实例传递的数据的结构。
pipeline (pipeline.PipelineBase) – 要评分的管道。
X (pd.DataFrame) – 用于建模的输入数据。
y (pd.Series) – 用于建模的目标数据。
- 返回
- 一个对象,封装对资源池中进行的未来计算(future-like computation)的引用
在资源池中进行
- 返回类型
CFComputation
- class evalml.automl.engine.DaskEngine(cluster=None)[source]#
dask 引擎。
- 参数
cluster (None 或 dd.Client) – 如果为 None,则创建一个本地的、基于线程的 Dask 客户端进行处理。默认为 None。
方法
关闭底层集群。
确定引擎客户端资源是否已关闭的属性。
将数据发送到集群。
为作业设置记录器。
将评估作业发送到集群。
将评分作业发送到集群。
将训练作业发送到集群。
- property is_closed(self)#
确定引擎客户端资源是否已关闭的属性。
- send_data_to_cluster(self, X, y)[source]#
将数据发送到集群。
实现使用了缓存,因此数据只发送一次。这遵循了 dask 的最佳实践。
- 参数
X (pd.DataFrame) – 用于建模的输入数据。
y (pd.Series) – 用于建模的目标数据。
- 返回
建模数据。
- 返回类型
dask.Future
- static setup_job_log()#
为作业设置记录器。
- submit_evaluation_job(self, automl_config, pipeline, X, y, X_holdout=None, y_holdout=None)[source]#
将评估作业发送到集群。
- 参数
automl_config – 包含从 AutoMLSearch 实例传递的数据的结构。
pipeline (pipeline.PipelineBase) – 要评估的管道。
X (pd.DataFrame) – 用于建模的输入数据。
y (pd.Series) – 用于建模的目标数据。
X_holdout (pd.Series) – 用于留出集评分的留出输入数据。
y_holdout (pd.Series) – 用于留出集评分的留出目标数据。
- 返回
- 一个对象,封装对资源池中进行的未来计算(future-like computation)的引用
在 dask 集群中进行。
- 返回类型
DaskComputation
- submit_scoring_job(self, automl_config, pipeline, X, y, objectives, X_train=None, y_train=None)[source]#
将评分作业发送到集群。
- 参数
automl_config – 包含从 AutoMLSearch 实例传递的数据的结构。
pipeline (pipeline.PipelineBase) – 要评分的管道。
X (pd.DataFrame) – 用于建模的输入数据。
y (pd.Series) – 用于建模的目标数据。
X_train (pd.DataFrame) – 训练特征。用于时间序列中的特征工程。
y_train (pd.Series) – 训练目标。用于时间序列中的特征工程。
objectives (list[ObjectiveBase]) – 要评分的目标列表。
- 返回
- 一个对象,封装对资源池中进行的未来计算(future-like computation)的引用
在 dask 集群中进行。
- 返回类型
DaskComputation
- submit_training_job(self, automl_config, pipeline, X, y)[source]#
将训练作业发送到集群。
- 参数
automl_config – 包含从 AutoMLSearch 实例传递的数据的结构。
pipeline (pipeline.PipelineBase) – 要评分的管道。
X (pd.DataFrame) – 用于建模的输入数据。
y (pd.Series) – 用于建模的目标数据。
- 返回
- 一个对象,封装对资源池中进行的未来计算(future-like computation)的引用
在 dask 集群中进行。
- 返回类型
DaskComputation
- class evalml.automl.engine.EngineBase[source]#
EvalML 引擎的基类。
方法
为作业设置记录器。
在 AutoMLSearch 期间提交管道评估作业。
提交管道评分作业。
提交管道训练作业。
- abstract submit_evaluation_job(self, automl_config, pipeline, X, y, X_holdout=None, y_holdout=None)[source]#
在 AutoMLSearch 期间提交管道评估作业。
- class evalml.automl.engine.EngineComputation[source]#
封装(可能是异步)引擎计算结果的包装器。
方法
取消计算。
计算是否完成。
获取计算结果。将阻塞直到计算完成。
- evalml.automl.engine.evaluate_pipeline(pipeline, automl_config, X, y, logger, X_holdout=None, y_holdout=None)[source]#
提交给 submit_evaluation_job 引擎方法的函数。
- 参数
pipeline (PipelineBase) – 要评分的管道。
automl_config (AutoMLConfig) – AutoMLSearch 对象,用于访问配置和错误回调函数。
X (pd.DataFrame) – 训练特征。
y (pd.Series) – 训练目标。
logger – 用于写入的 Logger 对象。
X_holdout (pd.DataFrame) – 留出集特征。
y_holdout (pd.DataFrame) – 留出集目标。
- 返回
- 第一项 - 一个字典,包含 cv_score_mean、cv_scores、training_time 以及一个带有详细信息的 cv_data 结构。
第二项 - 我们训练和评分的管道类。第三项 - 包含所有记录消息的作业记录器实例。
- 返回类型
包含三个元素的元组
- class evalml.automl.engine.SequentialEngine[source]#
AutoML 搜索的默认引擎。
在本地按顺序训练和评估管道。
方法
空操作。
为作业设置记录器。
提交评估管道的作业。
提交评分管道的作业。
提交训练管道的作业。
- static setup_job_log()#
为作业设置记录器。
- submit_evaluation_job(self, automl_config, pipeline, X, y, X_holdout=None, y_holdout=None)[source]#
提交评估管道的作业。
- 参数
automl_config – 包含从 AutoMLSearch 实例传递的数据的结构。
pipeline (pipeline.PipelineBase) – 要评估的管道。
X (pd.DataFrame) – 用于建模的输入数据。
y (pd.Series) – 用于建模的目标数据。
X_holdout (pd.Series) – 用于留出集评分的留出输入数据。
y_holdout (pd.Series) – 用于留出集评分的留出目标数据。
- 返回
计算结果。
- 返回类型
SequentialComputation
- submit_scoring_job(self, automl_config, pipeline, X, y, objectives, X_train=None, y_train=None)[source]#
提交评分管道的作业。
- 参数
automl_config – 包含从 AutoMLSearch 实例传递的数据的结构。
pipeline (pipeline.PipelineBase) – 要评分的管道。
X (pd.DataFrame) – 用于建模的输入数据。
y (pd.Series) – 用于建模的目标数据。
X_train (pd.DataFrame) – 训练特征。用于时间序列中的特征工程。
y_train (pd.Series) – 训练目标。用于时间序列中的特征工程。
objectives (list[ObjectiveBase]) – 要评分的目标列表。
- 返回
计算结果。
- 返回类型
SequentialComputation
- evalml.automl.engine.train_and_score_pipeline(pipeline, automl_config, full_X_train, full_y_train, logger, X_holdout=None, y_holdout=None)[source]#
给定管道、配置和数据,训练并评估管道,并返回 CV 或 TV 分数。
- 参数
pipeline (PipelineBase) – 要评分的管道。
automl_config (AutoMLSearch) – AutoMLSearch 对象,用于访问配置和错误回调函数。
full_X_train (pd.DataFrame) – 训练特征。
full_y_train (pd.Series) – 训练目标。
logger – 用于写入的 Logger 对象。
X_holdout (pd.DataFrame) – 留出集特征。
y_holdout (pd.DataFrame) – 留出集目标。
- 抛出
Exception – 如果数据分割后训练集中存在缺失的目标值。
- 返回
- 第一项 - 一个字典,包含 cv_score_mean、cv_scores、training_time 以及一个带有详细信息的 cv_data 结构。
第二项 - 我们训练和评分的管道类。第三项 - 包含所有记录消息的作业记录器实例。
- 返回类型
包含三个元素的元组
- evalml.automl.engine.train_pipeline(pipeline, X, y, automl_config, schema=True, get_hashes=False)[source]#
训练管道并在必要时调优阈值。
- 参数
pipeline (PipelineBase) – 要训练的管道。
X (pd.DataFrame) – 用于训练的特征。
y (pd.Series) – 用于训练的目标。
automl_config (AutoMLSearch) – AutoMLSearch 对象,用于访问配置和错误回调函数。
schema (bool) – 是否使用 X 和 y 的 schema。默认为 True。
get_hashes (bool) – 是否返回用于训练(和可能调阈值)的数据的哈希值。默认为 False
- 返回
一个训练好的管道实例。hash (可选):输入数据索引的哈希值,仅在 get_hashes 为 True 时返回。
- 返回类型
pipeline (PipelineBase)