Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Eingabe- und Ausgabeschnittstelle für den Object Detection – TensorFlow Algorithmus
Jedes der in TensorFlow-Modellen aufgeführten vortrainierten Modelle kann auf jeden Datensatz mit einer beliebigen Anzahl von Bildklassen abgestimmt werden. Achten Sie darauf, wie Sie Ihre Trainingsdaten für die Eingabe in das Object Detection – TensorFlow-Modell formatieren.
-
Eingabeformat für Trainingsdaten: Ihre Trainingsdaten sollten ein Verzeichnis mit einem
imagesUnterverzeichnis und einerannotations.jsonDatei sein.
Es folgt ein Beispiel für eine Eingabeverzeichnisstruktur. Das Eingabeverzeichnis sollte in einem Amazon-S3-Bucket mit einem Pfad gehostet werden, der dem folgenden ähnelt: s3://. Beachten Sie, dass das Trailing bucket_name/input_directory// erforderlich ist.
input_directory |--images |--abc.png |--def.png |--annotations.json
Die annotations.json Datei sollte Informationen für Bounding Boxes und ihre Klassenbezeichnungen in Form eines Wörterbuchs "images" und "annotations" Schlüsseln enthalten. Der Wert für den "images" Schlüssel sollte eine Liste von Wörterbüchern sein. Für jedes Bild sollte es ein Wörterbuch mit den folgenden Informationen geben:. {"file_name": Der Wert für den image_name,
"height": height, "width":
width, "id":
image_id}"annotations" Schlüssel sollte auch eine Liste von Wörterbüchern sein. Für jedes Begrenzungsfeld sollte es ein Wörterbuch mit den folgenden Informationen geben: {"image_id": .image_id, "bbox": [xmin,
ymin, xmax, ymax], "category_id":
bbox_label}
Nach dem Training werden eine Beschriftung-Mapping-Datei und ein trainiertes Modell in Ihrem Amazon-S3-Bucket gespeichert.
Inkrementelles Training
Sie können das Training eines neuen Modells mit Artefakten aus einem Modell, das Sie zuvor mit SageMaker AI trainiert haben, vornehmen. Dieses inkrementelle Training verkürzt die Trainingsdauer, wenn Sie ein neues Modell mit denselben oder ähnlichen Daten trainieren möchten.
Anmerkung
Sie können ein Modell der Objekterkennung – TensorFlow von SageMaker AI nur mit einem anderen Modell der Objekterkennung – TensorFlow seeden, das in SageMaker AI trainiert wurde.
Sie können jeden Datensatz für das inkrementelle Training verwenden, solange der Klassensatz derselbe bleibt. Der inkrementelle Trainingsschritt ähnelt dem Feinabstimmungsschritt, aber anstatt mit einem vortrainierten Modell zu beginnen, beginnen Sie mit einem vorhandenen fein abgestimmten Modell. Weitere Informationen zur Verwendung von inkrementellem Training mit SageMaker AI Objekterkennung – TensorFlow finden Sie unter Einführung in SageMaker AI TensorFlow – Objekterkennung
Inferenz mit dem Objekterkennung – TensorFlow-Algorithmus
Sie können das fein abgestimmte Modell, das sich aus Ihrem TensorFlow-Objekterkennungstraining ergibt, als Inferenz hosten. Jedes Eingabebild für die Inferenz muss sich in .jpg, .jpeg, oder .png Format befinden und vom Inhaltstyp application/x-image sein. Der Object Detection – TensorFlow-Algorithmus ändert die Größe der Eingabebilder automatisch.
Das Ausführen von Inferenzen führt zu Begrenzungsfeldern, vorhergesagten Klassen und den Ergebnissen jeder Vorhersage, die im JSON-Format codiert sind. Das Object Detection – TensorFlow-Modell verarbeitet ein einzelnes Bild pro Anfrage und gibt nur eine Zeile aus. Nachfolgend finden Sie ein Beispiel für eine Antwort im JSON Lines-Format:
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>}
Wenn accept auf gesetzt application/json ist, gibt das Modell nur normalisierte Boxen, Klassen und Ergebnisse aus.