選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

定義訓練指標

焦點模式
定義訓練指標 - Amazon SageMaker AI

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

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

SageMaker AI 會自動剖析訓練任務日誌,並將訓練指標傳送至 CloudWatch。根據預設,SageMaker AI 會傳送 SageMaker AI 任務和端點指標中列出的系統資源使用率指標。如果您希望 SageMaker AI 剖析日誌,並將自訂指標從自己的演算法訓練任務傳送至 CloudWatch,則需要在設定 SageMaker AI 訓練任務請求時傳遞指標名稱和規則表達式來指定指標定義。

您可以使用 SageMaker AI 主控台、SageMaker AI Python SDK 或低階 SageMaker AI API 指定要追蹤的指標。

如果您使用自己的演算法,請執行下列動作:

  • 確保演算法將您想要擷取的指標撰寫到日誌。

  • 定義規則表達式,以便準確搜尋日誌來擷取您想要傳送至 CloudWatch 的指標值。

例如,假設您的演算法發出下列訓練錯誤和驗證錯誤的指標:

Train_error=0.138318; Valid_error=0.324557;

如果您想要在 CloudWatch 中監控這兩個指標,指標定義的字典看起來應該如下列範例所示:

[ { "Name": "train:error", "Regex": "Train_error=(.*?);" }, { "Name": "validation:error", "Regex": "Valid_error=(.*?);" } ]

在上述範例定義的 train:error 指標 regex 中,regex 的第一部分會尋找確切文字 "Train_error=",而表達式 (.*?); 會擷取第一個分號字元前顯示的任何字元。在這個表達式中,括號告知 regex 擷取其內部內容、. 代表任何字元、* 代表零個或多個,而 ? 代表僅擷取第一個 ; 字元執行個體之前的內容。

使用 SageMaker AI Python SDK 定義指標

當您初始化 Estimator 物件時,可透過 metric_definitions 引數形式指定指標名稱和規則表達式的清單,以定義您想要傳送至 CloudWatch 的指標。例如,如果您想要在 CloudWatch 中監控 train:errorvalidation:error 這兩個指標,您的 Estimator 初始化將如下列範例所示:

import sagemaker from sagemaker.estimator import Estimator estimator = Estimator( image_uri="your-own-image-uri", role=sagemaker.get_execution_role(), sagemaker_session=sagemaker.Session(), instance_count=1, instance_type='ml.c4.xlarge', metric_definitions=[ {'Name': 'train:error', 'Regex': 'Train_error=(.*?);'}, {'Name': 'validation:error', 'Regex': 'Valid_error=(.*?);'} ] )

如需使用 Amazon SageMaker Python SDK估算器進行訓練的更多相關資訊,請參閱 GitHub 上的 SageMaker Python SDK

使用 SageMaker AI 主控台定義指標

如果您在建立訓練任務時,在 SageMaker AI 主控台中選擇在 ECR 中您自己的演算法容器選項做為演算法來源,請在指標區段中新增指標定義。下列螢幕擷取畫面顯示新增範例指標名稱和對應的規則表達式後應呈現的樣子。

主控台中的範例演算法選項表單。

使用低階 SageMaker AI API 定義指標

在您傳遞至 CreateTrainingJob 操作之 AlgorithmSpecification 輸入參數的 MetricDefinitions 欄位中,指定指標名稱清單和規則表達式,以定義您想要傳送到 CloudWatch 的指標。例如,如果您想要在 CloudWatch 中監控 train:errorvalidation:error 這兩個指標,您的 AlgorithmSpecification 將如下列範例所示:

"AlgorithmSpecification": { "TrainingImage": your-own-image-uri, "TrainingInputMode": "File", "MetricDefinitions" : [ { "Name": "train:error", "Regex": "Train_error=(.*?);" }, { "Name": "validation:error", "Regex": "Valid_error=(.*?);" } ] }

如需使用低階 SageMaker AI API 定義和執行訓練任務的詳細資訊,請參閱 CreateTrainingJob

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。