本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
监控各迭代的进度
您可以通过跟踪指标 MLflow。
创建 MLflow 应用程序
使用 Studio 用户界面:如果您通过 Studio 用户界面创建训练作业,则会自动创建默认 MLflow 应用程序,并在高级选项下默认选择该应用程序。
使用 CLI:如果您使用 CLI,则必须创建一个 MLflow 应用程序并将其作为输入传递给训练作业 API 请求。
mlflow_app_name="<enter your MLflow app name>" role_arn="<enter your role ARN>" bucket_name="<enter your bucket name>" region="<enter your region>" mlflow_app_arn=$(aws sagemaker create-mlflow-app \ --name $mlflow_app_name \ --artifact-store-uri "s3://$bucket_name" \ --role-arn $role_arn \ --region $region)
访问该 MLflow 应用程序
使用 CLI:创建用于访问 MLflow 应用程序界面的预签名 URL:
aws sagemaker create-presigned-mlflow-app-url \ --arn $mlflow_app_arn \ --region $region \ --output text
使用 Studio 用户界面:Studio 界面显示存储在中的关键指标, MLflow 并提供指向 MLflow 应用程序界面的链接。
要跟踪的关键指标
跨迭代监控这些指标,以评估改进情况并跟踪工作进度:
适用于 SFT
-
训练损失曲线
-
消耗的样本数量和处理样本的时间
-
被搁置的测试集的性能精度
-
格式合规性(例如,有效的 JSON 输出速率)
-
对特定领域的评估数据感到困惑
适用于 RFT
-
训练的平均奖励分数
-
奖励分配(高奖励回复的百分比)
-
验证奖励趋势(注意是否过度拟合)
-
特定任务的成功率(例如,代码执行通过率、数学问题准确率)
一般性问题
-
两次迭代之间的基准性能增量
-
代表性样本的人体评估分数
-
生产指标(如果以迭代方式部署)
确定何时停止
在以下情况下停止迭代:
-
绩效停滞不前:额外的培训不再能有意义地改善目标指标
-
技术切换有帮助:如果一种技术停滞不前,请尝试切换(例如,SFT → RFT → SFT)以突破性能上限
-
目标指标已达到:您的成功标准已达到
-
检测到回归:新的迭代会降低性能(参见下面的回滚程序)
有关详细的评估程序,请参阅 “评估” 部分。