Questa pagina mostra come addestrare un modello di monitoraggio degli oggetti AutoML da un set di dati video utilizzando la console Google Cloud o l'API Vertex AI.
Addestramento di un modello AutoML
Console Google Cloud
Nella console Google Cloud, nella sezione Vertex AI, vai alla pagina Set di dati.
Fai clic sul nome del set di dati che vuoi utilizzare per addestrare il modello per aprire la relativa pagina dei dettagli.
Fai clic su Addestra nuovo modello.
Inserisci il nome visualizzato per il nuovo modello.
Se vuoi impostare manualmente la suddivisione dei dati di addestramento, espandi Opzioni avanzate e seleziona un'opzione di suddivisione dei dati. Scopri di più.
Fai clic su Continua.
Seleziona il metodo di addestramento del modello.
AutoML
è una buona scelta per una vasta gamma di casi d'uso.Seq2seq+
è una buona scelta per la sperimentazione. L'algoritmo tende a convergere più rapidamente diAutoML
perché la sua architettura è più semplice e utilizza uno spazio di ricerca più piccolo. I nostri esperimenti hanno dimostrato che Seq2Seq+ ha un buon rendimento con un budget di tempo ridotto e su set di dati di dimensioni inferiori a 1 GB.
Fai clic su Inizia addestramento.
L'addestramento del modello può richiedere molte ore, a seconda delle dimensioni e della complessità dei dati e del budget di addestramento, se ne hai specificato uno. Puoi chiudere questa scheda e tornarci in un secondo momento. Riceverai un'email al completamento dell'addestramento del modello.
Alcuni minuti dopo l'inizio dell'addestramento, puoi controllare la stima ora nodo di addestramento dalle informazioni sulle proprietà del modello. Se annulli la formazione, non ti verrà addebitato alcun costo per il prodotto attuale.
API
Seleziona la scheda di seguito per la tua lingua o il tuo ambiente:
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- LOCATION: regione in cui si trova il set di dati e in cui verrà archiviato il modello. Ad esempio,
us-central1
. - PROJECT: il tuo ID progetto.
- MODEL_DISPLAY_NAME: nome visualizzato del modello appena addestrato.
- DATASET_ID: l'ID del set di dati di addestramento.
-
L'oggetto
filterSplit
è facoltativo e viene utilizzato per controllare la suddivisione dei dati. Per ulteriori informazioni sul controllo della suddivisione dei dati, consulta Controllare la suddivisione dei dati utilizzando REST. - PROJECT_NUMBER: il numero di progetto generato automaticamente del progetto
Metodo HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/trainingPipelines
Corpo JSON della richiesta:
{ "displayName": "MODE_DISPLAY_NAME", "trainingTaskDefinition": "gs://google-cloud-aiplatform/schema/trainingjob/definition/automl_video_object_tracking_1.0.0.yaml", "trainingTaskInputs": {}, "modelToUpload": {"displayName": "MODE_DISPLAY_NAME"}, "inputDataConfig": { "datasetId": "DATASET_ID", "filterSplit": { "trainingFilter": "labels.ml_use = training", "validationFilter": "labels.ml_use = -", "testFilter": "labels.ml_use = test" } } }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_NUMBER/locations/us-central1/trainingPipelines/2307109646608891904", "displayName": "myModelName", "trainingTaskDefinition": "gs://google-cloud-aiplatform/schema/trainingjob/definition/automl_video_object_tracking_1.0.0.yaml", "modelToUpload": { "displayName": "myModelName" }, "state": "PIPELINE_STATE_PENDING", "createTime": "2020-04-18T01:22:57.479336Z", "updateTime": "2020-04-18T01:22:57.479336Z" }
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione Node.js riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare o aggiornare l'SDK Vertex AI per Python, consulta Installare l'SDK Vertex AI per Python. Per saperne di più, consulta la documentazione di riferimento dell'API Python.
Controllare la suddivisione dei dati utilizzando REST
Puoi controllare la modalità di suddivisione dei dati di addestramento tra i set di addestramento, convalida e test. Quando utilizzi l'API Vertex AI, utilizza l'oggetto Split
per determinare la suddivisione dei dati. L'oggetto Split
può essere incluso nell'oggetto InputConfig
come uno di diversi tipi di oggetti, ognuno dei quali offre un modo diverso per suddividere i dati di addestramento. Puoi selezionare un solo metodo.
-
FractionSplit
:- TRAINING_FRACTION: la frazione dei dati di addestramento da utilizzare per il set di addestramento.
- VALIDATION_FRACTION: la frazione dei dati di addestramento da utilizzare per il set di convalida. Non utilizzato per i dati video.
- TEST_FRACTION: la frazione dei dati di addestramento da utilizzare per il set di test.
Se viene specificata una delle frazioni, devono essere specificate tutte. La somma delle frazioni deve essere pari a 1,0. I valori predefiniti per le frazioni variano a seconda del tipo di dati. Scopri di più.
"fractionSplit": { "trainingFraction": TRAINING_FRACTION, "validationFraction": VALIDATION_FRACTION, "testFraction": TEST_FRACTION },
-
FilterSplit
: - TRAINING_FILTER: gli elementi di dati corrispondenti a questo filtro vengono utilizzati per il set di addestramento.
- VALIDATION_FILTER: gli elementi di dati corrispondenti a questo filtro vengono utilizzati per l'insieme di convalida. Deve essere "-" per i dati video.
- TEST_FILTER: gli elementi di dati corrispondenti a questo filtro vengono utilizzati per l'insieme di test.
Questi filtri possono essere utilizzati con l'etichetta ml_use
o con qualsiasi etichetta applicata ai dati. Scopri di più sull'utilizzo
dell'etichetta ml-use
e di altre etichette
per filtrare i dati.
L'esempio seguente mostra come utilizzare l'oggetto filterSplit
con l'etichetta ml_use
, con il set di convalida incluso:
"filterSplit": { "trainingFilter": "labels.aiplatform.googleapis.com/ml_use=training", "validationFilter": "labels.aiplatform.googleapis.com/ml_use=validation", "testFilter": "labels.aiplatform.googleapis.com/ml_use=test" }