Etichetta le immagini utilizzando un modello AutoML Vision Edge

Questa guida rapida illustra il processo di:

  • Copia di un insieme di immagini in Google Cloud Storage.
  • Creazione di un file CSV che elenca le immagini e le relative etichette.
  • Utilizzando AutoML Vision per creare il tuo set di dati, addestra un modello modello AutoML Vision Edge (classificazione di immagini o rilevamento di oggetti) e per fare una previsione.
  • Esportazione e deployment del modello AutoML Vision Edge per uno dei numerosi tipi di dispositivi periferici, come cellulari, dispositivi basati su ARM Coral Edge TPU.

Prima di iniziare

Configura il progetto

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Install the Google Cloud CLI.
  3. To initialize the gcloud CLI, run the following command:

    gcloud init
  4. Create or select a Google Cloud project.

    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  5. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  6. Abilita le API AutoML and Cloud Storage.

    gcloud services enable storage-component.googleapis.com automl.googleapis.com storage-api.googleapis.com
  7. Install the Google Cloud CLI.
  8. To initialize the gcloud CLI, run the following command:

    gcloud init
  9. Create or select a Google Cloud project.

    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  10. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  11. Abilita le API AutoML and Cloud Storage.

    gcloud services enable storage-component.googleapis.com automl.googleapis.com storage-api.googleapis.com
  12. Imposta la variabile di ambiente PROJECT_ID sul tuo ID progetto.
    export PROJECT_ID=PROJECT_ID
    Le chiamate API e i nomi delle risorse AutoML includono l'ID progetto al loro interno. La variabile di ambiente PROJECT_ID consente di specificare facilmente l'ID.

Crea un bucket Cloud Storage

Utilizza Cloud Shell, una riga di comando Linux basata su browser e connessa Progetto della console Google Cloud, per creare il tuo bucket Cloud Storage:

  1. Apri Cloud Shell.

  2. Creare un bucket Google Cloud Storage. Il nome del bucket deve essere nel formato: project-id-vcm. Il comando seguente crea un bucket di archiviazione nella regione us-central1 denominata project-id-vcm. Per un elenco completo regioni disponibili, consulta la pagina Località dei bucket.

    gcloud storage buckets create gs://${PROJECT_ID}-vcm/ --project=${PROJECT_ID} --location=us-central1

  3. Imposta la variabile BUCKET.

    export BUCKET=${PROJECT_ID}-vcm

Copia le immagini di esempio nel tuo bucket

Quindi, copia il set di dati dei fiori utilizzato questo post del blog su Tensorflow. Le immagini vengono archiviate in un bucket Cloud Storage pubblico, quindi puoi copiarle nel tuo bucket direttamente da qui.

  1. Nella sessione di Cloud Shell inserisci:

    gcloud storage cp gs://cloud-samples-data/ai-platform/flowers/ gs://${BUCKET}/img/ --recursive
    

    Il completamento della copia del file richiede circa 20 minuti.

Crea il file CSV

Il set di dati di esempio contiene un file CSV con tutte le posizioni delle immagini e le etichette di ogni immagine. Lo utilizzerai per creare il tuo file CSV:

  1. Aggiorna il file CSV in modo che punti ai file nel tuo bucket:

    gcloud storage cat gs://${BUCKET}/img/flowers/all_data.csv | sed "s:cloud-ml-data/img/flower_photos/:${BUCKET}/img/flowers/:" > all_data.csv
    
  2. Copia il file CSV nel tuo bucket:

    gcloud storage cp all_data.csv gs://${BUCKET}/csv/
    

Crea il tuo set di dati

Visita la UI di AutoML Vision per iniziare il processo di creazione il set di dati e l'addestramento del modello.

Quando richiesto, assicurati di selezionare il progetto che hai utilizzato per Cloud Cloud Storage.

  1. Nella pagina di AutoML Vision, fai clic su Nuovo set di dati:

    Pulsante Nuovo set di dati nella console

  2. Specifica un nome per questo set di dati (facoltativo), seleziona l'obiettivo del modello e poi fai clic su Crea set di dati per la procedura di creazione del set di dati.

    Nuovo campo nome set di dati

  3. Nella schermata Seleziona i file da importare, scegli il Seleziona un file CSV su Cloud Storage. Specifica l'URI Cloud Storage di il file CSV. Per questa guida rapida, il file CSV si trova nel seguente percorso:

    • gs://${PROJECT_ID}-vcm/csv/all_data.csv

    Sostituisci PROJECT_ID con l'ID progetto specifico.

    Seleziona la finestra di importazione file

  4. Fai clic su Continua per avviare l'importazione dell'immagine. Il processo di importazione richiede per alcuni minuti. Al termine, si apre la pagina successiva, dettagli su tutte le immagini identificate per il tuo set di dati, sia etichettate che immagini senza etichetta.

    Immagini elencate al termine dell'importazione

