微調模型 - Amazon SageMaker

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

微調模型

微調會在新資料集上訓練預先訓練的模型,而不需要從頭開始訓練。這個程序也稱為移轉學習,可以利用較小的資料集和較短的訓練時間來產生精確的模型。如果模型的卡顯示 可微調屬性設定為,您就可以微調該模型。

JumpStart fine-tunable Image Classification - TensorFlow model

重要

截至 2023 年 11 月 30 日,以前的 Amazon SageMaker 工作室體驗現在被命名為 Amazon SageMaker 工作室經典。下面的部分是特定於使用 Studio 傳統版應用程序。如需使用更新後的 Studio 體驗的相關資訊,請參閱Amazon SageMaker 一室

注意

如需 Studio 中 JumpStart 模型微調的詳細資訊,請參閱 在 Studio 中微調基礎模型

微調資料來源

微調模型時,您可以使用預設資料集或選擇自己位於 Amazon S3 儲存貯體中的資料。

若要瀏覽可用的儲存貯體,請選擇尋找 S3 儲存貯體。這些值區受到用來設定 Studio 傳統版帳戶的權限的限制。您也可以選擇輸入 Amazon S3 儲存貯體位置URI來指定 Amazon S3

JumpStart data source settings with default dataset selected.

提示

若要瞭解如何格式化儲存貯體中的資料,請選擇瞭解更多。模型的描述部分包含有關輸入和輸出的詳細資訊。 

針對文字模型:

  • 儲存貯體必須具有 data.csv 檔案。

  • 第一欄必須是用於類別標籤的唯一整數。例如:1234n

  • 第二欄必須為字串。

  • 第二欄應具有符合模型類型和語言的對應文字。 

針對視覺模型:

  • 儲存貯體必須具有與類別數目一樣多的子目錄。

  • 各個子目錄應包含屬於該類的 .jpg 格式圖像。

注意

Amazon S3 儲存貯體必須與您執行 SageMaker工作室傳統版的 AWS 區域 位置相同,因為 SageMaker 不允許跨區域請求。

微調部署組態

p3 系列是我們建議速度最快的深度學習訓練系列,建議您使用此系列來微調模型。下圖顯示每個執行處理類型GPUs中的數目。您還可以選擇其他可用選項,包括 p2 和 g4 執行個體類型。

執行個體類型 GPUs
p3.2xlarge 1
p3.8xlarge 4
p3.16xlarge 8
p3dn.24xlarge 8

超參數

您可以自訂用於微調模型的訓練工作的超參數。每個可微調模型的可用超參數視模型而有所不同。如需有關每個可用超參數的資訊,請參閱使用 Amazon SageMaker 內建演算法或預先訓練的模型中關於所選模型的超參數文件。例如,如需可微調影像分類- TensorFlow 超參影像分類- TensorFlow 超參數數的詳細資訊,請參閱。

如果您在未變更超參數的情況下使用文字模型的預設資料集,則會得到幾乎相同的模型。針對視覺模型,預設資料集與用於訓練預先訓練模型的資料集不同,因此您的模型因此會有所不同。

以下超參數在模型中很常見:

  • 時期 - 一個時期是整個資料集的一個循環。一個批次包括多個間隔,多個批次最終組成一個時期。執行多個週期,直到模型的精準度達到可接受的程度,或者當誤差率降至可接受的程度以下為止。

  • 學習速率 - 值應該在時期之間改變的量。在改良模型時,會推動其內部權重,並檢查錯誤率以查看模型是否有所改善。典型的學習速率是 0.1 或 0.01,其中 0.01 是較小的調整,可能會導致訓練需要很長時間才能收斂,而 0.1 則大得多,可能導致訓練過衝。它是您可以調整以訓練模型的主要超參數之一。請注意,對於文字模型,較小的學習速率 (5e-5BERT) 可能會產生更精確的模型。

  • Batch 大小 — 資料集中要針對每個要傳送至訓練的間隔選取的GPUs記錄數。

    在圖像示例中,您可能會每發送 32 張圖像GPU,因此 32 個將是您的批處理大小。如果您選擇的執行個體類型有多個GPU,則批次會除以的數目GPUs。建議的批次大小會因您使用的資料和模型而有所不同。例如,最佳化圖像資料的方式與處理語言資料的方式就有所不同。

    在建置組態段落的執行處理類型圖表中,您可以看到GPUs每個執行處理類型的數目。從標準建議批次大小開始 (例如視覺模型為 32)。然後,將其乘以您選取GPUs的例證類型中的數目。例如,如果您使用的是p3.8xlarge,這將是 32(批次大小)乘以 4 (GPUs),總計為 128,因為您的批次大小會根據的數量調整GPUs。對於類似的文本模型BERT,請嘗試從 64 的批次大小開始,然後根據需要縮小。

訓練輸出

微調程序完成後,會 JumpStart 提供有關模型的資訊:父模型、訓練工作名稱、訓練工作ARN、訓練時間和輸出路徑。輸出路徑是新模型在 Amazon S3 儲存貯體中的位置。資料夾結構使用您提供的模型名稱,且模型檔案位於 /output子資料夾中,而且永遠命名為 model.tar.gz。 

範例:s3://bucket/model-name/output/model.tar.gz

設定模型訓練的預設值

您可以為參數 (例如IAM角色和KMS金鑰) 設定預設值VPCs,以便為 JumpStart 模型部署和訓練預先填入。如需詳細資訊,請參閱 設定 JumpStart 模型的預設值