翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
オブジェクト検出 - TensorFlow アルゴリズムの入出力インターフェイス
TensorFlow Models にリストされている事前トレーニング済みモデルはそれぞれ、任意の数のイメージクラスを持つ任意のデータセットに微調整できます。オブジェクト検出 TensorFlow モデルへの入力用にトレーニングデータをフォーマットする方法に注意してください。
-
トレーニングデータ入力形式: トレーニングデータは、
images
サブディレクトリとannotations.json
ファイルを含むディレクトリでなければなりません。
入力のディレクトリ構造の例を次に示します。入力ディレクトリは、次のようなパスの Amazon S3 バケットでホストされている必要があります。s3://
末尾の bucket_name
/input_directory
//
は必須であることに注意してください。
input_directory |--images |--abc.png |--def.png |--annotations.json
annotations.json
ファイルには、境界ボックスとそのクラスラベルに関する情報がディクショナリと "images"
および "annotations"
キーの形式で含まれている必要があります。"images"
キーの値はディクショナリのリストである必要があります。画像ごとに以下の情報を含むディクショナリが 1 つある必要があります。{"file_name":
image_name
,
"height": height
, "width":
width
, "id":
image_id
}"annotations"
キーの値もディクショナリのリストである必要があります。境界ボックスごとに、以下の情報を含む辞書が 1 つある必要があります。{"image_id":
image_id
, "bbox": [xmin,
ymin, xmax, ymax]
, "category_id":
bbox_label
}
トレーニング後、ラベルマッピングファイルとトレーニング済みモデルが Amazon S3 バケットに保存されます。
段階的トレーニング
新しいモデルのトレーニングには、以前に でトレーニングしたモデルのアーティファクトをシードできます SageMaker。段階的トレーニングでは、同じモデルまたは類似のデータを使用して新しいモデルをトレーニングする際のトレーニング時間が短縮されます。
注記
SageMaker オブジェクト検出 TensorFlow モデルをシードできるのは、 でトレーニングされた別のオブジェクト検出 TensorFlow モデルのみです SageMaker。
一連のクラスが同じままである限り、任意のデータセットを段階的トレーニングに使用できます。段階的トレーニングのステップは微調整のステップと同様ですが、事前トレーニング済みモデルから始める代わりに、既存の微調整済みモデルから始めます。 SageMaker オブジェクト検出 - でインクリメンタルトレーニングを使用する方法の詳細については TensorFlow、 SageMaker TensorFlow 「オブジェクト検出ノートブックの概要
オブジェクト検出 - TensorFlow アルゴリズムによる推論
推論のための TensorFlow オブジェクト検出トレーニングから生じる微調整されたモデルをホストできます。推論用の入力画像はすべて .jpg
、jpeg
、または .png
形式で、コンテンツタイプ application/x-image
である必要があります。オブジェクト検出 - TensorFlow アルゴリズムは、入力イメージを自動的にサイズ変更します。
推論を実行すると、境界ボックス、予測クラス、および JSON 形式でエンコードされた各予測のスコアになります。オブジェクト検出 - TensorFlow モデルは、リクエストごとに 1 つのイメージを処理し、1 行のみを出力します。JSON 形式レスポンスの例を次に示します。
accept: application/json;verbose {"normalized_boxes":[[
xmin1
,xmax1
,ymin1
,ymax1
],....], "classes":[classidx1
,class_idx2
,...], "scores":[score_1
,score_2
,...], "labels": [label1
,label2
, ...], "tensorflow_model_output":<original output of the model>
}
accept
が application/json
に設定されている場合、モデルは正規化されたボックス、クラス、スコアのみを出力します。