问题描述
我有python script.py
,它是从头开始的KNN机器学习算法编写者。
仅使用pandas和numpy库。
脚本包含所有功能。
它需要一些参数,例如train_data
,test_data
,k_val
等。我想在 sagemaker 中运行它。
寻找一种解决方案,如何将该脚本放入docker映像中,并从 ECR容器在 sagemaker 中调用它。
解决方法
您需要的是 SageMaker BYOC(自带容器)。
SageMaker为大多数ML算法预先构建了容器,但是对于自定义算法和自定义代码,它提供了创建自定义容器的支持。
它们基本上有2种类型:
如果您的目标是训练模型,请运行验证并保存模型文件。
-Training Container
如果您的目标是使用现有模型进行推断,请使用SageMaker Endpoint Hosting或Batch Transform。
-Serving Container
有关详细步骤,请参阅此repository。
文件predictor.py
和serve
最重要,其中包含您的自定义代码。