Introduzione alla classificazione delle immagini in Azure

Completato

È possibile eseguire la classificazione immagini tramite il servizio Visione personalizzata di Azure AI, disponibile come parte delle offerte di Servizi di Azure AI. Si tratta in genere di una soluzione più semplice e rapida rispetto alla scrittura del codice per il training del modello e che consente agli utenti con poca o nessuna competenza sull'apprendimento automatico di creare una soluzione di classificazione delle immagini efficace.

Risorse di Azure per Visione personalizzata di Azure AI

La creazione di una soluzione di classificazione immagini con Visione personalizzata di Azure AI è costituita da due attività principali. Prima di tutto è necessario usare le immagini esistenti per eseguire il training del modello, quindi occorre pubblicare il modello in modo che le applicazioni client possano usarlo per la creazione di previsioni.

Per ognuna di queste attività, è necessaria una risorsa nella sottoscrizione di Azure. È possibile usare i tipi di risorse seguenti:

  • Visione personalizzata: una risorsa dedicata per il servizio visione personalizzata, che può essere il training, una stima o entrambe le risorse.
  • Servizi di Azure AI: una risorsa generale che include Visione personalizzata di Azure AI insieme a molti altri servizi di Azure AI. È possibile usare questo tipo di risorsa per il training, la previsione o entrambi.

Separare le risorse di training e di previsione è utile se si desidera tenere traccia dell'uso delle risorse per il training del modello separatamente dalle applicazioni client tramite il modello per la previsione delle classi di immagini. Tuttavia, ciò può rendere poco chiaro lo sviluppo di una soluzione di classificazione delle immagini.

L'approccio più semplice consiste nell'usare una risorsa di Servizi di Azure AI generale per il training e la previsione. In questo modo sarà necessario occuparsi solo di un endpoint (l'indirizzo HTTP in cui è ospitato il servizio) e di una chiave (un valore segreto usato dalle applicazioni client per l'autenticazione).

Se si sceglie di creare una risorsa di Visione personalizzata, verrà richiesto di scegliere tra training, previsione o entrambe le opzioni ed è importante tenere presente che scegliendo entrambe vengono create due risorse, una per il training e una per la previsione.

È anche possibile adottare un approccio misto in cui si usa una risorsa di Visione personalizzata dedicata per il training, ma si distribuisce il modello in una risorsa di Servizi di Azure AI per la previsione. Affinché questo approccio abbia successo, è necessario creare le risorse di training e di previsione nella stessa area geografica.

Training del modello

Per eseguire il training di un modello di classificazione, è necessario caricare le immagini nella risorsa di training ed etichettarle con le etichette di classe appropriate. Quindi, è necessario eseguire il training del modello e valutarne i risultati.

È possibile eseguire queste attività nel portale di Visione personalizzata oppure, se si dispone di sufficiente esperienza nella scrittura di codice, è possibile usare uno degli SDK (Software Development Kit) specifici del linguaggio di programmazione del servizio Visione personalizzata di Azure AI.

Quando si usano le immagini per la classificazione, è importante assicurarsi che vi sia un numero sufficiente di immagini degli oggetti in questione e che tali immagini ritraggano l'oggetto da molte angolazioni diverse.

Valutazione del modello

Il training dei modelli è un processo iterativo che il servizio Visione personalizzata di Azure AI esegue ripetutamente usando alcuni dati, ma trattenendone altri per la valutazione del modello. Al termine del processo, le prestazioni del modello sottoposto a training sono indicate dalle metriche di valutazione seguenti:

  • Precisione: quale percentuale delle stime della classe effettuate dal modello sono corrette? Se, ad esempio, il modello ha previsto 10 immagini di arance, 8 delle quali ritraevano effettivamente delle arance, la precisione è dello 0,8 (80%).
  • Richiamo: Quale percentuale di stime della classe ha identificato correttamente il modello? Ad esempio, se vi sono 10 immagini di mele e il modello ne ha rilevate 7, il richiamo è dello 0,7 (70%).
  • Precisione media: una metrica generale che prende in considerazione sia la precisione che il richiamo.

Uso del modello per la previsione

Dopo aver eseguito il training del modello e aver ottenuto una valutazione soddisfacente delle prestazioni, è possibile pubblicare il modello nella risorsa di previsione. Quando si pubblica il modello, è possibile assegnargli un nome (il nome predefinito è "IterazioneX", dove la X indica il numero di volte in cui è stato eseguito il training del modello).

Per usare il modello, gli sviluppatori delle applicazioni client devono disporre delle informazioni seguenti:

  • ID progetto: ID univoco del progetto Visione personalizzata creato per eseguire il training del modello.
  • Nome modello: nome assegnato al modello durante la pubblicazione.
  • Endpoint di previsione: l'indirizzo HTTP degli endpoint della risorsa di previsione in cui è stato pubblicato il modello (non la risorsa di training).
  • Chiave per le previsioni: la chiave di autenticazione della risorsa di previsione in cui è stato pubblicato il modello (non la risorsa di training).