paddlets.pipeline.pipeline
- class Pipeline(steps: List[Tuple[object, str]])[源代码]
基类:
TrainablePipeline 被用于构建一个时序建模机器学习工作流,它可以包含若干个特征工程方法与一个学习器。
注意: 学习器是可选的,可构建仅存在特征工程方法的 Pipeline 。
- 参数
steps (List[Tuple[object, str]]) – 包含若干个特征工程方法与一个学习器的列表。构建方法参考下方案例:
实际案例
>>> ... >>> ksigma_params = {"cols":['example_columns'], "k": 0.5} >>> mlp_params = {'in_chunk_len': 7, 'out_chunk_len': 3, 'skip_chunk_len': 0, 'eval_metrics': ["mse", "mae"]} >>> pipeline = Pipeline([(KSigma, ksigma_params), (TimeFeatureGenerator, {}), (MLPRegressor, mlp_params)])
- fit(train_tsdataset: Union[TSDataset, List[TSDataset]], valid_tsdataset: Optional[Union[TSDataset, List[TSDataset]]] = None)[源代码]
逐一 fit Pipeline 中的特征工程方法,并对数据进行 transform,然后 fit 学习器。
- transform(tsdataset: Union[TSDataset, List[TSDataset]], inplace: bool = False, cache_transform_steps: bool = False, previous_caches: Optional[List[TSDataset]] = None) Union[TSDataset, Tuple[TSDataset, List[TSDataset]]][源代码]
利用 Pipeline 中已 fit 过的特征工程方法 transform 输入的 TSDataset
- inverse_transform(tsdataset: Union[TSDataset, List[TSDataset]], inplace: bool = False) TSDataset[源代码]
数据集逆转换的方法
- predict(tsdataset: TSDataset) TSDataset[源代码]
利用 Pipeline 中已 fit 过的特征工程方法 transform 输入的 TSDataset,并利用已 fit 过的学习器执行预测。注意:此方法仅在模型存在时可用。
- predict_proba(tsdataset: TSDataset) TSDataset[源代码]
利用 Pipeline 中已 fit 过的特征工程方法 transform 输入的 TSDataset,并利用已 fit 过的学习器执行概率预测。注意:此方法仅在模型存在时可用。
- predict_score(tsdataset: TSDataset) TSDataset[源代码]
利用 Pipeline 中已 fit 过的特征工程方法 transform 输入的 TSDataset,并利用已 fit 过的学习器执行异常分数预测。注意:此方法仅在模型存在时可用。
- recursive_predict(tsdataset: TSDataset, predict_length: int) TSDataset[源代码]
递归预测:一步步利用 self.predict 方法实现多步时序预测。当前时刻的预测结果会被添加至 TSDataset 的目标列中,并在模型预测时,被添加至历史目标值的滑动窗口中用于下一时刻预测。注意:每次调用 self.predict 的输出长度为 out_chunk_len, 所以 self.predict 会被调用 ceiling(predict_length/out_chunk_len) 次,以满足多步时序的输出长度需求。
- recursive_predict_proba(tsdataset: TSDataset, predict_length: int) TSDataset[源代码]
递归预测:一步步利用 self.predict_proba 方法实现多步时序预测。当前时刻的预测结果会被添加至 TSDataset 的目标列中,并在模型预测时,被添加至历史目标值的滑动窗口中用于下一时刻预测。注意:每次调用 self.predict_proba 的输出长度为 out_chunk_len, 所以 self.predict_proba 会被调用 ceiling(predict_length/out_chunk_len) 次,以满足多步时序的输出长度需求。
- save(path: str, pipeline_file_name: str = 'pipeline-partial.pkl', model_file_name: str = 'paddlets_model')[源代码]
将 Pipeline 保存至指定目录中。
- 参数
path (str) – 输出目录
pipeline_file_name (str) – PipeLine 对象的名称。此文件包含若干特征工程方法和 Pipeline 的元信息。
model_file_name (str) – Model 对象的名称。详细信息请参考 BaseModel 的 save() 方法。
- classmethod load(path: str, pipeline_file_name: str = 'pipeline-partial.pkl', model_file_name: str = 'paddlets_model')[源代码]
从目录中加载一个 Pipeline 。
- 参数
path (str) – 输入目录
pipeline_file_name (str) – PipeLine 对象的名称。此文件包含若干特征工程方法和 Pipeline 的元信息。
model_file_name (str) – Model 对象的名称。详细信息请参考 BaseModel 的 save() 方法。
- 返回
被加载的 Pipeline 对象。
- 返回类型