数据科学与机器学习工作流

数据科学机器学习领域,构建有效的工作流是至关重要的。以开发一个典型的机器学习模型为例,可以将工作流程划分为几个主要阶段:数据准备、模型训练和生产部署。每个阶段又包含若干子任务。

如果使用AWS,原始数据可能已经存储在Amazon Simple Storage Service(Amazon S3)上,并以CSV、Apache Parquet或其他等效格式存储。可以利用Amazon AI或自动化服务(AutoML)快速启动模型训练,只需直接指向数据库并点击“训练”按钮即可。

在定制的机器学习模型中,首先需要导入和评估个人数据,包括数据分析、数据质量检查、摘要、缺失值、分位数统计、数据整合分析等。接下来,需要确定机器学习问题的类型,例如回归、分类、聚类等。一旦确定了问题类型,就可以选择合适的机器学习算法来解决特定问题。

根据所选算法,需要选择数据集来训练、验证和测试模型。原始数据通常需要转换为数学向量,以实现数值优化和模型训练。例如,可能决定将分类列转换为二进制编码向量,或将基于文本的列转换为词嵌入向量。在将原始数据的子集转换为特征后,必须将特征划分为训练、验证和测试特征集,以进行模型训练、调整和测试。

在模型训练阶段,选择一个算法,并使用训练元素集训练模型,以确保模型代码和算法准备好解决给定问题。在模型调整阶段,调整超参数算法,并与验证特征集比较模型的性能。重复这些步骤——根据需要添加更多数据或更改超参数——直到模型在测试特征集上达到预期结果。这些结果应该符合业务的目的,然后才能将模型投入生产。

从连续到生产的最后阶段,对数据科学家和机器学习专家来说常常是一个巨大的挑战。一旦在机器学习活动的流程中构建了所有单独的步骤,就可以开始将步骤转换为单一的机器学习复制。当新数据到达S3时,管道会用最新数据重新启动,并使用最新的生产模型运行应用程序。有许多工作流编排工具和AWS服务可以帮助构建自动化的机器学习管道。

Amazon SageMaker Pipelines

Amazon SageMaker Pipelines是使用Amazon SageMaker中的AI管道和机器学习管道的最常见和最完整的方式。Amazon SageMaker Pipelines是第一个为机器学习(ML)的创建、使用和管理端到端性能工作流程而设计的组织,易于使用且持续交付(CI / CD)。使用SageMaker的管道,可以创建、使用和管理端到端的性能工作流程。

AWSStep Functions Data Science SDK

Step Functions是AWS运行的一项服务,是构建复杂工作流而不构建和维护自己的基础设施的好方法。AWS Step Functions Data Science软件开发工具包(SDK)是一个开源库,允许轻松地使用AmazonSageMaker和AWS Step Functions创建数据处理和训练,并发布机器学习模型。可以在Python中创建机器学习功能的流程,该流程可以扩展基础设施,而无需单独提供和集成AWS服务。

Kubeflow Pipelines

Kubeflow是为Kubernetes开发的相对较新的生态系统,其中包含一个名为Kubeflow Pipelines的编排系统。使用Kubeflow,可以重新启动失败的管道,调整管道性能,分析训练指标,并跟踪管道血统。

Apache Airflow性能管理在AWS

Apache Airflow是一个高度成熟且受欢迎的选项,专门设计用于数据工程管道和负载转移(ETL)管道。可以使用Airflow将工作流记录为活动的有向无环图。Airflow编辑器为大量员工执行其功能,同时遵循特定的依赖关系。可以通过Airflow用户界面查看生产中的管道,监控进度,并在需要时解决问题。

MLflow

MLflow是一个开源项目,最初专注于测试跟踪,但现在支持称为MLflow Workflows的管道。可以使用MLflow跟踪测试,并与Kubeflow和Apache Airflow工作流一起使用。MLflow要求构建和维护自己的Amazon EC2或Amazon EKS集合。MLflow旨在与任何ML库、算法、下载工具或语言一起使用。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485