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 di classificazione delle immagini TensorFlow
Ciascuno dei modelli preaddestrati elencati in TensorFlow Hub Models può essere ottimizzato per qualsiasi set di dati con un numero qualsiasi di classi di immagini. Prestate attenzione a come formattare i dati di allenamento per inserirli nel modello Image Classification -. TensorFlow
-
Formato di input dei dati di addestramento: i dati di addestramento devono essere una directory con tante sottodirectory quante sono le classi. Ogni sottodirectory deve contenere immagini che appartengono a quella classe in formato .jpg, .jpeg o .png.
Di seguito è riportato un esempio di struttura di directory di input. Questo set di dati di esempio ha due classi: roses
e dandelion
. I file di immagine in ogni cartella di classe possono avere qualsiasi nome. La directory di input deve essere ospitata in un bucket Amazon S3 con un percorso simile al seguente: s3://
. Tieni presente che il simbolo bucket_name
/input_directory
//
finale è obbligatorio.
input_directory |--roses |--abc.jpg |--def.jpg |--dandelion |--ghi.jpg |--jkl.jpg
I modelli addestrati generano file di mappatura delle etichette che mappano i nomi delle cartelle delle classi agli indici nell'elenco delle probabilità delle classi di output. Questa mappatura è in ordine alfabetico. Ad esempio, nell'esempio precedente, la classe dente di leone è l'indice 0 e la classe rose è l'indice 1.
Dopo l'addestramento, si dispone di un modello perfezionato che è possibile addestrare ulteriormente utilizzando l'addestramento incrementale o implementarlo per l'inferenza. L' TensorFlow algoritmo Image Classification aggiunge automaticamente una firma di pre-elaborazione e post-elaborazione al modello perfezionato in modo che possa inserire le immagini come input e restituire le probabilità della classe. Il file di mappatura degli indici delle classi alle etichette delle classi viene salvato insieme ai modelli.
Addestramento incrementale
È possibile avviare l'addestramento di un nuovo modello con gli artefatti di un modello con cui ci si è allenati in precedenza. SageMaker L'addestramento incrementale consente di risparmiare tempo quando vuoi sottoporre ad addestramento un nuovo modello con dati uguali o simili.
Nota
È possibile avviare un modello di classificazione delle SageMaker immagini solo con un altro TensorFlow modello di classificazione delle immagini in cui è stato addestrato. TensorFlow SageMaker
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 un esempio di addestramento incrementale con l' TensorFlow algoritmo SageMaker Image Classification -, consultate il quaderno di esempio Introduzione a SageMaker TensorFlow - Image Classification
Inferenza con l'algoritmo di classificazione delle immagini TensorFlow
Puoi ospitare il modello ottimizzato che risulta dal tuo corso di formazione sulla classificazione delle TensorFlow immagini per l'inferenza. 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' TensorFlowalgoritmo Image Classification ridimensiona automaticamente le immagini di input.
L'esecuzione dell'inferenza produce valori di probabilità, etichette di classe per tutte le classi e l'etichetta prevista corrispondente all'indice di classe con la probabilità più alta codificata nel formato. JSON Il TensorFlow modello Image Classification - elabora una singola immagine per richiesta e restituisce una sola riga. Di seguito è riportato un esempio di risposta JSON in formato:
accept: application/json;verbose {"probabilities": [prob_0, prob_1, prob_2, ...], "labels": [label_0, label_1, label_2, ...], "predicted_label": predicted_label}
Se accept
è impostato su application/json
, il modello emette solo le probabilità. Per ulteriori informazioni sull'addestramento e l'inferenza con l' TensorFlow algoritmo Image Classification -, consultate il quaderno di esempio Introduzione a SageMaker TensorFlow - Image Classification