如何在不使用 jupyter notebook 实例(无服务器)的情况下在 Sagemaker 上以脚本模式训练和部署模型?
How to train and deploy model in script mode on Sagemaker without using jupyter notebook instance (serverless)?
我一直在使用 jupyter notebook 实例启动训练作业(在单独的实例上)并部署端点(在另一个实例上)。我正在为此使用 sagemaker tensorflow API,如下所示:
# create Tensorflow object and provide and entry point script
tf_estimator = TensorFlow(entry_point='tf-train.py', role='SageMakerRole',
train_instance_count=1, train_instance_type='ml.p2.xlarge',
framework_version='1.12', py_version='py3')
# train model on data on s3 and save model artifacts to s3
tf_estimator.fit('s3://bucket/path/to/training/data')
# deploy model on another instance using checkpoints saved on S3
predictor = estimator.deploy(initial_instance_count=1,
instance_type='ml.c5.xlarge',
endpoint_type='tensorflow-serving')
我一直在通过 jupyter notebook 实例执行所有这些步骤。我可以使用哪些 AWS 服务来摆脱对 jupyter notebook 实例的依赖,并以无服务器方式自动执行这些训练和部署模型的任务?
我推荐AWS Step Functions
。由于它与 CloudWatch
事件规则集成,因此一直使用它来安排 SageMaker Batch Transform
和预处理作业。它还可以训练模型,执行 hpo 调优,并与 lambda
集成。有一个 SageMaker/Step Functions SDK,您可以通过创建状态机直接使用 Step Functions。一些示例和文档:
https://docs.aws.amazon.com/step-functions/latest/dg/connect-sagemaker.html
我一直在使用 jupyter notebook 实例启动训练作业(在单独的实例上)并部署端点(在另一个实例上)。我正在为此使用 sagemaker tensorflow API,如下所示:
# create Tensorflow object and provide and entry point script
tf_estimator = TensorFlow(entry_point='tf-train.py', role='SageMakerRole',
train_instance_count=1, train_instance_type='ml.p2.xlarge',
framework_version='1.12', py_version='py3')
# train model on data on s3 and save model artifacts to s3
tf_estimator.fit('s3://bucket/path/to/training/data')
# deploy model on another instance using checkpoints saved on S3
predictor = estimator.deploy(initial_instance_count=1,
instance_type='ml.c5.xlarge',
endpoint_type='tensorflow-serving')
我一直在通过 jupyter notebook 实例执行所有这些步骤。我可以使用哪些 AWS 服务来摆脱对 jupyter notebook 实例的依赖,并以无服务器方式自动执行这些训练和部署模型的任务?
我推荐AWS Step Functions
。由于它与 CloudWatch
事件规则集成,因此一直使用它来安排 SageMaker Batch Transform
和预处理作业。它还可以训练模型,执行 hpo 调优,并与 lambda
集成。有一个 SageMaker/Step Functions SDK,您可以通过创建状态机直接使用 Step Functions。一些示例和文档:
https://docs.aws.amazon.com/step-functions/latest/dg/connect-sagemaker.html