建立演算法資源 - Amazon SageMaker

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

建立演算法資源

您可以在 Amazon 中建立演算法資源,以搭配訓練任務使用 SageMaker,並且可以在 上發佈 AWS Marketplace。下列各節說明如何使用 AWS Management Console 和 來執行此操作 SageMaker API。

若要建立演算法資源,您可以指定下列資訊:

  • 包含訓練以及可選擇包含推論程式碼的 Docker 容器。

  • 您的演算法預期用於訓練的輸入資料之組態。

  • 您演算法支援的超參數。

  • 您的演算法在訓練任務 CloudWatch 期間傳送至 Amazon 的指標。

  • 您演算法支援用來進行訓練和推論的執行個體類型,以及其是否支援多個執行個體間的分散式訓練。

  • 驗證設定檔,這是 SageMaker 用來測試演算法訓練程式碼的訓練任務,以及 SageMaker 用來測試演算法推論程式碼的批次轉換任務。

    為了確保買方和賣方可以確信產品在 中運作 SageMaker,我們會要求您先驗證演算法,才能在 上列出演算法 AWS Marketplace。 AWS Marketplace 只有在驗證成功時,您才能在 中列出產品。若要驗證您的演算法, SageMaker 會使用驗證設定檔和範例資料來執行下列驗證任務:

    1. 在帳戶中建立訓練任務,以確認您的訓練映像是否與 搭配使用 SageMaker。

    2. 若您在演算法中包含了推論程式碼,請使用演算法的推論映像和訓練工作所產生的模型成品,在您的帳戶中建立模型。

    3. 如果您在演算法中包含推論程式碼,請使用模型在帳戶中建立轉換任務,以驗證推論映像是否與 搭配使用 SageMaker。

    當您在 上列出產品時 AWS Marketplace,此驗證程序的輸入和輸出會保留為產品的一部分,並可供您的買家使用。這可協助買家在購買之前了解和評估產品。例如,買家可以檢查您使用的輸入資料、所產生的輸出,以及您程式碼發出的日誌和指標。您的驗證規格越完整,客戶便越能輕鬆地評估您的產品。

    注意

    在您的驗證設定檔中,請只提供您要公開的資料。

    驗證可能需要耗費數小時。若要查看帳戶中任務的狀態,請參閱 SageMaker 主控台中的訓練任務轉換任務頁面。如果驗證失敗,您可以從 SageMaker 主控台存取掃描和驗證報告。若發現任何任務,您將必須重新建立演算法。

    注意

    若要在 上發佈您的演算法 AWS Marketplace,至少需要一個驗證設定檔。

您可以使用 SageMaker 主控台 SageMaker或 建立演算法API。

建立演算法資源 (主控台)

