Questa pagina mostra come utilizzare i set di dati gestiti da Vertex AI per addestrare i tuoi modelli personalizzati. I set di dati gestiti offrono i seguenti vantaggi:
- Gestisci i tuoi set di dati in una posizione centrale.
- Crea etichette e più set di annotazioni.
- Crea attività per l'etichettatura umana utilizzando l'etichettatura dei dati integrata.
- Tieni traccia della derivazione dei modelli per la governance e lo sviluppo iterativo.
- Confronta le prestazioni dei modelli addestrando modelli AutoML e personalizzati utilizzando gli stessi set di dati.
- Generare statistiche e visualizzazioni dei dati.
- Suddividi automaticamente i dati in set di addestramento, test e convalida.
Prima di iniziare
Prima di poter utilizzare un set di dati gestito nell'applicazione di addestramento, devi creare il set di dati. Devi creare il set di dati e la pipeline di addestramento che utilizzi per l'addestramento nella stessa regione. Devi utilizzare una regione
in cui sono disponibili
le risorse Dataset
.
Accedere a un set di dati dall'applicazione di addestramento
Quando crei una pipeline di addestramento personalizzato, puoi specificare che l'applicazione di addestramento utilizzi un set di dati Vertex AI.
In fase di runtime, Vertex AI trasmette i metadati relativi al set di dati all'applicazione di addestramento impostando le seguenti variabili di ambiente nel container di addestramento.
AIP_DATA_FORMAT
: Il formato in cui viene esportato il set di dati. I valori possibili includono:jsonl
,csv
obigquery
.AIP_TRAINING_DATA_URI
: l'URI BigQuery dei dati di addestramento o l'URI Cloud Storage del file di dati di addestramento.AIP_VALIDATION_DATA_URI
: l'URI BigQuery per i dati di convalida o l'URI Cloud Storage del file di dati di convalida.AIP_TEST_DATA_URI
: l'URI BigQuery per i dati di test o l'URI Cloud Storage del file di dati di test.
Se il AIP_DATA_FORMAT
del tuo set di dati è jsonl
o csv
, i valori URI dati
fanno riferimento agli URI Cloud Storage, ad esempio
gs://bucket_name/path/training-*
. Per mantenere
le dimensioni di ogni file di dati relativamente ridotte, Vertex AI divide il
set di dati in più file. Poiché i dati di addestramento, convalida o test
potrebbero essere suddivisi in più file, gli URI vengono forniti in formato con caratteri jolly.
Scopri di più sul download di oggetti utilizzando gli esempi di codice di Cloud Storage.
Se il tuo AIP_DATA_FORMAT
è bigquery
, i valori URI dei dati fanno riferimento agli URI BigQuery, ad esempio bq://project.dataset.table
.
Scopri di più sulla paginazione dei dati di BigQuery.
Formato del set di dati
Utilizza le sezioni seguenti per scoprire di più su come Vertex AI formatta i dati quando passa un set di dati all'applicazione di addestramento.
Set di dati immagine
I set di dati delle immagini vengono passati all'applicazione di addestramento in formato JSON Lines. Seleziona la scheda relativa all'obiettivo del set di dati per scoprire di più su come Vertex AI formatta il set di dati.
Classificazione con etichetta singola
Vertex AI utilizza il seguente schema accessibile pubblicamente quando esporta un set di dati di classificazione delle immagini a singola etichetta. Questo schema determina il formato dei file di esportazione dei dati. La struttura dello schema segue lo schema OpenAPI.
Ogni elemento di dati nel set di dati esportato utilizza il seguente formato. Questo esempio include interruzioni di riga per favorire la leggibilità.
{ "imageGcsUri": "gs://bucket/filename.ext", "classificationAnnotation": { "displayName": "LABEL", "annotationResourceLabels": { "aiplatform.googleapis.com/annotation_set_name": "displayName", "env": "prod" } }, "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "training/test/validation" } }
Note sul campo:
imageGcsUri
: l'URI Cloud Storage di questa immagine.annotationResourceLabels
: contiene un numero qualsiasi di coppie di stringhe chiave-valore. Vertex AI utilizza questo campo per specificare il set di annotazioni.dataItemResourceLabels
: contiene un numero qualsiasi di coppie di stringhe chiave-valore. Specifica l'utilizzo del machine learning dell'elemento di dati, ad esempio addestramento, test o convalida.
Esempio di righe JSON
{"imageGcsUri": "gs://bucket/filename1.jpeg", "classificationAnnotation": {"displayName": "daisy"}, "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "test"}} {"imageGcsUri": "gs://bucket/filename2.gif", "classificationAnnotation": {"displayName": "dandelion"}, "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}} {"imageGcsUri": "gs://bucket/filename3.png", "classificationAnnotation": {"displayName": "roses"}, "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}} {"imageGcsUri": "gs://bucket/filename4.bmp", "classificationAnnotation": {"displayName": "sunflowers"}, "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}} {"imageGcsUri": "gs://bucket/filename5.tiff", "classificationAnnotation": {"displayName": "tulips"}, "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "validation"}} ...
Classificazione con più etichette
Vertex AI utilizza il seguente schema accessibile pubblicamente durante l'esportazione di un set di dati di classificazione delle immagini con più etichette. Questo schema determina il formato dei file di esportazione dei dati. La struttura dello schema segue lo schema OpenAPI.
Ogni elemento di dati nel set di dati esportato utilizza il seguente formato. Questo esempio include interruzioni di riga per favorire la leggibilità.
{ "imageGcsUri": "gs://bucket/filename.ext", "classificationAnnotations": [ { "displayName": "LABEL1", "annotationResourceLabels": { "aiplatform.googleapis.com/annotation_set_name":"displayName", "label_type": "flower_type" } }, { "displayName": "LABEL2", "annotationResourceLabels": { "aiplatform.googleapis.com/annotation_set_name":"displayName", "label_type": "image_shot_type" } } ], "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "training/test/validation" } }
Note sul campo:
imageGcsUri
: l'URI Cloud Storage di questa immagine.annotationResourceLabels
: contiene un numero qualsiasi di coppie di stringhe chiave-valore. Vertex AI utilizza questo campo per specificare il set di annotazioni.dataItemResourceLabels
: contiene un numero qualsiasi di coppie di stringhe chiave-valore. Specifica l'utilizzo del machine learning dell'elemento di dati, ad esempio addestramento, test o convalida.
Esempio di righe JSON
{"imageGcsUri": "gs://bucket/filename1.jpeg", "classificationAnnotations": [{"displayName": "daisy"}, {"displayName": "full_shot"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "test"}} {"imageGcsUri": "gs://bucket/filename2.gif", "classificationAnnotations": [{"displayName": "dandelion"}, {"displayName": "medium_shot"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}} {"imageGcsUri": "gs://bucket/filename3.png", "classificationAnnotations": [{"displayName": "roses"}, {"displayName": "extreme_closeup"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}} {"imageGcsUri": "gs://bucket/filename4.bmp", "classificationAnnotations": [{"displayName": "sunflowers"}, {"displayName": "closeup"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}} {"imageGcsUri": "gs://bucket/filename5.tiff", "classificationAnnotations": [{"displayName": "tulips"}, {"displayName": "extreme_closeup"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "validation"}} ...
Rilevamento di oggetti
Vertex AI utilizza lo schema accessibile pubblicamente seguente quando esporta un set di dati di rilevamento degli oggetti. Questo schema determina il formato dei file di esportazione dei dati. La struttura dello schema segue lo schema OpenAPI.
gs://google-cloud-aiplatform/schema/dataset/ioformat/image_bounding_box_io_format_1.0.0.yaml
Ogni elemento di dati nel set di dati esportato utilizza il seguente formato. Questo esempio include interruzioni di riga per favorire la leggibilità.
{ "imageGcsUri": "gs://bucket/filename.ext", "boundingBoxAnnotations": [ { "displayName": "OBJECT1_LABEL", "xMin": "X_MIN", "yMin": "Y_MIN", "xMax": "X_MAX", "yMax": "Y_MAX", "annotationResourceLabels": { "aiplatform.googleapis.com/annotation_set_name": "displayName", "env": "prod" } }, { "displayName": "OBJECT2_LABEL", "xMin": "X_MIN", "yMin": "Y_MIN", "xMax": "X_MAX", "yMax": "Y_MAX" } ], "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "test/train/validation" } }
Note sul campo:
imageGcsUri
: l'URI Cloud Storage di questa immagine.annotationResourceLabels
: contiene un numero qualsiasi di coppie di stringhe chiave-valore. Vertex AI utilizza questo campo per specificare il set di annotazioni.dataItemResourceLabels
: contiene un numero qualsiasi di coppie di stringhe chiave-valore. Specifica l'utilizzo del machine learning dell'elemento di dati, ad esempio addestramento, test o convalida.
Esempio di righe JSON
{"imageGcsUri": "gs://bucket/filename1.jpeg", "boundingBoxAnnotations": [{"displayName": "Tomato", "xMin": "0.3", "yMin": "0.3", "xMax": "0.7", "yMax": "0.6"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "test"}} {"imageGcsUri": "gs://bucket/filename2.gif", "boundingBoxAnnotations": [{"displayName": "Tomato", "xMin": "0.8", "yMin": "0.2", "xMax": "1.0", "yMax": "0.4"},{"displayName": "Salad", "xMin": "0.0", "yMin": "0.0", "xMax": "1.0", "yMax": "1.0"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}} {"imageGcsUri": "gs://bucket/filename3.png", "boundingBoxAnnotations": [{"displayName": "Baked goods", "xMin": "0.5", "yMin": "0.7", "xMax": "0.8", "yMax": "0.8"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}} {"imageGcsUri": "gs://bucket/filename4.tiff", "boundingBoxAnnotations": [{"displayName": "Salad", "xMin": "0.1", "yMin": "0.2", "xMax": "0.8", "yMax": "0.9"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "validation"}} ...
Set di dati tabulari
Vertex AI trasmette i dati tabulari all'applicazione di addestramento in formato CSV o come URI a una tabella o vista BigQuery. Per saperne di più sul formato e sui requisiti dell'origine dati, consulta Preparare l'origine di importazione. Per ulteriori informazioni sullo schema del set di dati, consulta il set di dati nella console Google Cloud .
Set di dati di testo
I set di dati di testo vengono passati all'applicazione di addestramento in formato JSON Lines. Seleziona la scheda relativa all'obiettivo del set di dati per scoprire di più su come Vertex AI formatta il set di dati.
Classificazione con etichetta singola
Vertex AI utilizza lo schema accessibile pubblicamente seguente quando esporta un set di dati di classificazione del testo con etichetta singola. Questo schema determina il formato dei file di esportazione dei dati. La struttura dello schema segue lo schema OpenAPI.
Ogni elemento di dati nel set di dati esportato utilizza il seguente formato. Questo esempio include interruzioni di riga per favorire la leggibilità.
{ "classificationAnnotation": { "displayName": "label" }, "textContent": "inline_text", "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "training|test|validation" } } { "classificationAnnotation": { "displayName": "label2" }, "textGcsUri": "gcs_uri_to_file", "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "training|test|validation" } }
Classificazione con più etichette
Vertex AI utilizza il seguente schema accessibile pubblicamente durante l'esportazione di un set di dati di classificazione del testo con più etichette. Questo schema determina il formato dei file di esportazione dei dati. La struttura dello schema segue lo schema OpenAPI.
Ogni elemento di dati nel set di dati esportato utilizza il seguente formato. Questo esempio include interruzioni di riga per favorire la leggibilità.
{ "classificationAnnotations": [{ "displayName": "label1" },{ "displayName": "label2" }], "textGcsUri": "gcs_uri_to_file", "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "training|test|validation" } } { "classificationAnnotations": [{ "displayName": "label2" },{ "displayName": "label3" }], "textContent": "inline_text", "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "training|test|validation" } }
Estrazione di entità
Vertex AI utilizza lo schema accessibile pubblicamente riportato di seguito quando esporta un set di dati di estrazione di entità. Questo schema determina il formato dei file di esportazione dei dati. La struttura dello schema segue lo schema OpenAPI.
gs://google-cloud-aiplatform/schema/dataset/ioformat/text_extraction_io_format_1.0.0.yaml.
Ogni elemento di dati nel set di dati esportato utilizza il seguente formato. Questo esempio include interruzioni di riga per favorire la leggibilità.
{ "textSegmentAnnotations": [ { "startOffset":number, "endOffset":number, "displayName": "label" }, ... ], "textContent": "inline_text", "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "training|test|validation" } } { "textSegmentAnnotations": [ { "startOffset":number, "endOffset":number, "displayName": "label" }, ... ], "textGcsUri": "gcs_uri_to_file", "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "training|test|validation" } }
Analisi del sentiment
Vertex AI utilizza lo schema accessibile pubblicamente riportato di seguito quando esporta un set di dati di analisi del sentiment. Questo schema determina il formato dei file di esportazione dei dati. La struttura dello schema segue lo schema OpenAPI.
gs://google-cloud-aiplatform/schema/trainingjob/definition/automl_text_sentiment_1.0.0.yaml
Ogni elemento di dati nel set di dati esportato utilizza il seguente formato. Questo esempio include interruzioni di riga per favorire la leggibilità.
{ "sentimentAnnotation": { "sentiment": number, "sentimentMax": number }, "textContent": "inline_text", "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "training|test|validation" } } { "sentimentAnnotation": { "sentiment": number, "sentimentMax": number }, "textGcsUri": "gcs_uri_to_file", "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "training|test|validation" } }
Set di dati video
I set di dati video vengono passati all'applicazione di addestramento in formato JSON Lines. Seleziona la scheda relativa all'obiettivo del set di dati per scoprire di più su come Vertex AI formatta il set di dati.
Riconoscimento delle azioni
Vertex AI utilizza il seguente schema accessibile pubblicamente quando esporta un set di dati di riconoscimento delle azioni. Questo schema determina il formato dei file di esportazione dei dati. La struttura dello schema segue lo schema OpenAPI.
gs://google-cloud-aiplatform/schema/dataset/ioformat/video_action_recognition_io_format_1.0.0.yaml
Ogni elemento di dati nel set di dati esportato utilizza il seguente formato. Questo esempio include interruzioni di riga per favorire la leggibilità.
{ "videoGcsUri': "gs://bucket/filename.ext", "timeSegments": [{ "startTime": "start_time_of_fully_annotated_segment", "endTime": "end_time_of_segment"}], "timeSegmentAnnotations": [{ "displayName": "LABEL", "startTime": "start_time_of_segment", "endTime": "end_time_of_segment" }], "dataItemResourceLabels": { "ml_use": "train|test" } }
Nota: i segmenti di tempo qui vengono utilizzati per calcolare i timestamp
delle azioni. startTime
e endTime
di
timeSegmentAnnotations
possono
essere uguali e corrispondono al fotogramma chiave dell'azione.
Esempio di righe JSON
{"videoGcsUri": "gs://demo/video1.mp4", "timeSegmentAnnotations": [{"displayName": "cartwheel", "startTime": "1.0s", "endTime": "12.0s"}], "dataItemResourceLabels": {"ml_use": "training"}} {"videoGcsUri": "gs://demo/video2.mp4", "timeSegmentAnnotations": [{"displayName": "swing", "startTime": "4.0s", "endTime": "9.0s"}], "dataItemResourceLabels": {"ml_use": "test"}} ...
Classificazione
Vertex AI utilizza lo schema accessibile pubblicamente riportato di seguito quando esporta un set di dati di classificazione. Questo schema determina il formato dei file di esportazione dei dati. La struttura dello schema segue lo schema OpenAPI.
gs://google-cloud-aiplatform/schema/dataset/ioformat/video_classification_io_format_1.0.0.yaml
Ogni elemento di dati nel set di dati esportato utilizza il seguente formato. Questo esempio include interruzioni di riga per favorire la leggibilità.
{ "videoGcsUri": "gs://bucket/filename.ext", "timeSegmentAnnotations": [{ "displayName": "LABEL", "startTime": "start_time_of_segment", "endTime": "end_time_of_segment" }], "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "train|test" } }
Esempio di JSON Lines - Classificazione video:
{"videoGcsUri": "gs://demo/video1.mp4", "timeSegmentAnnotations": [{"displayName": "cartwheel", "startTime": "1.0s", "endTime": "12.0s"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}} {"videoGcsUri": "gs://demo/video2.mp4", "timeSegmentAnnotations": [{"displayName": "swing", "startTime": "4.0s", "endTime": "9.0s"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "test"}} ...
Monitoraggio oggetti
Vertex AI utilizza lo schema accessibile pubblicamente riportato di seguito quando esporta un set di dati di monitoraggio degli oggetti. Questo schema determina il formato dei file di esportazione dei dati. La struttura dello schema segue lo schema OpenAPI.
gs://google-cloud-aiplatform/schema/dataset/ioformat/object_tracking_io_format_1.0.0.yaml
Ogni elemento di dati nel set di dati esportato utilizza il seguente formato. Questo esempio include interruzioni di riga per favorire la leggibilità.
{ "videoGcsUri": "gs://bucket/filename.ext", "TemporalBoundingBoxAnnotations": [{ "displayName": "LABEL", "xMin": "leftmost_coordinate_of_the_bounding box", "xMax": "rightmost_coordinate_of_the_bounding box", "yMin": "topmost_coordinate_of_the_bounding box", "yMax": "bottommost_coordinate_of_the_bounding box", "timeOffset": "timeframe_object-detected" "instanceId": "instance_of_object "annotationResourceLabels": "resource_labels" }], "dataItemResourceLabels": { "aiplatform.googleapis.com/ml_use": "train|test" } }
Esempio di righe JSON
{'videoGcsUri': 'gs://demo-data/video1.mp4', 'temporal_bounding_box_annotations': [{'displayName': 'horse', 'instance_id': '-1', 'time_offset': '4.000000s', 'xMin': '0.668912', 'yMin': '0.560642', 'xMax': '1.000000', 'yMax': '1.000000'}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}} {'videoGcsUri': 'gs://demo-data/video2.mp4', 'temporal_bounding_box_annotations': [{'displayName': 'horse', 'instance_id': '-1', 'time_offset': '71.000000s', 'xMin': '0.679056', 'yMin': '0.070957', 'xMax': '0.801716', 'yMax': '0.290358'}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "test"}} ...
Passaggi successivi
- Scopri come utilizzare un set di dati gestito nell'addestramento personalizzato creando una pipeline di addestramento.