模型訓練疑難排解 - Amazon Lookout for Vision

支援終止通知:在 2025 年 10 月 31 日, AWS 將停止對 Amazon Lookout for Vision 的支援。2025 年 10 月 31 日後,您將無法再存取 Lookout for Vision 主控台或 Lookout for Vision 資源。如需詳細資訊,請造訪此部落格文章

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

模型訓練疑難排解

清單檔案或訓練映像的問題可能會導致模型訓練失敗。重新訓練模型之前,請檢查下列潛在問題。

異常標籤顏色與遮罩映像中的異常顏色不相符

如果您正在訓練影像分割模型,清單檔案中異常標籤的顏色必須與遮罩影像中的顏色相符。資訊清單檔案中影像的JSON行具有中繼資料 (internal-color-map),可告知 Amazon Lookout for Vision 哪個顏色對應至異常標籤。例如,以下JSON行中scratch異常標籤的顏色為 #2ca02c

{ "source-ref": "s3://path-to-image", "anomaly-label": 1, "anomaly-label-metadata": { "class-name": "anomaly", "creation-date": "2021-10-12T14:16:45.668", "human-annotated": "yes", "job-name": "labeling-job/classification-job", "type": "groundtruth/image-classification", "confidence": 1 }, "anomaly-mask-ref": "s3://path-to-image", "anomaly-mask-ref-metadata": { "internal-color-map": { "0": { "class-name": "BACKGROUND", "hex-color": "#ffffff", "confidence": 0.0 }, "1": { "class-name": "scratch", "hex-color": "#2ca02c", "confidence": 0.0 }, "2": { "class-name": "dent", "hex-color": "#1f77b4", "confidence": 0.0 } }, "type": "groundtruth/semantic-segmentation", "human-annotated": "yes", "creation-date": "2021-11-23T20:31:57.758889", "job-name": "labeling-job/segmentation-job" } }

如果遮罩映像中的顏色與 中的值不相符hex-color,訓練會失敗,而且您需要更新資訊清單檔案。

更新資訊清單檔案中的顏色值
  1. 使用文字編輯器,開啟您用來建立資料集的資訊清單檔案。

  2. 針對每JSON行 (影像),檢查internal-color-map欄位中的顏色 (hex-color) 是否與遮罩影像中異常標籤的顏色相符。

    您可以從 anomaly-mask-ref 欄位取得遮罩映像的位置。將映像下載至您的電腦,並使用下列程式碼取得映像中的顏色。

    from PIL import Image img = Image.open('path to local copy of mask file') colors = img.convert('RGB').getcolors() #this converts the mode to RGB for color in colors: print('#%02x%02x%02x' % color[1])
  3. 對於色彩指派不正確的每個影像,請更新影像JSON行中的hex-color欄位。

  4. 儲存更新資訊清單檔案。

  5. 從專案中刪除現有資料集。

  6. 專案中建立具有更新清單檔案的新資料集。

  7. 訓練模型。

或者,在步驟 5 和 6 中,您可以呼叫 UpdateDatasetEntries操作並提供要更新之映像的更新JSON行,以更新資料集中的個別映像。如需範例程式碼,請參閱 新增更多影像 (SDK)

遮罩映像的PNG格式不正確

如果您正在訓練影像分割模型,遮罩影像必須是 PNG 格式。如果您從資訊清單檔案建立資料集,請確定您在 中參考的遮罩映像anomaly-mask-ref為 PNG 格式。如果遮罩映像不是 PNG 格式,您需要將其轉換為 PNG 格式。將映像檔案的副檔名重新命名為 是不夠的.png

您透過 Amazon Lookout for Vision 主控台或使用 SageMaker Ground Truth 任務建立的遮罩映像會以 PNG 格式建立。您不需要變更這些影像的格式。

更正資訊清單檔案中的非PNG格式遮罩映像
  1. 使用文字編輯器,開啟您用來建立資料集的資訊清單檔案。

  2. 對於每JSON行 (影像),請確定 anomaly-mask-ref參考的是PNG格式影像。如需詳細資訊,請參閱建立清單檔案

  3. 儲存更新的清單檔案。

  4. 從專案中刪除現有資料集。

  5. 使用更新的資訊清單檔案在專案中建立新的資料集。

  6. 訓練模型。

分割或分類標籤不正確或遺失

標籤遺失或不正確可能會導致訓練失敗,或建立效能不佳的模型。建議您標記資料集中的所有影像。如果您未標記所有影像和模型訓練失敗,或模型效能不佳,請新增更多影像。

請檢查以下內容:

  • 如果您要建立分割模型,遮罩必須緊密覆蓋資料集映像上的異常。若要檢查資料集中的遮罩,請檢視專案資料集圖庫中的映像。如有必要,重新繪製影像遮罩。如需詳細資訊,請參閱分割影像 (主控台)

  • 請確定已分類資料集映像中的異常映像。如果您要建立影像分割模型,請確定異常影像具有異常標籤和影像遮罩。

    請務必記住您要建立的模型類型 (分割分類)。分類模型不需要異常映像上的映像遮罩。請勿將遮罩新增至適用於分類模型的資料集映像。

    更新遺失的標籤
    1. 開啟專案的資料集圖庫。

    2. 篩選未標記的影像,以查看哪些影像沒有標籤。

    3. 執行以下任意一項:

      • 如果您要建立影像分類模型,請分類每個未標記的影像。

      • 如果您要建立影像分割模型,請分類和分割每個未標記的影像。

    4. 如果您要建立影像分割模型,請將遮罩新增至缺少遮罩的任何分類異常影像。

    5. 訓練模型。

如果您選擇不修正不良或遺失的標籤,建議您新增更多標籤影像,或從資料集中移除受影響的影像。您可以從主控台或使用 UpdateDatasetEntries操作新增更多內容。如需詳細資訊,請參閱將影像新增至資料集

如果您選擇移除映像,則必須重新建立沒有受影響映像的資料集,因為您無法從資料集刪除映像。如需詳細資訊,請參閱從資料集中移除影像