使用演算法來執行訓練工作 - Amazon SageMaker

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

使用演算法來執行訓練工作

您可以使用 Amazon SageMaker 主控台、低階 Amazon SageMaker API 或 Amazon SageMaker Python 開發套件來建立使用演算法資源來建立訓練任務。

使用演算法來執行訓練工作 (主控台)

使用演算法來執行訓練工作 (主控台)
  1. 請在以下位置開啟 SageMaker 主控台。 https://console.aws.amazon.com/sagemaker/

  2. 選擇演算法

  3. 我的演算法索引標籤的清單上選擇您建立的演算法,或在AWS Marketplace 訂閱索引標籤上選擇您訂閱的演算法。

  4. 選擇建立訓練工作

    會自動選取您選擇的演算法。

  5. 建立訓練工作頁面上,提供以下資訊:

    1. 針對工作名稱,輸入訓練工作的名稱。

    2. 對於 IAM 角色,請選擇具有執行訓練任務所需許可的 IAM 角色 SageMaker,或選擇 [建立新角色] SageMaker 以允許建立已附加AmazonSageMakerFullAccess受管政策的角色。如需相關資訊,請參閱如何使用 SageMaker 執行角色

    3. 針對資源組態,提供下列資訊:

      1. 針對執行個體類型,選擇要用於訓練的執行個體類型。

      2. 針對執行個體計數,輸入要用於訓練工作的機器學習 (ML) 執行個體數量。

      3. 針對每個執行個體的額外磁碟區 (GB),輸入您要佈建的機器學習 (ML) 儲存磁碟區大小。機器學習 (ML) 儲存磁碟區會存放模型成品及累加狀態。

      4. 對於加密金鑰,如果您希 SageMaker 望 Amazon 使用 AWS 金鑰管理服務金鑰來加密連接至訓練執行個體之 ML 儲存磁碟區中的資料,請指定金鑰。

      5. 針對停止條件,指定您希望訓練工作執行的時間上限 (以秒、分鐘、小時或天數為單位)。

    4. 針對 VPC,選擇您希望允許訓練容器存取的 Amazon VPC。如需詳細資訊,請參閱 讓 SageMaker 訓練任務能夠存取 Amazon VPC 中的資源

    5. 針對超參數,指定要用於訓練工作的超參數值。

    6. 針對輸入資料組態,針對每個用於訓練工作的輸入資料通道,指定下列值。您可以在該演算法的演算法摘要頁面的通道規格區段下,查看您用於訓練支援的演算法通道,以及每個通道的內容類型、支援的壓縮類型和支援的輸入模式。

      1. 針對通道名稱,輸入輸入通道的名稱。

      2. 針對內容類型,輸入演算法針對通道所預期的資料內容類型。

      3. 針對壓縮類型,選擇要使用的資料壓縮類型 (若有的話)。

      4. 針對記錄包裝函式,若演算法預期 RecordIO 格式的資料,請選擇 RecordIO

      5. 針對 S3 資料類型S3 資料分佈類型S3 位置,請指定適當的值。如需這些值所代表意義的資訊,請參閱 S3DataSource

      6. 針對輸入模式,選擇檔案來從所佈建的機器學習 (ML) 儲存磁碟區下載資料,並將目錄掛載到 Docker 磁碟區。選擇管道來直接從 Amazon S3 串流資料到容器。

      7. 若要新增另一個輸入通道,請選擇新增通道。若您已完成新增輸入通道,請選擇完成

    7. 針對輸出位置,請指定下列值:

      1. 針對 S3 輸出路徑,選擇訓練工作存放輸出 (例如模型成品) 的 S3 位置。

        注意

        您可以使用存放在此位置的模型成品,從訓練工作建立模型或模型套件。

      2. 對於加密金鑰,如果您想 SageMaker 要使用 AWS KMS 金鑰來加密 S3 位置的靜態輸出資料。

    8. 針對標籤,請指定一或多個標籤來管理訓練工作。每個標籤皆包含索引鍵與選用值。每個資源的標籤鍵必須是唯一的。

    9. 選擇建立訓練工作來執行訓練工作。

使用演算法來執行訓練工作 (API)

若要使用演算法透過 SageMaker API 執行訓練任務,請指定名稱或 Amazon 資源名稱 (ARN) 做為傳遞至AlgorithmSpecificationCreateTrainingJob物件的AlgorithmName欄位。如需有關中訓練模型的資訊 SageMaker,請參閱用 Amazon 訓練模型 SageMaker

使用演算法執行訓練 Job (Amazon SageMaker Python 開發套件)

使用您在上建立或訂閱的演算法 AWS Marketplace 來建立訓練任務、建立AlgorithmEstimator物件並指定 Amazon 資源名稱 (ARN) 或演算法名稱做為algorithm_arn引數的值。然後呼叫估算器的 fit 方法。例如:

from sagemaker import AlgorithmEstimator data_path = os.path.join(DATA_DIR, 'marketplace', 'training') algo = AlgorithmEstimator( algorithm_arn='arn:aws:sagemaker:us-east-2:012345678901:algorithm/my-algorithm', role='SageMakerRole', instance_count=1, instance_type='ml.c4.xlarge', sagemaker_session=sagemaker_session, base_job_name='test-marketplace') train_input = algo.sagemaker_session.upload_data( path=data_path, key_prefix='integ-test-data/marketplace/train') algo.fit({'training': train_input})