View a markdown version of this page

Interfaccia di input e output per l'algoritmo Object Detection TensorFlow - Amazon SageMaker AI

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Interfaccia di input e output per l'algoritmo Object Detection TensorFlow

Ciascuno dei modelli preaddestrati elencati in TensorFlow Models può essere ottimizzato per qualsiasi set di dati con un numero qualsiasi di classi di immagini. Fai attenzione a come formattare i tuoi dati di addestramento per l'input al modello Object Detection. TensorFlow

  • Formato di immissione dei dati di addestramento: i dati di addestramento devono essere una directory con una sottodirectory images e un file annotations.json.

Di seguito è riportato un esempio di struttura di directory di input. La directory di input deve essere ospitata in un bucket Amazon S3 con un percorso simile al seguente: s3://bucket_name/input_directory/. Tieni presente che il simbolo / finale è obbligatorio.

input_directory |--images |--abc.png |--def.png |--annotations.json

Il file annotations.json dovrebbe contenere informazioni sui riquadri di delimitazione e sulle relative etichette di classe sotto forma di dizionario "images" e chiavi "annotations". Il valore della chiave "images" deve essere un elenco di dizionari. Deve esserci un dizionario per ogni immagine con le seguenti informazioni: {"file_name": image_name, "height": height, "width": width, "id": image_id}. Anche il valore della chiave "annotations" deve essere un elenco di dizionari. Deve esserci un dizionario per ogni riquadro di delimitazione con le seguenti informazioni: {"image_id": image_id, "bbox": [xmin, ymin, xmax, ymax], "category_id": bbox_label}.

Dopo l’addestramento, un file di mappatura delle etichette e un modello addestrato vengono salvati nel tuo bucket Amazon S3.

Addestramento incrementale

Puoi seminare l'addestramento di un nuovo modello con gli artefatti di un modello che hai addestrato in precedenza con l'intelligenza artificiale. SageMaker L'addestramento incrementale consente di risparmiare tempo quando vuoi sottoporre ad addestramento un nuovo modello con dati uguali o simili.

Nota

È possibile eseguire il seeding solo di un modello SageMaker AI Object Detection ( TensorFlow modello) con un altro TensorFlow modello di Object Detection addestrato all' SageMaker IA.

Puoi utilizzare qualsiasi set di dati per l'addestramento incrementale, purché il set di classi rimanga lo stesso. La fase di addestramento incrementale è simile alla fase di ottimizzazione, ma invece di iniziare con un modello preaddestrato, si inizia con un modello ottimizzato esistente. Per ulteriori informazioni su come utilizzare l'addestramento incrementale con SageMaker AI Object Detection - TensorFlow, consulta il taccuino Introduzione a SageMaker TensorFlow - Object Detection.

Inferenza con l'algoritmo Object Detection TensorFlow

Potete ospitare il modello ottimizzato che risulta dall'addestramento all'inferenza con TensorFlow Object Detection. Qualsiasi immagine di input per l'inferenza deve essere in formato .jpg, jpeg o .png ed essere di tipo di contenuto application/x-image. L' TensorFlow algoritmo Object Detection - ridimensiona automaticamente le immagini di input.

L'esecuzione dell'inferenza produce riquadri di delimitazione, classi previste e punteggi di ogni previsione codificata in formato JSON. Il TensorFlow modello Object Detection - elabora una singola immagine per richiesta e genera solo una riga. Di seguito è riportato un esempio di risposta in formato 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>}

Se accept è impostato su application/json, il modello esegue solo caselle, classi e punteggi normalizzati.