建立您的 Amazon SageMaker 資源 - AWS Marketplace

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

建立您的 Amazon SageMaker 資源

若要發佈模型套件或演算法產品,您必須在 Amazon 中建立對應的模型套件資源演算法資源 SageMaker。當您為 AWS Marketplace 產品建立資源時,必須透過驗證步驟進行認證。驗證步驟要求您提供資料,以便在發佈模型套件或演算法資源之前進行測試。下列各節說明如何建立 SageMaker 資源,無論是模型套件資源或演算法資源。這包括設定驗證規格, SageMaker 說明如何執行驗證。

注意

如果您尚未為產品建立映像,並將其上傳至 Amazon Elastic Container Registry (AmazonECR),請參閱 將程式碼封裝到 中的機器學習產品映像中 AWS Marketplace將映像上傳至 Amazon Elastic Container Registry 以取得如何建立映像的相關資訊。

建立模型套件

以下是為 建立模型套件的要求 AWS Marketplace:

  • 儲存在 Amazon ECR中的推論映像

  • (選用) 模型成品,分別儲存在 Amazon S3

  • 用於推論的測試資料,儲存在 Amazon Simple Storage Service (Amazon S3) 中

注意

以下是關於建立模型套件產品。如需 中模型套件的詳細資訊 SageMaker,請參閱建立模型套件資源

建立模型套件資源

下列程序會逐步引導您建立模型套件資源。

步驟 1:建立模型套件資源
  1. 開啟 Amazon SageMaker 主控台

  2. 透過查看頁面右上角,確保您位於要發佈的 AWS 區域中。如需發佈,請參閱 支援 AWS 區域 發佈一節。您在先前步驟中上傳至 Amazon ECR的推論映像必須位於相同的 區域中。

  3. 在左側導覽選單中,選擇模型套件

  4. 選擇 Create model package (建立模型套件)

建立套件之後,您需要設定推論套件的規格。

步驟 2:設定推論規格
  1. 為您的模型套件提供名稱 (例如,my-model-package).

  2. 針對推論映像的位置 ,輸入已上傳至 Amazon URI的推論映像的 ECR。您可以在 Amazon 主控台 中尋找映像URI來擷取 。 ECR

  3. 如果您的訓練模型成品與推論映像中的邏輯綁定在一起,請將模型資料成品的位置保留空白。否則,請指定模型成品壓縮檔案 (.tar.gz) 的完整 Amazon S3 位置。

  4. 使用下拉式清單,為即時推論 (也稱為端點 ) 和批次轉換任務選擇支援的執行個體類型。

  5. 選擇 Next (下一步)

在建立和發佈模型套件之前,必須先進行驗證,以確保其如預期般運作。這需要您使用測試資料執行批次轉換任務,以進行您提供的推論。驗證規格會 SageMaker 說明如何執行驗證。

步驟 3:設定驗證規格
  1. 中的發佈此模型套件 AWS Marketplace設定為。如果您將此設定為,則無法稍後發佈此模型套件。選擇可驗證 AWS Marketplace 的模型套件,且 需要驗證步驟。

  2. 如果這是第一次完成此程序,請選擇為角色 建立新IAM角色。Amazon 在部署模型套件時 SageMaker 使用此角色。這包括動作,例如從 Amazon 提取影像ECR,以及從 Amazon S3 提取成品。檢閱設定,然後選擇建立角色 。在此建立角色會將 AmazonSageMakerFullAccessIAM政策所述的許可授予您建立的角色。

  3. 在驗證設定檔JSON中編輯 。如需允許值的詳細資訊,請參閱 TransformJobDefinition

    1. TransformInput.DataSource.S3Uri:將 設定為存放推論測試資料的位置。

    2. TransformInput.ContentType:指定測試資料內容類型 (例如 、image/png application/json text/plain或任何其他值)。 SageMaker 不會驗證實際的輸入資料。此值會傳遞至Content-type標頭值中的容器HTTP端點。

    3. TransformInput.CompressionTypeNone如果您的 Amazon S3 中推論測試資料未壓縮,請設定為 。

    4. TransformInput.SplitType:設定為 None 以傳遞 Amazon S3 中的整個物件以進行推論。

    5. TransformOutput.S3OutputPath:將 設定為推論輸出儲存的位置。

    6. TransformOutput.AssembleWith:將 設定為 None,將每個推論輸出為 Amazon S3 中的個別物件。

  4. 選擇 Create model package (建立模型套件)

SageMaker 從 Amazon 提取推論映像ECR、將任何成品複製到推論容器,並使用測試資料執行批次轉換任務以進行推論。驗證成功後,狀態會變更為已完成

注意

驗證步驟不會使用測試資料評估模型的準確性。驗證步驟會檢查容器是否如預期執行和回應。

您已完成建立模型產品資源。繼續進行在 中發佈您的產品 AWS Marketplace

建立您的演算法

以下是為 建立演算法的要求 AWS Marketplace:

  • 儲存在 Amazon 中的推論映像 ECR

  • 儲存在 Amazon 的訓練映像 ECR

  • 您的訓練測試資料,存放在 Amazon S3 中

  • 您的推論測試資料,存放在 Amazon S3 中

注意

下列逐步解說會建立演算法產品。如需詳細資訊,請參閱建立演算法資源。

建立演算法資源

