如何排解 Amazon SageMaker Ground Truth 標記錯誤?

上次更新日期:2022 年 10 月 24 日

我想排解 Amazon SageMaker Ground Truth 標記錯誤。

-或-

我的 SageMaker 工作者處於空閒狀態。

-或-

需要很長時間才能為我的 SageMaker 工作者顯示任務。

解決方案

SageMaker Ground Truth 首先向您的 SageMaker 工作者傳送一批 10 個任務以進行註解。此批任務用於檢查並確保已正確設定標記作業。然後,Ground Truth 會根據 MaxConcurrentTaskCount 值向工作者傳送更大批次的任務以進行註解。

MaxConcurrentTaskCount 定義了人類工作者可以同時標記的資料物件的最大數量。如果您使用主控台,此參數會設定為 1,000。如果您使用 CreateLabelingJob,則可以將此參數設定為介於 1 到 1,000 (含) 之間的任何整數。

Ground Truth 收到標籤後,它會使用合併 AWS Lambda 函數來處理標籤。使用此函數時,最終註解會寫入清單檔案或 Amazon Simple Notification Service (Amazon SNS) 輸出。接著,基於輸入資訊清單檔案或 Amazon SNS 主題中的 MaxConcurrentTaskCount 值,Ground Truth 迴圈讀取另一批任務。

排解任務延遲和空閒工作者問題

  • 請確定將 MaxConcurrentTaskCount 值設定為可讓工作者在指定的 TaskAvailabilityLifetimeInSeconds 時間內完成整個批次的大小。此參數的最大值為 1000。
  • 確定將 NumberOfHumanWorkersPerDataObject 設定為適合您的使用案例的值。例如,如果每個待標記物件的工作者數量設定為 3,則每個物件都需要由三個工作者標記。如果其中兩個工作者完成目前的批次,則在第三個工作者完成此批次之前,才會指派下一個批次。如果私人工作者注意到作業從入口網站中消失,則該工作者可能已完成一個批次,並且在等待新批次可供處理期間處於閒置狀態。
  • 請確定將 TaskAvailabilityLifetimeInSeconds 設定為符合您的使用案例的值。此值代表任務提供給工作的總時間。您可以為此參數設定的最大值為 864,000 秒 (10 天)。最佳實務是將輸入資料集分割成多個作業,並在下列情況下將它們指向相同的工作團隊:
    • 標記作業中的物件數量很高。
    • 您的作業失敗,因為等待時間超出 TaskAvailabilityLifetimeInSeconds 值。
  • 請確定將 TaskTimeLimitInSeconds 設定為符合您的使用案例的值。如果您需要控制工作者完成任務所花費的時間,以確保任務已得到註解並指派下一個批次,請考慮為此時間限制設定適當的值。

排解標記錯誤

檢查許可

確保您擁有建立標記作業、存取輸入資料以及存取 Amazon Simple Storage Service (Amazon S3) 儲存貯體以取得輸出資料的正確許可。如需詳細資訊,請參閱步驟 1:開始前的準備工作

請確定下列事項:

  • Amazon S3 儲存貯體與 Ground Truth 標記作業位於相同的區域。
  • 儲存貯體已連接 CORS 政策。如需詳細資訊,請參閱 CORS 許可要求

檢查輸出清單檔案

檢查您在 S3 儲存貯體中指定的輸出清單檔案以儲存輸出檔案。在此輸出資料集中,您可以檢視可能導致標記作業失敗之任何失敗註解的中繼資料。

範例:

{"source-ref":"s3://sagemaker-output-labeling-bucket-example/example.jpeg","example-metadata":{"retry-count":1,"failure-reason":"ClientError: Annotation tasks expired.  Probable Reasons are 1) TaskAvailabilityLifetimeInSeconds parameter is too small.  2) Reward is too low for workers to work on the task.  3) If you use a custom html template, your template may be broken.  4) Data (image/video/text) sent for annotation is broken or too big, preventing completion.  5) All workers declined the tasks.","human-annotated":"true"}}

工作者可以由於指示不清楚、輸入資料已損壞 (未正確顯示) 或有關任務的其他問題而拒絕任務。如果所有工作者都拒絕,則物件會標示為已過期,而不會傳送給任何其他工作者。

您可以使用 Amazon CloudWatch 事件監控工作者是否拒絕、提交或傳回任務。如需詳細資訊,請參閱監控標記作業狀態

檢查輸入清單檔案

請確定輸入清單檔案符合所有列出的 JSON 物件要求。如需詳細資訊,請參閱使用輸入清單檔案


此文章是否有幫助?


您是否需要帳單或技術支援?