在 Amazon SageMaker AI 中开发算法和模型
您必须先开发算法和模型并将它们打包到 Docker 容器中,然后才能在 Amazon SageMaker AI 中创建或在 AWS Marketplace 中上架算法和模型包。
注意
创建了要在 AWS Marketplace 中上架的算法和模型包后,SageMaker AI 会在支持的操作系统上扫描容器中的安全漏洞。
只支持以下操作系统版本:
-
Debian:6.0、7、8、9、10
-
Ubuntu:12.04、12.10、13.04、14.04、14.10、15.04、15.10、16.04、16.10、17.04、17.10、18.04、18.10
-
CentOS:5、6、7
-
Oracle Linux:5、6、7
-
Alpine:3.3、3.4、3.5
-
Amazon Linux
在 SageMaker AI 中开发算法
算法应打包作为 Docker 容器并存储在 Amazon ECR 中,以在 SageMaker AI 中使用。Docker 容器包含用于运行训练作业的训练代码,以及(可选)用于从使用该算法训练的模型中获取推理的推理代码。
有关在 SageMaker AI 中开发算法以及将其打包为容器的信息,请参阅用于训练和部署模型的 Docker 容器。有关如何创建算法容器的完整示例,请参阅位于 https://sagemaker-examples.readthedocs.io/en/latest/advanced_functionality/scikit_bring_your_own/scikit_bring_your_own.htmlscikit_bring_your_own.ipynb。
创建在 AWS Marketplace 上发布的算法资源之前,请务必对您的算法进行全面的测试。
注意
当买家订阅您的容器化产品时,Docker 容器运行在隔离(无 Internet 连接)的环境中。在您创建容器时,请勿通过 Internet 进行传出调用。调用 AWS 服务同样不允许。
在 SageMaker AI 中开发模型
SageMaker AI 中的可部署模型由推理代码、模型构件、用于访问资源的 IAM 角色以及在 SageMaker AI 中部署模型所需的其他信息组成。模型构件是使用机器学习算法训练模型的结果。推理代码必须打包在 Docker 容器中并存储在 Amazon ECR 中。您可以将模型构件打包到与推理代码相同的容器中,也可将其存储在 Amazon S3 中。
您可通过在 SageMaker AI 中运行训练作业创建模型,或者通过在 SageMaker AI 之外训练机器学习算法来创建模型。如果您在 SageMaker AI 中运行训练作业,则生成的模型构件可在 ModelArtifacts 字段中用于响应对 DescribeTrainingJob 操作的调用。有关如何开发 SageMaker AI 模型容器的信息,请参阅具有自定义推理代码的容器。有关如何利用在 SageMaker AI 之外训练的模型创建模型容器的完整示例,请参阅位于 https://sagemaker-examples.readthedocs.io/en/latest/advanced_functionality/xgboost_bring_your_own_model/xgboost_bring_your_own_model.html
创建在 AWS Marketplace 上发布的模型包之前,请务必对您的模型进行全面的测试。
注意
当买家订阅您的容器化产品时,Docker 容器运行在隔离(无 Internet 连接)的环境中。在您创建容器时,请勿通过 Internet 进行传出调用。调用 AWS 服务同样不允许。