下列程序會逐步引導您在演算法套件中建立資源。

步驟 1:建立演算法資源
  1. 開啟 Amazon SageMaker 主控台

  2. 透過查看頁面右上角,確保您位於要發佈的 AWS 區域中 (請參閱 支援 AWS 區域 發佈)。您在ECR先前步驟中上傳至 Amazon 的訓練和推論映像必須位於相同的區域。

  3. 在左側導覽功能表中,選擇演算法

  4. 選擇建立演算法

建立演算法套件之後,您必須設定模型訓練和調校的規格。

步驟 2:設定訓練和調校規格
  1. 輸入演算法的名稱 (例如,my-algorithm).

  2. 對於訓練映像 ,請貼上上傳到 Amazon 的訓練映像的完整URI位置ECR。您可以在 Amazon 主控台 中尋找映像URI來擷取 。 ECR

  3. 使用下拉式方塊,選擇訓練映像支援的訓練執行個體類型

  4. 頻道規格區段下,為您的演算法支援的每個輸入資料集新增頻道,最多 20 個輸入來源的頻道。如需詳細資訊,請參閱輸入資料組態

  5. 選擇 Next (下一步)

  6. 如果您的演算法支援超參數和超參數調校,您必須指定調校參數。

  7. 選擇 Next (下一步)

注意

我們強烈建議您的演算法支援超參數調校,並讓適當的參數進行調整。這可讓資料科學家調整模型,以取得最佳結果。

設定調校參數後,如果有,您必須設定推論映像的規格。

步驟 3:設定推論映像規格
  1. 針對推論映像的位置 ,貼上上傳至 Amazon URI的推論映像的 ECR。您可以在 Amazon 主控台 中尋找映像URI來擷取 。 ECR

  2. 使用下拉式清單,為即時推論 (也稱為端點 ) 和批次轉換任務的推論映像選擇支援的執行個體類型。

  3. 選擇 Next (下一步)

在建立和發佈您的演算法之前,必須先進行驗證,以確保其如預期般運作。這需要您使用訓練的測試資料執行訓練任務,並使用測試資料執行批次轉換任務,以進行您提供的推論。驗證規格會 SageMaker 說明如何執行驗證。

步驟 4:設定驗證規格
  1. 將此演算法在 中發佈 AWS Marketplace 。如果您將此設定為,則無法稍後發佈此演算法。選擇可驗證您的演算法, AWS Marketplace 且 需要驗證規格。

  2. 如果這是您第一次為 建立機器學習套件 AWS Marketplace,請選擇為角色 建立新IAM角色。Amazon 會在訓練您的演算法和部署後續模型套件時 SageMaker 使用此角色。這包括從 Amazon 提取影像ECR、在 Amazon S3 中儲存成品,以及從 Amazon S3 複製訓練資料等動作。檢閱設定,然後選擇建立角色 。在此建立角色會將 AmazonSageMakerFullAccessIAM政策描述的許可授予您建立的角色。

  3. 編輯訓練任務定義 的驗證設定檔中的JSON檔案。如需允許值的詳細資訊,請參閱 TrainingJobDefinition

    1. InputDataConfig:在此JSON陣列中,為您在訓練規格步驟中指定的每個頻道新增頻道物件。針對每個頻道,指定訓練的測試資料存放位置。

    2. OutputDataConfig:訓練完成後,訓練容器目錄路徑中的模型成品/opt/ml/model/會壓縮並複製到 Amazon S3。指定壓縮檔案 (.tar.gz) 存放位置的 Amazon S3 位置。

  4. 轉換任務定義 的驗證設定檔中編輯 JSON 檔案。如需允許值的詳細資訊,請參閱 TransformJobDefinition

    1. TransformInput.DataSource.S3Uri:將 設定為存放推論測試資料的位置。

    2. TransformInput.ContentType:指定測試資料內容類型。例如,application/jsonimage/pngtext/plain或任何其他值。Amazon SageMaker 不會驗證實際輸入資料。此值會傳遞至Content-type標頭值中的容器HTTP端點。

    3. TransformInput.CompressionTypeNone如果您的 Amazon S3 中推論測試資料未壓縮,請設定為 。

    4. TransformInput.SplitType:選擇您希望 S3 分割中物件的方式。例如, 會將 Amazon S3 中的每個物件整個None傳遞以進行推論。如需詳細資訊,請參閱 Amazon SageMaker API 參考 SplitType中的 。

    5. TransformOutput.S3OutputPath:將 設定為存放推論輸出的位置。

    6. TransformOutput.AssembleWith:將 設定為 None,將每個推論輸出為 Amazon S3 中的個別物件。

  5. 選擇建立演算法套件

SageMaker 從 Amazon 提取訓練映像ECR、使用您的資料執行測試訓練任務,並將模型成品儲存在 Amazon S3 中。然後,它會從 Amazon 提取推論映像ECR,將成品從 Amazon S3 複製到推論容器中,並使用測試資料執行批次轉換任務以進行推論。驗證成功後,狀態會變更為已完成

注意

驗證步驟不會使用測試資料評估訓練或模型的準確性。驗證步驟會檢查容器是否如預期執行和回應。

驗證步驟只會驗證批次處理。您可以自行驗證即時處理是否適用於您的產品。

您已完成建立演算法產品資源。繼續進行在 中發佈您的產品 AWS Marketplace