Puoi creare un modello personalizzato addestrandolo con un modello set di dati. L'API AutoML utilizza gli elementi del set di dati per addestrare il modello, testarlo e valutare la sua delle prestazioni. Recensisci i risultati, regolare il set di dati di addestramento in base alle esigenze e addestrare un nuovo modello utilizzando un set di dati migliorato.
L'addestramento di un modello può richiedere diverse ore. L'API AutoML consente di controllare lo stato di addestramento.
Poiché AutoML Vision crea un nuovo modello a ogni avvio dell'addestramento, può includere numerosi modelli. Puoi ottenere un dei modelli in uso il tuo progetto e puoi elimina modelli non ti serve più. In alternativa, puoi utilizzare l'interfaccia utente di Cloud AutoML Vision per elencare ed eliminare i modelli creati tramite l'API AutoML che non ti serve più.
I modelli si basano su ricerca all'avanguardia di Google. Il modello sarà disponibile come pacchetto TF Lite. Per ulteriori informazioni informazioni su come integrare un modello TensorFlow Lite utilizzando Fai riferimento all'SDK TensorFlow Lite ai seguenti link per iOS e Android.
Addestramento dei modelli Edge
Quando hai un set di dati con un solido set di elementi di addestramento etichettati, per creare e addestrare un modello Edge personalizzato.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento di AutoML Vision per .NET.
PHP Segui le Istruzioni per la configurazione dei file PHP Nella pagina delle librerie client e poi visita Documentazione di riferimento di AutoML Vision per PHP.
Rubino: Segui le Istruzioni per la configurazione di Ruby Nella pagina delle librerie client e poi visita Documentazione di riferimento di AutoML Vision per Ruby.
Distribuzione con TensorFlow e modelli TF Lite
Durante l'addestramento, puoi scegliere il tipo di modello Edge desiderato, a seconda al tuo caso d'uso specifico:
- bassa latenza (
mobile-low-latency-1
) - utilizzo generico (
mobile-versatile-1
) - qualità di previsione superiore (
mobile-high-accuracy-1
)
UI web
-
Apri il Vision Dashboard.
La pagina Set di dati mostra i set di dati disponibili per il progetto corrente.
- Seleziona il set di dati da utilizzare per addestrare il modello personalizzato.
-
Quando il set di dati è pronto, seleziona la scheda Addestra e Addestra nuovo modello .
Si aprirà la finestra laterale "Addestra nuovo modello" con le opzioni di addestramento.
- Dalla sezione di addestramento Definisci il tuo modello, modifica il nome del modello. (o utilizza il valore predefinito) e seleziona radio_button_checked Perimetrale come tipo di modello. Dopo aver scelto di addestrare un modello Edge, seleziona Continua.
-
Nella sezione Ottimizza il modello per, seleziona il modello che preferisci criterio di ottimizzazione: radio_button_checked Accuratezza maggiore, Miglior compromesso o Previsione più rapida. Dopo aver selezionato l'ottimizzazione seleziona Continua.
-
Nella sezione Imposta un budget per l'ora nodo, utilizza il nodo consigliato ora o specifica un altro valore.
Per impostazione predefinita, 24 ore nodo dovrebbero essere sufficienti per la maggior parte dei set di dati per l'addestramento del modello. Questo valore consigliato è una stima per rendere il modello completamente convergente. Tuttavia, puoi scegliere un altro importo. Il numero minimo di ore nodo per la classificazione delle immagini è 8. Per rilevamento oggetti questo importo minimo è 20.
-
Seleziona Inizia addestramento per avviare l'addestramento del modello.
L'addestramento di un modello può richiedere diverse ore. Dopo l'addestramento del modello, Riceverai un messaggio all'indirizzo email che hai utilizzato per la tua Google Cloud Platform progetto.
REST
Durante l'addestramento dei modelli Edge, puoi specificare tre valori distinti in modelType
.
a seconda delle esigenze del tuo modello:
mobile-low-latency-1
per una bassa latenzamobile-versatile-1
per uso genericomobile-high-accuracy-1
per una qualità di previsione superiore
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- project-id: l'ID del tuo progetto Google Cloud.
- display-name: un nome visualizzato per la stringa di tua scelta.
- dataset-id: l'ID del set di dati. L'ID è l'ultimo elemento del nome
del set di dati. Ad esempio:
- nome set di dati:
projects/project-id/locations/location-id/datasets/3104518874390609379
- ID set di dati:
3104518874390609379
- nome set di dati:
Metodo HTTP e URL:
POST https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models
Corpo JSON della richiesta:
{ "displayName": "DISPLAY_NAME", "datasetId": "DATASET_ID", "imageClassificationModelMetadata": { "trainBudget": "1", "modelType": "mobile-low-latency-1" } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models" | Select-Object -Expand Content
Dovresti vedere un output simile al seguente. Puoi utilizzare l'ID operazione
(in questo caso ICN2106290444865378475
) per recuperare lo stato dell'attività. Per un
Ad esempio, vedi Operazioni a lunga esecuzione.
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/ICN2106290444865378475", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-10-30T20:06:08.253243Z", "updateTime": "2019-10-30T20:06:08.253243Z", "createModelDetails": {} } }
Go
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
Elenca stato operazioni
Usa i seguenti esempi di codice per elencare le operazioni del progetto e filtrare i risultati.
REST
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- project-id: l'ID del tuo progetto Google Cloud.
Metodo HTTP e URL:
GET https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations" | Select-Object -Expand Content
L'output visualizzato varia a seconda delle operazioni richieste.
Puoi anche filtrare le operazioni restituite utilizzando parametri di ricerca selezionati
(operationId
, done
e worksOn
). Ad esempio:
per restituire un elenco delle operazioni terminate, modifica l'URL:
GET https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations?filter="done=true"
Go
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella API e Riferimento > Librerie client.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella API e Riferimento > Librerie client.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella API e Riferimento > Librerie client.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella API e Riferimento > Librerie client.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento per il rilevamento di oggetti di AutoML Vision per .NET.
PHP Segui le Istruzioni per la configurazione dei file PHP Nella pagina delle librerie client e poi visita Documentazione di riferimento per il rilevamento di oggetti di AutoML Vision per PHP.
Rubino: Segui le Istruzioni per la configurazione di Ruby Nella pagina delle librerie client e poi visita Documentazione di riferimento per il rilevamento di oggetti di AutoML Vision per Ruby.
Utilizzo delle operazioni a lunga esecuzione
REST
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- project-id: l'ID del tuo progetto Google Cloud.
- operation-id: l'ID dell'operazione. L'ID è l'ultimo elemento del nome
dell'operazione. Ad esempio:
- nome operazione:
projects/project-id/locations/location-id/operations/IOD5281059901324392598
- ID operazione:
IOD5281059901324392598
- nome operazione:
Metodo HTTP e URL:
GET https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID" | Select-Object -Expand Content
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2018-10-29T15:56:29.176485Z", "updateTime": "2018-10-29T16:10:41.326614Z", "importDataDetails": {} }, "done": true, "response": { "@type": "type.googleapis.com/google.protobuf.Empty" } }
Dovresti vedere un output simile al seguente per un'operazione di creazione del modello completata:
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-07-22T18:35:06.881193Z", "updateTime": "2019-07-22T19:58:44.972235Z", "createModelDetails": {} }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.automl.v1.Model", "name": "projects/PROJECT_ID/locations/us-central1/models/MODEL_ID" } }
Go
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella API e Riferimento > Librerie client.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella API e Riferimento > Librerie client.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella API e Riferimento > Librerie client.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella API e Riferimento > Librerie client.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento di AutoML Vision per .NET.
PHP Segui le Istruzioni per la configurazione dei file PHP Nella pagina delle librerie client e poi visita Documentazione di riferimento di AutoML Vision per PHP.
Rubino: Segui le Istruzioni per la configurazione di Ruby Nella pagina delle librerie client e poi visita Documentazione di riferimento di AutoML Vision per Ruby.
Annullamento di una transazione
Puoi annullare un'attività di importazione o addestramento utilizzando l'ID operazione.
REST
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- project-id: l'ID del tuo progetto Google Cloud.
- operation-id: l'ID dell'operazione. L'ID è l'ultimo elemento del nome
dell'operazione. Ad esempio:
- nome operazione:
projects/project-id/locations/location-id/operations/IOD5281059901324392598
- ID operazione:
IOD5281059901324392598
- nome operazione:
Metodo HTTP e URL:
POST https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID:cancel
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID:cancel"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID:cancel" | Select-Object -Expand Content
{}
Recupero delle informazioni su un modello
Utilizza i seguenti esempi di codice per ottenere informazioni su un modello addestrato specifico. Puoi utilizzare le informazioni restituite da questa richiesta per modificare la modalità o inviare una richiesta di previsione.
REST
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- project-id: l'ID del tuo progetto Google Cloud.
- model-id: l'ID del modello, dalla
quando hai creato il modello. L'ID è l'ultimo elemento del nome del modello.
Ad esempio:
- nome modello:
projects/project-id/locations/location-id/models/IOD4412217016962778756
- ID modello:
IOD4412217016962778756
- nome modello:
Metodo HTTP e URL:
GET https://automl.googleapis.com/v1/projects/project-id/locations/us-central1/models/model-id
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://automl.googleapis.com/v1/projects/project-id/locations/us-central1/models/model-id"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://automl.googleapis.com/v1/projects/project-id/locations/us-central1/models/model-id" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_ID/locations/us-central1/models/MODEL_ID", "displayName": "DISPLAY_NAME", "datasetId": "DATASET_ID", "createTime": "2019-10-30T20:06:08.253243Z", "deploymentState": "UNDEPLOYED", "updateTime": "2019-10-30T20:54:50.472328Z", "imageClassificationModelMetadata": { "trainBudget": "1", "modelType": "mobile-low-latency-1", "nodeQps": 3.2 } }
Go
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento per il rilevamento di oggetti di AutoML Vision per .NET.
PHP Segui le Istruzioni per la configurazione dei file PHP Nella pagina delle librerie client e poi visita Documentazione di riferimento per il rilevamento di oggetti di AutoML Vision per PHP.
Rubino: Segui le Istruzioni per la configurazione di Ruby Nella pagina delle librerie client e poi visita Documentazione di riferimento per il rilevamento di oggetti di AutoML Vision per Ruby.
Addestramento ripristinabile
Ora puoi mettere in pausa e riprendere l'addestramento del modello personalizzato per set di dati di grandi dimensioni (con oltre
mille immagini). Mettere in pausa l'addestramento del modello non è un'azione manuale che prevede un pulsante di pausa.
L'utente, invece, imposta il budget ora nodo su un intervallo di tempo specificato, ad esempio due ore.
Una volta raggiunto il tempo, l'addestramento si interrompe automaticamente indipendentemente dallo stato del modello.
L'addestramento ripristinabile è disponibile con le seguenti restrizioni:
- Limite di tempo del modello di base. Puoi riprendere l'addestramento. solo su modelli addestrati negli ultimi 14 giorni; modelli di base creati più di 14 giorni prima della tua richiesta non sono idonei per ripristinabile.
- Nessuna modifica delle etichette: l'addestramento ripristinabile non riesce se modifichi le etichette nella del modello di base.
- Nessuna garanzia di prestazioni migliori: l'utilizzo dell'addestramento ripristinabile su un modello non garantire prestazioni del modello migliori.
UI web
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
-
Apri il AutoML Vision UI.
La pagina Set di dati mostra i set di dati disponibili per il progetto corrente.
Seleziona il set di dati da utilizzare per addestrare il modello personalizzato.
Il nome visualizzato del set di dati selezionato appare nella barra del titolo e elenca i singoli elementi nel set di dati insieme alle relative etichette.
Quando hai finito di rivedere il set di dati, seleziona la scheda Addestra appena sotto barra del titolo.
Se li hai addestrati in precedenza, verranno visualizzati in un elenco in questa scheda.
Se per un modello è disponibile l'addestramento ripristinabile, verrà visualizzato come opzione. accanto all'opzione Visualizza valutazione completa.
Seleziona Riprendi addestramento per riprendere l'addestramento su un modello applicabile.
Analogamente all'addestramento del modello originale, se selezioni Riprendi addestramento verrà aperto un "Addestra nuovo modello" finestra laterale. Nella sezione Definisci il tuo modello puoi modificare il nome del nuovo modello. Vedrai anche il nome del modello di base utilizzato per l'addestramento questo modello.
Dopo aver definito il modello, seleziona Continua per passare alla sezione successiva.
Nella sezione Impostare un budget per l'ora nodo, specifica un budget per l'ora nodo. Questo è soggetto a un della determinazione del prezzo e Limitazioni delle quote simili all'addestramento iniziale del modello.
Dopo aver specificato un budget per l'addestramento, seleziona Inizia addestramento. Riceverai un'email al termine dell'addestramento ripristinabile.
REST
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- base-model-id: l'ID del modello base (esistente). Il nuovo modello viene creato in base
su questo modello di base. Le seguenti nuove specifiche del modello devono corrispondere al modello di base:
- progetto
- località
-
modelType
*
* La base e il nuovo
modelType
verranno controllati anche se questo campo viene omesso nella una nuova richiesta di modello. - project-id: l'ID del tuo progetto Google Cloud.
- display-name: un nome visualizzato per la stringa di tua scelta.
- dataset-id: l'ID del set di dati. L'ID è l'ultimo elemento del nome
del set di dati. Ad esempio:
- nome set di dati:
projects/project-id/locations/location-id/datasets/3104518874390609379
- ID set di dati:
3104518874390609379
- nome set di dati:
Metodo HTTP e URL:
POST https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models
Corpo JSON della richiesta:
{ "baseModelId": BASE_MODEL_ID, "displayName": "DISPLAY_NAME", "datasetId": "DATASET_ID", "imageClassificationModelMetadata": { "trainBudget": "1", "modelType": "mobile-low-latency-1" } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models" | Select-Object -Expand Content
Dovresti vedere un output simile al seguente. Puoi utilizzare l'ID operazione
(in questo caso ICN2106290444865378475
) per recuperare lo stato dell'attività. Per un
Ad esempio, vedi Operazioni a lunga esecuzione.
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/ICN2106290444865378475", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-10-30T20:06:08.253243Z", "updateTime": "2019-10-30T20:06:08.253243Z", "createModelDetails": {} } }