跳转到主要内容

一个最小可接受的机器学习流程,基于AWS SageMaker构建。

项目描述

ML2P – 或 (ML)^2P – 是一个最小可接受的机器学习流程,也是AWS SageMaker的一个更友好的接口。

设计目标

  • 支持完整的机器学习生命周期

  • 支持自定义特征工程

  • 支持在Python中构建自定义模型

  • 提供模型的可重复训练和部署

  • 支持使用自定义的基础Docker镜像进行训练和部署

具体来说,它提供了一个命令行界面和Python库,以帮助管理

  • S3
    • 管理训练数据

  • SageMaker
    • 启动训练作业

    • 部署训练好的模型

    • 创建笔记本实例

  • 在您的本地机器或SageMaker笔记本上
    • 从S3下载训练数据集

    • 训练模型

    • 从SageMaker / S3加载训练好的模型

安装

使用以下方法安装ML2P

$ pip install ml2p

邮件列表

如果您对ML2P有任何问题,或想贡献或提出改进建议,欢迎您加入我们的项目邮件列表 https://groups.google.com/g/ml2p 并在那里给我们写信。

概述

ML2P有助于管理机器学习项目。您将通过编写一个名为 ml2p.yml 的小型YAML文件来定义您的项目。

project: "ml2p-tutorial"
s3folder: "s3://your-s3-bucket/"
models:
  bob: "models.RegressorModel"
defaults:
  image: "XXXXX.dkr.ecr.REGION.amazonaws.com/your-docker-image:X.Y.Z"
  role: "arn:aws:iam::XXXXX:role/your-role"
train:
  instance_type: "ml.m5.large"
deploy:
  instance_type: "ml.t2.medium"
  record_invokes: true

本文件指定了

  • 项目:您的项目名称

  • s3folder:存储您项目模型和数据集的S3桶

  • models:将用于训练模型和进行预测的模型名称和Python类列表

  • 默认值:

    • image:项目在训练和预测时使用的Docker镜像

    • role:项目运行的AWS角色

  • 训练:

    • instance_type:在训练模型时使用的AWS实例类型

  • 部署:

    • instance_type:在部署模型时使用的AWS实例类型

    • record_invokes:是否在S3中记录预测请求

您的项目名称作为ML2P创建的SageMaker训练作业、模型和端点名称的前缀(因为这些名称在SageMaker账户内是全局的)。

ML2P还将所有创建的AWS对象都标记为您的项目名称。

教程

请参阅https://ml2p.readthedocs.io/en/latest/tutorial/获取分步教程。

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面