用於最佳化文字生成模型學習過程的超參數
您可以調整下列超參數的任意組合,以最佳化基礎模型的學習過程。這些參數適用於所有模型。
-
Epoch 計數:
epochCount超參數決定模型遍歷整個訓練資料集的次數。它會影響訓練持續時間,如果設定得當,可防止過度擬合。大量的 epoch 可能會增加微調任務的整體執行時間。我們建議在TextGenerationJobConfig的CompletionCriteria中設定較大的MaxAutoMLJobRuntimeInSeconds,以避免微調任務過早停止。 -
批次大小:
batchSize超參數定義每次訓練迭代中使用的資料樣本數量。它可能會影響收斂速度和記憶體用量。隨著批次大小的增加,記憶體不足 (OOM) 錯誤的風險會增加,這可能會表現為 Autopilot 中的內部伺服器錯誤。若要檢查此類錯誤,請檢查 Autopilot 任務啟動之訓練任務的/aws/sagemaker/TrainingJobs日誌群組。您可以在 AWS 管理主控台中存取 CloudWatch 中的這些日誌。選擇日誌,然後選擇/aws/sagemaker/TrainingJobs日誌群組。若要修正 OOM 錯誤,請減少批次大小。我們建議從批次大小 1 開始,然後逐步增加,直到發生記憶體不足錯誤為止。做為參考,10 個 epoch 通常需要 72 小時才能完成。
-
學習率:
learningRate超參數控制訓練期間更新模型參數的步驟大小。它決定模型參數在訓練期間更新速度的快慢。高學習率表示參數更新的步驟大小較大,可以帶來更快的收斂速度,但也可能導致最佳化過程超出最佳解而變得不穩定。低學習率表示參數會以較小的步驟大小更新,這可以帶來更穩定的收斂,但代價是學習速度較慢。 -
學習率暖機步驟:
learningRateWarmupSteps超參數指定學習率在達到目標值或最大值之前,逐漸增加的訓練步數。這有助於模型更有效地收斂,並避免最初較高的學習率可能出現的發散或收斂緩慢等問題。
若要了解如何在 Autopilot 中調整微調實驗的超參數,並探索其可能值,請參閱如何設定超參數以最佳化模型的學習過程。