建立演算法資源 (主控台)
  1. 在 開啟 SageMaker 主控台https://console.aws.amazon.com/sagemaker/

  2. 從左側選單中選擇訓練

  3. 從下拉式選單中選擇演算法,然後選擇建立演算法

  4. 訓練規格頁面上,提供以下資訊:

    1. 針對演算法名稱,輸入您的演算法的名稱。演算法名稱在您的帳戶和 AWS 區域中必須是唯一的。名稱長度必須介於 1 至 64 個字元。有效字元為 a-z、A-Z、0-9 和 - (連字號)。

    2. 輸入您的演算法的描述。此描述會顯示在 SageMaker 主控台和 中 AWS Marketplace。

    3. 針對訓練映像,在存放ECR訓練容器的 Amazon 中輸入路徑。

    4. 針對支援分散式訓練,若您的演算法支援在多個執行個體上進行訓練,請選擇。否則請選擇

    5. 針對支援用於訓練的執行個體類型,請選擇您的演算法支援的執行個體類型。

    6. 針對通道規格,為您的演算法指定最多 8 個輸入資料通道。例如,您可以指定 3 個輸入通道,分別名為 trainvalidationtest。針對每個通道,指定下列資訊:

      1. 針對通道名稱,輸入通道的名稱。名稱長度必須介於 1 至 64 個字元。有效字元為 a-z、A-Z、0-9 和 - (連字號)。

      2. 若要使通道成為您演算法的必要項目,請選擇需要通道

      3. 輸入通道的描述。

      4. 針對支援的輸入模式,若您的演算法支援串流輸入資料,請選擇管道模式;若您的演算法支援將輸入資料做為檔案下載,請選擇檔案模式。您可以同時選擇兩者。

      5. 針對支援的內容類型 ,輸入演算法預期輸入資料的MIME類型。

      6. 針對支援的壓縮類型,若您的演算法支援 Gzip 壓縮,請選擇 Gzip。否則,請選擇

      7. 請選擇新增通道來新增其他資料輸入通道;或者,若您已完成新增通道,請選擇下一步

  5. 調校規格頁面上,提供以下資訊:

    1. 對於超參數規格 ,請編輯JSON物件來指定演算法支援的超參數。對於演算法支援的每個超參數,請建構類似下列的JSON區塊:

      { "DefaultValue": "5", "Description": "The first hyperparameter", "IsRequired": true, "IsTunable": false, "Name": "intRange", "Range": { "IntegerParameterRangeSpecification": { "MaxValue": "10", "MinValue": "1" }, "Type": "Integer" }

      在 中JSON,提供下列項目:

      1. 針對 DefaultValue,請指定超參數的預設值 (若有的話)。

      2. 針對 Description,請指定超參數的描述。

      3. 針對 IsRequired,請指定是否需要超參數。

      4. 針對 IsTunable,若可在使用者執行使用此演算法的超參數調校工作時調校此超參數,請指定 true。如需相關資訊,請參閱使用 自動模型調校 SageMaker

      5. 針對 Name,請指定超參數的名稱。

      6. 針對 Range,請指定下列其中一項:

        • IntegerParameterRangeSpecification - 超參數的值為整數。為超參數指定最小值及最大值。

        • ContinuousParameterRangeSpecification - 超參數的值為浮點數值。為超參數指定最小值及最大值。

        • CategoricalParameterRangeSpecification - 超參數的值為類別值。指定所有可能值的清單。

      7. 針對 Type,請指定 IntegerContinuousCategorical。該值必須對應到您所指定的 Range 類型。

    2. 針對指標定義 ,指定您希望演算法發出的任何訓練指標。 SageMaker 會使用您指定的規則運算式,在訓練期間從訓練容器剖析日誌以尋找指標。使用者可以在使用演算法執行訓練任務時檢視這些指標,而且他們可以監控和繪製 Amazon 中的指標 CloudWatch。如需相關資訊,請參閱 監控和分析訓練任務的 Amazon CloudWatch 指標。針對每個指標,請提供以下資訊:

      1. 針對指標名稱,輸入指標的名稱。

      2. 對於 Regex,輸入 SageMaker 用來剖析訓練日誌的規則運算式,以便找到指標值。

      3. 針對目標指標支援,若此指標可以用來做為超參數調校工作的目標指標,請選擇。如需相關資訊,請參閱使用 自動模型調校 SageMaker

      4. 請選擇新增指標來新增其他指標;或者,若您已完成新增指標,請選擇下一步

  6. 推論規格頁面上,若您的演算法支援推論,請提供以下資訊:

    1. 針對推論影像的位置 ,在存放推論容器的 Amazon ECR 中輸入路徑。

    2. 針對容器DNS主機名稱 ,輸入映像的DNS主機名稱。

    3. 針對即時推論的支援執行個體類型 ,選擇演算法在 中部署為託管端點的模型支援的執行個體類型 SageMaker。如需相關資訊,請參閱 部署用於推論的模型

    4. 針對批次轉換工作支援的執行個體類型,請選擇您的演算法針對批次轉換工作所支援的執行個體類型。如需相關資訊,請參閱使用 Amazon 進行推論的批次轉換 SageMaker

    5. 針對支援的內容類型,請輸入您的演算法預期用於推論請求的輸入資料類型。

    6. 針對支援的回應MIME類型 ,輸入演算法支援推論回應的MIME類型。

    7. 選擇 Next (下一步)

  7. 驗證規格頁面上,提供以下資訊:

    1. 對於在 上發佈此演算法 AWS Marketplace,請選擇,以在 上發佈演算法 AWS Marketplace。

    2. 對於驗證此資源 ,如果您 SageMaker 想要執行訓練任務和/或批次轉換任務,以測試演算法的訓練和/或推論程式碼,請選擇

      注意

      若要在 上發佈您的演算法 AWS Marketplace,則必須驗證您的演算法。

    3. 針對IAM角色 ,選擇具有在 中執行訓練任務和批次轉換任務所需許可IAM的角色 SageMaker,或選擇建立新角色 SageMaker ,以允許建立已連接AmazonSageMakerFullAccess受管政策的角色。如需相關資訊,請參閱 如何使用 SageMaker 執行角色

    4. 針對驗證設定檔,請指定下列項目:

    5. 選擇建立演算法

建立演算法資源 (API)

若要使用 建立演算法資源 SageMaker API,請呼叫 CreateAlgorithm API。