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 Bildklassifizierungsalgorithmus TensorFlow
Jedes der in TensorFlow Hub-Modelle aufgelisteten vortrainierten Modelle kann an jeden Datensatz mit einer beliebigen Anzahl von Bildklassen angepasst werden. Achten Sie darauf, wie Sie Ihre Trainingsdaten für die Eingabe in das Bildklassifizierungsmodell formatieren. TensorFlow
-
Eingabeformat für Trainingsdaten: Ihre Trainingsdaten sollten ein Verzeichnis mit so vielen Unterverzeichnissen wie die Anzahl der Klassen sein. Jedes Unterverzeichnis sollte Bilder, die zu dieser Klasse gehören, im Format .jpg, .jpeg oder .png enthalten.
Es folgt ein Beispiel für eine Eingabeverzeichnisstruktur. Dieser Beispieldatensatz hat zwei Klassen: roses und dandelion. Die Bilddateien in jedem Klassenordner können einen beliebigen Namen haben. 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 |--roses |--abc.jpg |--def.jpg |--dandelion |--ghi.jpg |--jkl.jpg
Trainierte Modelle geben Beschriftungs-Mapping-Dateien aus, die Klassenordnernamen den Indizes in der Liste der Ausgabeklassenwahrscheinlichkeiten zuordnen. Diese Zuordnung ist in alphabetischer Reihenfolge. Im vorherigen Beispiel hat die Löwenzahnklasse beispielsweise den Index 0 und die Rosenklasse den Index 1.
Nach dem Training verfügen Sie über ein fein abgestimmtes Modell, das Sie mithilfe von inkrementellem Training weiter trainieren oder zu Inferenzzwecken einsetzen können. Der TensorFlow Bildklassifizierungsalgorithmus fügt dem fein abgestimmten Modell automatisch eine Signatur vor und nach der Verarbeitung hinzu, sodass es Bilder als Eingabe aufnehmen und Klassenwahrscheinlichkeiten zurückgeben kann. Die Datei, die Klassenindizes Klassenbezeichnungen zuordnet, wird zusammen mit den Modellen gespeichert.
Inkrementelles Training
Sie können das Training eines neuen Modells mit Artefakten aus einem Modell beginnen, das Sie zuvor mit KI trainiert haben. SageMaker 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 SageMaker TensorFlow Bildklassifizierungsmodell nur mit einem anderen, mit SageMaker KI trainierten TensorFlow Bildklassifizierungsmodell kombinieren.
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. Ein Beispiel für inkrementelles Training mit dem SageMaker TensorFlow KI-Algorithmus zur Bildklassifizierung finden Sie im Beispielnotizbuch
Inferenz mit dem Algorithmus zur Bildklassifizierung TensorFlow
Sie können das fein abgestimmte Modell, das sich aus Ihrem TensorFlow Bildklassifizierungstraining 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 TensorFlow Bildklassifizierungsalgorithmus passt die Größe der Eingabebilder automatisch an.
Das Ausführen von Inferenzen führt zu Wahrscheinlichkeitswerten, Klassenbezeichnungen für alle Klassen und dem vorhergesagten Label, das dem Klassenindex mit der höchsten Wahrscheinlichkeit entspricht, kodiert im JSON-Format. Das TensorFlow Bildklassifizierungsmodell 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 {"probabilities": [prob_0, prob_1, prob_2, ...], "labels": [label_0, label_1, label_2, ...], "predicted_label": predicted_label}
Wenn accept auf application/json gesetzt ist, gibt das Modell nur Wahrscheinlichkeiten aus. Weitere Informationen zum Training und zur Inferenz mit dem TensorFlow Bildklassifizierungsalgorithmus finden Sie im Beispielnotizbuch