Un set di dati contiene campioni rappresentativi del tipo di contenuti da classificare, annotati con etichette e riquadri di delimitazione. Il set di dati serve da input per l'addestramento di un modello.
Di seguito sono riportati i passaggi principali per la creazione di un set di dati:
- Crea un set di dati e assegnagli un nome facile da ricordare.
- Importa esempi di dati nel set di dati.
- (Facoltativo) Modifica le annotazioni delle immagini importate per aggiungere, eliminare o modificare riquadri di delimitazione ed etichette nelle immagini.
Creazione di un set di dati
Il primo passaggio nella creazione di un modello personalizzato con l'API AutoML è creare un set di dati vuoto che alla fine conserverà i dati di addestramento del modello.
A partire dalla release di disponibilità generale (GA) di AutoML Vision Object Detection, questa richiesta restituisce l'ID di un'operazione a lunga esecuzione.
Al termine dell'operazione a lunga esecuzione puoi importare le immagini al suo interno. Il set di dati appena creato non contiene dati finché non importi immagini.
Salva l'ID del set di dati del nuovo set di dati (dalla risposta) per utilizzarlo con altre operazioni, come l'importazione di immagini nel set di dati e l'addestramento di un modello.
UI web
L'interfaccia utente di AutoML Vision Object Detection consente di creare un nuovo set di dati e importare immagini nel set di dati dalla stessa pagina.Apri l'interfaccia utente di AutoML Vision Object Detection.
La pagina Set di dati mostra lo stato dei set di dati creati in precedenza per il progetto corrente.
Per aggiungere un set di dati per un altro progetto, seleziona il progetto dall'elenco a discesa in alto a destra nella barra del titolo.
Fai clic sul pulsante Nuovo set di dati nella barra del titolo.
Nella finestra popup Crea nuovo set di dati, inserisci un nome per il set di dati e seleziona l'opzione "Crea set di dati".
Dopo aver creato un set di dati vuoto, si apre la scheda Importa nella pagina dei dettagli del set di dati. Puoi quindi specificare il percorso Google Cloud Storage del file .csv che elenca le immagini di addestramento da includere nel set di dati. Queste immagini di addestramento devono essere archiviate in modo simile in un bucket Google Cloud Storage.
Per creare un set di dati, devi caricare da Google Cloud Storage un file .csv contenente le immagini di addestramento con le etichette e i riquadri di delimitazione associati.
Al termine dell'importazione, puoi aggiungere, rimuovere o modificare qualsiasi annotazione nell'interfaccia utente.
Seleziona Importa.
Tornerai alla pagina Set di dati. Il set di dati mostrerà un'animazione in corso durante l'importazione delle immagini. Questo processo dovrebbe richiedere circa 10 minuti ogni 1000 esempi, ma potrebbe richiedere più o meno tempo.
REST
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 della stringa a tua scelta.
Metodo HTTP e URL:
POST https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets
Corpo JSON della richiesta:
{ "displayName": "DISPLAY_NAME", "imageObjectDetectionDatasetMetadata": { } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
arricciatura
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/datasets"
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/datasets" | Select-Object -Expand Content
Dovresti vedere un output simile al seguente. Puoi utilizzare l'ID operazione (IOD3819960680614725486
, in questo caso) per ottenere lo stato dell'attività. Per un esempio, vedi Lavorare con operazioni a lunga esecuzione:
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/IOD3819960680614725486", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-11-14T16:49:13.667526Z", "updateTime": "2019-11-14T16:49:13.667526Z", "createDatasetDetails": {} } }
Al termine dell'operazione a lunga esecuzione puoi ottenere l'ID del set di dati con la stessa richiesta di stato operativo. La risposta dovrebbe essere simile alla seguente:
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/IOD3819960680614725486", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-11-14T16:49:13.667526Z", "updateTime": "2019-11-14T16:49:17.975314Z", "createDatasetDetails": {} }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.automl.v1.Dataset", "name": "projects/PROJECT_ID/locations/us-central1/datasets/IOD5496445433112696489" } }
Go
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella pagina Librerie client.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella pagina Librerie client.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella pagina Librerie client.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella pagina Librerie client.
Linguaggi aggiuntivi
C#: segui le istruzioni di configurazione di C# nella pagina delle librerie client e poi consulta la documentazione di riferimento di AutoML Vision Object Detection per .NET.
PHP: segui le istruzioni per la configurazione dei file PHP nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Vision Object Detection per PHP.
Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client e poi visita la documentazione di riferimento di AutoML Vision Object Detection per Ruby.
Importazione di immagini in un set di dati
Dopo aver creato un set di dati, puoi importare gli URI delle immagini e i riquadri di delimitazione etichettati per le immagini da un file CSV archiviato in un bucket Google Cloud Storage.
Per maggiori dettagli sulla preparazione dei dati e sulla creazione di un file CSV per l'importazione, consulta Preparazione dei dati di addestramento. Per maggiori dettagli sulla modifica delle annotazioni delle immagini dopo l'importazione delle immagini, consulta Annotazione delle immagini di addestramento importate.
Puoi importare immagini in un set di dati vuoto o in un set di dati che contiene già immagini di addestramento.
UI web
Per il rilevamento di oggetti AutoML Vision, la creazione e l'importazione di immagini vengono combinate in passaggi consecutivi nell'interfaccia utente.
Importazione di immagini in un set di dati vuoto:
Per la creazione successiva del set di dati, ti verrà chiesto di importare le immagini direttamente dopo aver creato un set di dati vuoto, ma questo passaggio di importazione non è obbligatorio in quel momento.
Per importare immagini in un set di dati vuoto:
Seleziona il set di dati vuoto dalla pagina Set di dati.
Nella pagina Importa, aggiungi il percorso Google Cloud Storage del file .csv. Dopo aver indicato la posizione del file .csv su Google Cloud Storage, seleziona Importa per avviare il processo di importazione del file.
Importazione di immagini in un set di dati non vuoto:
Puoi aggiungere altre immagini di addestramento a un set di dati che contiene già immagini di addestramento.
Per aggiungere immagini di addestramento a un set di dati non vuoto:
Seleziona il set di dati non vuoto dalla pagina Set di dati.
Se selezioni il set di dati non vuoto, verrà visualizzata la pagina Dettagli del set di dati.
Nella pagina Dettagli del set di dati, seleziona la scheda Importa.
Se selezioni la scheda Importa, verrà visualizzata la pagina Crea set di dati. Puoi quindi specificare la posizione del tuo file .csv in Google Cloud Storage e selezionare Importa per avviare il processo di importazione dell'immagine.
REST
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- project-id: l'ID del tuo progetto Google Cloud.
- dataset-id: l'ID del set di dati. L'ID è l'ultimo elemento del nome del set di dati. Ecco alcuni esempi:
- nome set di dati:
projects/project-id/locations/location-id/datasets/3104518874390609379
- ID set di dati:
3104518874390609379
- nome set di dati:
- input-storage-path: il percorso di un file CSV archiviato in Google Cloud Storage. L'utente richiedente deve disporre almeno dell'autorizzazione di lettura per il bucket.
Metodo HTTP e URL:
POST https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/DATASET_ID:importData
Corpo JSON della richiesta:
{ "inputConfig": { "gcsSource": { "inputUris": ["INPUT_STORAGE_PATH"] } } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
arricciatura
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/datasets/DATASET_ID:importData"
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/datasets/DATASET_ID:importData" | Select-Object -Expand Content
Dovresti vedere un output simile al seguente. Puoi utilizzare l'ID operazione per conoscere lo stato dell'attività. Per un esempio, consulta Operazioni con operazioni a lunga esecuzione.
{ "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-29T15:56:29.176485Z", "importDataDetails": {} } }
Go
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella pagina Librerie client.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella pagina Librerie client.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella pagina Librerie client.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella pagina Librerie client.
Linguaggi aggiuntivi
C#: segui le istruzioni di configurazione di C# nella pagina delle librerie client e poi consulta la documentazione di riferimento di AutoML Vision Object Detection per .NET.
PHP: segui le istruzioni per la configurazione dei file PHP nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Vision Object Detection per PHP.
Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client e poi visita la documentazione di riferimento di AutoML Vision Object Detection per Ruby.
L'argomento Annotazione delle immagini di addestramento importate spiega come aggiungere manualmente riquadri di delimitazione ed etichette alle immagini nell'interfaccia utente e come elencare le statistiche delle etichette.
L'argomento Gestione dei set di dati include ulteriori informazioni sull'utilizzo di una risorsa del set di dati, ad esempio su come elencare, ottenere, esportare o eliminare i set di dati.
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:
arricciatura
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 questo linguaggio nella pagina API e riferimenti > Librerie client.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione per questo linguaggio nella pagina API e riferimenti > Librerie client.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione per questo linguaggio nella pagina API e riferimenti > Librerie client.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione per questo linguaggio nella pagina API e riferimenti > Librerie client.
Linguaggi aggiuntivi
C#: segui le istruzioni di configurazione di C# nella pagina delle librerie client e poi consulta la documentazione di riferimento di AutoML Vision per .NET.
PHP: segui le istruzioni per la configurazione dei file PHP nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Vision per PHP.
Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client e poi visita la documentazione di riferimento di AutoML Vision per Ruby.