

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 优化文本生成模型学习过程的超参数
<a name="autopilot-llms-finetuning-hyperparameters"></a>

您可以通过调整以下超参数的任意组合来优化基础模型的学习过程。这些参数适用于所有模型。
+ **历时计数**：`epochCount` 超参数决定了模型对整个训练数据集的遍历次数。它影响训练时间，如果设置得当，可以防止过度拟合。大量的历时可能会增加微调工作的总体运行时间。我们建议在 `[TextGenerationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html)` 的 `CompletionCriteria` 内设置较大的 `MaxAutoMLJobRuntimeInSeconds`，以避免微调作业过早停止。
+ **批量大小**：`batchSize` 超参数定义了每次迭代训练中使用的数据样本数量。它会影响收敛速度和内存使用量。随着批量规模的扩大，内存不足（OOM）错误的风险也会增加，这可能会在 Autopilot 中以内部服务器错误的形式出现。要检查是否存在此类错误，请检查 Autopilot 作业启动的训练作业的 `/aws/sagemaker/TrainingJobs` 日志组。您可以 CloudWatch 从 AWS 管理控制台中访问这些登录信息。选择**日志**，然后选择 `/aws/sagemaker/TrainingJobs` **日志组**。要纠正 OOM 错误，请缩小批量。

  我们建议从批量大小为 1 开始，然后逐步增加，直到出现内存不足的错误。作为参考，10 个纪元通常需要 72 小时才能完成。
+ **学习率**：`learningRate` 超参数控制模型参数在训练过程中的更新步长。它决定了模型参数在训练过程中更新的快慢。高学习率意味着参数更新的步长较大，这可以加快收敛速度，但也可能导致优化过程偏离最优解，变得不稳定。较低的学习率意味着参数更新的步长较小，这可能导致更稳定的收敛，但代价是学习速度较慢。
+ **学习率预热步数**：`learningRateWarmupSteps` 超参数指定了学习率在达到目标或最大值之前逐渐增加的训练步数。这有助于模型更有效地收敛，避免因初始学习率过高而出现的发散或收敛缓慢等问题。

要了解如何在 Autopilot 中为微调实验调整超参数并发现其可能的值，请参阅 [如何设置超参数以优化模型的学习过程](autopilot-create-experiment-finetune-llms.md#autopilot-llms-finetuning-set-hyperparameters)。