Addestra il modello

  1. Una volta creato ed elaborato il set di dati, seleziona la scheda Addestra per per avviare l'addestramento del modello.

    seleziona scheda treno

  2. Seleziona Inizia addestramento per continuare. Si aprirà la pagina Addestra nuovo modello con le opzioni di addestramento.

  3. Nella sezione Definisci il tuo modello della finestra di addestramento del nuovo modello, modifica il nome del modello (facoltativo) e seleziona Modello Edge opzione di selezione. Seleziona Continua per passare alla sezione seguente.

    definisci la sezione del modello per l'addestramento

  4. Nella sezione Ottimizza modello per, accetta il Miglior compromesso e seleziona Continua.

  5. Nella sezione Imposta un budget per l'ora nodo, accetta il budget per il nodo suggerito (4 ore nodo).

    Addestra modello Edge

  6. Seleziona Inizia addestramento per avviare l'addestramento del modello.

    L'operazione richiede circa un'ora L'addestramento potrebbe interrompersi prima rispetto all'ora nodo che hai selezionato. Il servizio ti invierà un'email al termine della formazione vengono completate o se si verificano errori.

Esegui il deployment del modello

Prima di poter esportare il modello, devi eseguirne il deployment per l'uso.

  1. Per eseguire il deployment del modello, seleziona lo strumento Testa e usa. Nella scheda fai clic sul Esegui il deployment del modello accanto al nome del modello.

  2. Nella finestra che segue, specifica 1 nodo su cui eseguire il deployment e seleziona Esegui il deployment. per iniziare il processo di deployment del modello.

    scegli le ore nodo in cui eseguire il deployment

Al termine del deployment del modello, riceverai una notifica.

Esporta il modello

L'ultimo passaggio per utilizzare un modello AutoML Vision Edge è esportare (ottimizzare e scaricare) ed eseguire il deployment (usare) del modello.

Esistono diversi modi per esportare ed eseguire il deployment dei modelli da utilizzare per la previsione sui dispositivi periferici.

In questa guida rapida utilizzerai Tensorflow Lite (TF Lite) come esempio. Entrambi i modelli TF Lite sono facili da usare e hanno una vasta gamma di casi d'uso.

  1. Nella sezione Utilizza il tuo modello della scheda Testa e usa, seleziona TF Lite.

    Esporta modello TF Lite

  2. Nella finestra Esporta pacchetto TF Lite visualizzata, specifica un Località del bucket Cloud Storage in cui esportare un pacchetto TF Lite, quindi seleziona Esporta. In genere il processo di esportazione richiede diversi minuti.

    Esporta finestra laterale del modello TF Lite

Nel percorso di destinazione di Google Cloud Storage troverai una cartella denominato con timestamp e formato del modello, in cui puoi trovare i seguenti file:

  • un file tflite (model.tflite),
  • un file di dizionario (dict.txt)
  • un file di metadati (tflite_metadata.json)

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi per le risorse utilizzate in questa pagina, elimina il progetto Google Cloud Google Cloud.

Passaggi successivi

Con questi file, puoi seguire i tutorial per eseguire il deployment Dispositivi Android, Dispositivi iOS, Raspberry Pi 3 oppure Web.

Altre opzioni di utilizzo del modello

  • Puoi esportare il modello come supportato da CoreML (iOS/macOS) un modello di machine learning. Dopo l'addestramento, puoi esportare il modello selezionando la colonna CoreML nella sezione Testa e usa e segui le Tutorial CoreML.
  • Puoi esportare il modello per l'esecuzione su Coral Edge TPU. Dopo l'addestramento, esporta il modello selezionando l'opzione Coral nella sezione Testa e usa. Tuttavia, a causa dell'attuale incompatibilità con il nostro modello di rilevamento degli oggetti, consigliamo di esportare solo i modelli di classificazione delle immagini per Edge TPU (per addestrare un modello di rilevamento degli oggetti per Edge TPU, segui uno di questi tutorial di Google Colab). Una volta esportato il modello, segui la documentazione ufficiale di Coral su come: eseguire un'inferenza su Edge TPU.
  • Puoi esportare il modello come SavedModel di TensorFlow e utilizzarlo con un container Docker. Dopo l'addestramento, puoi esportare il modello selezionando l'opzione Contenitore nella sezione Testa e usa e segui le Tutorial sui container Edge su come esportare in un container.
  • Puoi esportare il modello per utilizzarlo in un browser o in Node.js come nel modello Tensorflow.js. Dopo l'addestramento, puoi esportare il modello selezionando l'opzione Tensorflow.js nella sezione Testa e usa e segui le Tutorial su TensorFlow.js per Edge.

Esegui la pulizia

Se non hai più bisogno di un modello o di un set di dati personalizzato, puoi eliminarli.

Per evitare addebiti inutili per Google Cloud Platform, utilizza il metodo Console Google Cloud per eliminare il progetto se non ti serve.

Annulla il deployment del modello

Durante il deployment del modello vengono addebitati dei costi.

  1. Seleziona il pulsante Testa e Usa Tab appena sotto la barra del titolo.
  2. Seleziona Rimuovi deployment dal banner sotto il nome del modello per aprire la finestra con le opzioni di annullamento del deployment.

    menu popup di annullamento del deployment

  3. Seleziona Rimuovi deployment per annullare il deployment del modello.

    deployment del modello

  4. Riceverai un'email al termine dell'annullamento del deployment del modello.

Elimina il progetto (facoltativo)

Per evitare addebiti inutili per Google Cloud Platform, utilizza il metodo Console Google Cloud per eliminare il progetto se non ti serve.