kedro是一款开源的Python框架,通过提供统一的项目模板,数据抽象,配置和管道组装,用于对机器学习任务进行规范化、模块化、流水线化的开发、管理和控制。
就机器学习来说,相较而言,传统NoteBooke更适用于研究开发与测试,而Kedro更适用于生产环境对项目进行流程化管理与拓展。
Kedro的优势主要体现在以下几个方面:
pass
pass
pass
pass
Python虚拟环境的主要目的是为Python项目创建一个隔离的环境,使其拥有自己的依赖项,而不管其他项目如何。我们建议您为创建的每个新 Kedro 项目创建一个新的虚拟环境。
根据你首选的Python安装,您可以创建虚拟环境来使用Kedro,如下所示:
要从Python包索引(PyPI)安装Kedro,只需运行:
pip install kedro
conda install -c conda-forge kedro
Kedro为开发者提供了如piplines管道、IO数据集读写、config配置文件、extras数据集拓展等API接口,增加开发时的灵活性。
kedro.config提供了从不同文件格式加载 Kedro 配置的功能。
类
class kedro.config.ConfigLoader(conf_source, env=None, runtime_params=None, *, base_env='base', default_run_env='local')
class kedro.config.TemplatedConfigLoader(conf_source, env=None, runtime_params=None, *, base_env='base', default_run_env='local', globals_pattern=None, globals_dict=None)
异常
kedro.extras为开发者提供数据集扩展等功能
模块
kedro.framework是用于提供 Kedro 的框架组件
模块
kedro.io提供读取和写入多个数据集的功能。该库的核心是 AbstractDataSet,它允许实现各种AbstractDataSet。
类
AbstractDataSet是所有数据集实现的基类。所有数据集实现都应扩展此抽象类,并实现标记为抽象的方法。如果特定的数据集实现不能与ParallelRunner结合使用,则此类用户定义的数据集应具有属性 _SINGLE_PROCESS = True。
kedro.io.AbstractDataSet(*args, * *kwargs)
AbstractVersionedDataSet是所有版本化数据集实现的基类。
class kedro.io.AbstractVersionedDataSet(filepath, version, exists_function=None, glob_function=None)
DataCatalog存储抽象数据集实现的实例,以便从程序中的任何位置提供和功能。loadsave
classkedro.io.DataCatalog(data_sets=None, feed_dict=None, layers=None)
LambdaDataSet将数据加载并保存到数据集。
class kedro.io.LambdaDataSet(load, save, exists=None, release=None)
MemoryDataSet加载数据并将其保存在内存中的 Python 对象中。
class kedro.io.MemoryDataSet(data=
PartitionedDataSet使用基础数据集定义加载和保存分区的类似文件的数据。
class kedro.io.PartitionedDataSet(path, dataset, filepath_arg='filepath', filename_suffix='', credentials=None, load_args=None, fs_args=None, overwrite=False)
IncrementalDataSet增量数据集继承自 PartitionedDataSet,后者使用基础数据集定义加载和保存分区的类似文件的数据。
class kedro.io.IncrementalDataSet(path, dataset, checkpoint=None, filepath_arg='filepath', filename_suffix='', credentials=None, load_args=None, fs_args=None)
kedro.io.CachedDataSet(dataset[, version, …]):CachedDataSet是一个数据集包装器,它将保存的数据缓存在内存中,以便用户避免使用慢速存储介质进行io操作。
class kedro.io.CachedDataSet(dataset, version=None, copy_mode=None)
kedro.io.Version(load, save):Version此 namedtuple 用于为版本化数据集提供加载和保存版本。
classkedro.io.Version(load, save)
异常
kedro.io.DataSetAlreadyExistsError由 DataCatalog类引发,以防尝试添加 DataCatalog 中已存在的数据集。
kedro.io.DataSetError 数据集在输入/输出方法失败时由抽象数据集实现引发。
kedro.io.DataSetNotFoundError 由 DataCatalog类在尝试使用不存在的数据集时引发。
kedro.pipeline提供定义和执行数据驱动管道的功能。
功能
kedro.pipeline.node(func, inputs, outputs, *, name=None, tags=None, confirms=None, namespace=None)
kedro.pipeline.modular_pipeline.pipeline(pipe, *, inputs=None, outputs=None, parameters=None, tags=None, namespace=None)
类
class kedro.pipeline.Pipeline(nodes, *, tags=None)
class kedro.pipeline.node.Node(func, inputs, outputs, *, name=None, tags=None, confirms=None, namespace=None)
异常
kedro.runner提供了能够执行Pipeline实例的运行器。
功能
kedro.runner.run_node(node, catalog, hook_manager, is_async=False, session_id=None)
类
class kedro.runner.AbstractRunner(is_async=False)
class kedro.runner.ParallelRunner(max_workers=None, is_async=False)
class kedro.runner.SequentialRunner(is_async=False)[source]
class kedro.runner.ThreadRunner(max_workers=None, is_async=False)
功能
kedro.utils.load_obj(obj_path, default_obj_path='')