在 Amazon 開發算法和模型 SageMaker - Amazon SageMaker

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 Amazon 開發算法和模型 SageMaker

在創建算法和模型包資源以在 Amazon 中使用 SageMaker 或列出之前 AWS Marketplace,您必須先開發它們並將其打包在 Docker 容器中。

注意

建立要列出的演算法和模型套件時 AWS Marketplace,會 SageMaker掃描容器是否存在支援的作業系統上的安全性弱點。

僅支援以下作業系統版本:

  • 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

算法應打包為 docker 集裝箱並存儲在 Amazon 中ECR以使用它。 SageMakerDocker 容器包含訓練程式碼 (可用來執行訓練任務),以及選用的推論程式碼 (可用來透過使用演算法訓練的模型取得推論)。

如需有關在中開發演算法 SageMaker 並將其封裝為容器的資訊,請參閱使用 Docker 容器來訓練和部署模型。如需如何建立演算法容器的完整範例,請參閱中的範例筆記本https://sagemaker-examples.readthedocs.io/en/latest/advanced_functionality/scikit_bring_your_own/scikit_bring_your_own.html。您也可以在記事本執行個體中找到範例 SageMaker 筆記本。筆記本位於 Advanced Functionality (進階功能) 區段,名稱為 scikit_bring_your_own.ipynb。如需如何在筆記本執行個體中使用範例筆記本的資訊,請參閱範例筆記本

在建立要發佈的演算法資源之前,請務必徹底測試您的演算法 AWS Marketplace。

注意

當買方訂閱您的容器化產品時,Docker 容器即會在隔離 (無需網際網路) 環境中執行。當您建立容器時,請不要倚賴透過網際網路進行傳出呼叫。也不允許撥打 AWS 服務。

開發模型 SageMaker

中的可部署模型 SageMaker 包含推論程式碼、模型成品、用於存取資源的IAM角色,以及在中部署模型所需的其他資訊。 SageMaker模型成品是使用機器學習演算法訓練模型的結果。推論程式碼必須封裝在 Docker 容器中,並儲存在 Amazon 中。ECR您可以將模型成品封裝在與推論程式碼相同的容器中,或存放於 Amazon S3。

您可以透過在中執行訓練工作 SageMaker,或透過在以外訓練機器學習演算法來建立模型 SageMaker。如果您在中執行訓練工作 SageMaker,則會在回應DescribeTrainingJob作業呼叫時,在ModelArtifacts欄位中找到產生的模型加工品。如需有關如何開發 SageMaker 模型容器的資訊,請參閱使用您自己的推論程式碼。如需如何從外部訓練過的模型建立模型容器的完整範例 SageMaker,請參閱中的範例筆記本https://sagemaker-examples.readthedocs.io/en/latest/advanced_functionality/xgboost_bring_your_own_model/xgboost_bring_your_own_model.html。您也可以在記事本執行個體中找到範例 SageMaker 筆記本。筆記本位於 Advanced Functionality (進階功能) 區段,名稱為 xgboost_bring_your_own_model.ipynb。如需如何在筆記本執行個體中使用範例筆記本的資訊,請參閱範例筆記本

在建立要發佈的模型套件之前,請務必徹底測試您的模型 AWS Marketplace。

注意

當買方訂閱您的容器化產品時,Docker 容器即會在隔離 (無需網際網路) 環境中執行。當您建立容器時,請不要倚賴透過網際網路進行傳出呼叫。也不允許撥打 AWS 服務。