モデルトレーニングのトラブルシューティング - Amazon Lookout for Vision

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

モデルトレーニングのトラブルシューティング

マニフェストファイルまたはトレーニング画像に問題があると、モデルトレーニングが失敗する可能性があります。モデルを再トレーニングする前に、次の潜在的な問題を確認してください。

異常ラベルの色がマスク画像の異常の色と一致しない

画像セグメンテーションモデルをトレーニングする場合、マニフェストファイルの異常ラベルの色はマスク画像の色と一致する必要があります。マニフェストファイル内の画像の JSON 行には、どの色が異常ラベルに対応するかをAmazon Lookout for Visionに伝えるメタデータ (internal-color-map) が含まれています。たとえば、次の JSONscratch 行の異常ラベルの色はです#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. 色の割り当てが正しくない各画像について、その画像の JSONhex-color 行のフィールドを更新します。

  4. 更新マニフェストファイルを保存します。

  5. プロジェクトから既存のデータセットを削除します

  6. 更新されたマニフェストファイルを使用して、プロジェクトに新しいデータセットを作成します

  7. モデルをトレーニングします

または、ステップ 5 と 6 では、UpdateDatasetEntriesオペレーションを呼び出し、更新する画像の更新された JSON 行を指定することで、データセット内の個々の画像を更新できます。サンプルコードについては、「画像をさらに追加する (SDK)」を参照してください。

マスク画像が PNG 形式ではない

画像セグメンテーションモデルをトレーニングする場合、マスク画像は PNG 形式である必要があります。マニフェストファイルからデータセットを作成する場合は、参照するマスク画像が PNGanomaly-mask-ref 形式であることを確認してください。マスク画像が PNG 形式でない場合は、それらを PNG 形式に変換する必要があります。イメージファイルの拡張子をに変更するだけでは不十分です.png

Amazon Lookout for Vision SageMaker コンソールまたはGround Truth ルースジョブを使用して作成したマスク画像は PNG 形式で作成されます。これらの画像の形式を変更する必要はありません。

マニフェストファイル内の非 PNG 形式のマスクイメージを修正するには
  1. テキストエディタを使用して、データセットの作成に使用したマニフェストファイルを開きます。

  2. JSON 行 (画像) ごとに、画像が PNGanomaly-mask-ref 形式の画像を参照していることを確認してください。詳細については、「マニフェストファイルの作成」を参照してください。

  3. 更新したマニフェストファイルを保存します。

  4. プロジェクトから既存のデータセットを削除します

  5. 更新されたマニフェストファイルを使用して、プロジェクトに新しいデータセットを作成します

  6. モデルをトレーニングします

セグメンテーションまたは分類ラベルが不正確または欠落している

ラベルがないか正確でないと、トレーニングが失敗したり、パフォーマンスが低下するモデルが作成されることがあります。データセット内のすべての画像にラベルを付けることをお勧めします。すべての画像にラベルを付けていないためにモデルトレーニングが失敗したり、モデルのパフォーマンスが低下したりする場合は、画像を追加してください。

以下をチェックしてください。

  • セグメンテーションモデルを作成する場合、マスクはデータセット画像の異常を厳密にカバーする必要があります。データセットのマスクを確認するには、プロジェクトのデータセットギャラリーで画像を表示します。必要に応じて、イメージマスクを再描画してください。詳細については、「画像のセグメンテーション (コンソール)」を参照してください。

ラベルが不十分または欠落しているラベルを修正しない場合は、ラベル付けされた画像をさらに追加するか、影響を受ける画像をデータセットから削除することをお勧めします。コンソールから、UpdateDatasetEntriesまたは操作を使用してさらに追加できます。詳細については、「データセットへの画像の追加」を参照してください。

画像を削除する場合、データセットから画像を削除することはできないため、影響を受ける画像なしでデータセットを再作成する必要があります。詳細については、データセットから画像を削除するを参照してください。