Panoramica della preparazione dei dati

Esistono diverse opzioni per sviluppare i dati di addestramento.

La scelta dipende da numerosi fattori.

Cloud Storage come file system montato (Cloud Storage FUSE)

Valuta la possibilità di utilizzare Cloud Storage come file system montato (Cloud Storage FUSE) per i seguenti motivi:

  • Quando i dati di addestramento non sono strutturati, ad esempio immagini, testo o video: Cloud Storage è la soluzione ideale per archiviare questi tipi di file di grandi dimensioni, spesso individuali.
  • Quando i dati di addestramento sono strutturati in formati come TFRecord: Cloud Storage è di uso comune per questi formati specifici per ML.
  • Quando lavori con file di dimensioni molto grandi: Cloud Storage FUSE trasmette i dati in streaming al job di addestramento anziché richiedere il download dell'intero file nelle repliche. Questo può comportare tempi di caricamento dei dati e di avvio dei job più rapidi per i set di dati di grandi dimensioni.
  • Quando esegui l'addestramento distribuito: Cloud Storage FUSE fornisce una velocità effettiva elevata per le letture sequenziali di file di grandi dimensioni, il che è vantaggioso negli scenari di addestramento distribuito in cui più worker devono accedere ai dati in parallelo.
  • Quando preferisci la comodità di accedere ai dati di Cloud Storage come se fossero un file system locale senza dover effettuare chiamate API esplicite nel codice di addestramento.
  • Quando la tua esigenza principale è lo spazio di archiviazione scalabile e ti preoccupa meno la latenza più bassa per l'accesso casuale a numerosi file di piccole dimensioni.

Specifico per Ray on Agent Platform

  • Puoi archiviare i dati nei bucket Cloud Storage, a cui Ray on Agent Platform può accedere.
  • Ray può leggere direttamente i dati da Cloud Storage. Ad esempio, quando esegui Spark su Ray, puoi leggere i file da Cloud Storage.
  • Agent Platform utilizza Cloud Storage FUSE per montare i bucket Cloud Storage come file system locali all'interno dei job di addestramento in esecuzione su Ray. In questo modo, le applicazioni Ray possono accedere ai dati come se si trovassero su un disco locale utilizzando le operazioni di I/O dei file standard.
  • Per prestazioni ottimali, ti consigliamo di utilizzare i bucket Cloud Storage nella stessa regione in cui esegui il cluster Ray.

Scopri di più

Condivisione Network File System (NFS)

  • Quando richiedi una velocità effettiva molto elevata e un accesso a bassa latenza ai file remoti, come se fossero archiviati localmente. Questo può essere importante per determinati tipi di dati o interazioni di file complesse durante l'addestramento.
  • Quando devi rendere i file remoti facilmente disponibili per tutti i nodi di un cluster di computing, ad esempio un cluster Ray su Agent Platform.
  • Quando la tua applicazione trae vantaggio da un'interfaccia di file system più standard con una conformità POSIX potenzialmente più elevata rispetto a Cloud Storage FUSE.
  • Hai un'infrastruttura NFS esistente all'interno del tuo Virtual Private Cloud che vuoi utilizzare.
  • Devi condividere file o directory tra più job o cluster con accesso coerente a bassa latenza e preferisci gestire le autorizzazioni a livello di file system.

Specifico per Ray on Agent Platform

  • Puoi montare le condivisioni NFS sul cluster Ray su Agent Platform, rendendo accessibili i file remoti come se fossero locali.
  • Questo è utile per l'accesso a velocità effettiva elevata e a bassa latenza ai file system condivisi.
  • Puoi configurare i montaggi NFS quando crei il cluster Ray utilizzando l'SDK Agent Platform per Python, specificando il server, il percorso e il punto di montaggio. Una volta montati, il codice Ray può leggere e scrivere in questi volumi NFS utilizzando le operazioni sui file standard.

Scopri di più

Set di dati gestito

  • Gestione e governance dei dati centralizzate: i set di dati gestiti forniscono una posizione centrale per organizzare e gestire i set di dati all'interno di Agent Platform. Questo aiuta a monitorare e gestire gli asset di dati in diversi progetti ed esperimenti.
  • Etichettatura dei dati: puoi creare attività di etichettatura e gestire i set di annotazioni direttamente all'interno del set di dati gestito.
  • Monitoraggio della derivazione dei dati: i set di dati gestiti monitorano automaticamente la derivazione dei dati per i modelli addestrati su di essi. Questo è fondamentale per comprendere le origini dati utilizzate per modelli specifici e per garantire la riproducibilità e la governance.
  • Confronto tra modelli personalizzati e AutoML: i set di dati gestiti ti consentono di addestrare sia modelli personalizzati sia modelli AutoML utilizzando gli stessi dati. In questo modo è possibile confrontare direttamente il loro rendimento sullo stesso set di dati, aiutandoti a scegliere l'approccio migliore per il tuo problema.
  • Generazione di statistiche e visualizzazioni dei dati: Agent Platform può generare automaticamente statistiche e visualizzazioni per i dati all'interno di un set di dati gestito. Questo può aiutarti nell'analisi esplorativa dei dati e a comprendere le caratteristiche dei tuoi dati.
  • Suddivisione automatica dei dati: quando utilizzi i set di dati gestiti nelle pipeline di addestramento, Agent Platform può suddividere automaticamente i dati in set di addestramento, convalida e test in base a frazioni, filtri, suddivisioni predefinite o timestamp specificati. Questo semplifica il processo di preparazione dei dati.
  • Utilizzo delle versioni dei set di dati: i set di dati gestiti consentono il controllo delle versioni, che ti consente di monitorare le modifiche apportate ai dati nel tempo e di ripristinare le versioni precedenti, se necessario.

Specifico per Ray on Vertex AI

  • Se utilizzi un set di dati gestito in una pipeline di addestramento di Agent Platform che utilizza Ray per l'addestramento distribuito, i dati del set di dati gestito vengono resi disponibili ai container di addestramento, a cui l'applicazione Ray può accedere (tramite Cloud Storage montato o BigQuery se il set di dati è collegato a queste origini). Le variabili di ambiente AIP_TRAINING_DATA_URI, AIP_VALIDATION_DATA_URI e AIP_TEST_DATA_URI rimandano ai dati.

Scopri di più

BigQuery

  • Quando ti connetti ai dati all'interno dei componenti di Agent Platform: molti strumenti e servizi di Agent Platform si integrano direttamente con BigQuery. Puoi eseguire query sui dati in BigQuery da JupyterLab. In questo modo, puoi interagire direttamente con i dati di BigQuery per l'esplorazione, la visualizzazione e lo sviluppo di modelli senza doverli spostare in un altro sistema di archiviazione.
  • Quando crei pipeline di addestramento: quando crei pipeline di addestramento in Agent Platform, puoi utilizzare i dati direttamente da BigQuery. Ad esempio, una pipeline può recuperare i dati da BigQuery, pre-elaborarli e poi addestrare un modello.
  • Pipeline di addestramento continuo dei modelli: per configurare l'addestramento continuo dei modelli, puoi attivare le esecuzioni della pipeline in base ai nuovi dati in arrivo in una tabella BigQuery. In questo modo è possibile automatizzare il riaddestramento dei modelli. Puoi configurare un trigger Eventarc per avviare una pipeline quando viene inserito un nuovo job in una tabella BigQuery specifica.
  • Monitoraggio dei modelli: BigQuery può essere utilizzato come origine per monitorare la distorsione e la deriva delle caratteristiche dei modelli di cui hai eseguito il deployment. Per il rilevamento della distorsione, puoi specificare l'URI BigQuery del set di dati di addestramento. Inoltre, BigQuery può archiviare i log degli endpoint di inferenza online, che possono poi essere utilizzati come origine dati per il monitoraggio continuo. Per questo, la tabella BigQuery dovrebbe idealmente avere una colonna timestamp.
  • Integrazione di BigQuery ML: puoi utilizzare i set di dati BigQuery quando utilizzi BigQuery ML per creare modelli di machine learning utilizzando SQL. Vertex AI Workbench consente l'analisi esplorativa interattiva dei dati BigQuery e l'utilizzo di BigQuery ML in un ambiente notebook.
  • Esplorazione e preparazione dei dati: prima dell'addestramento, puoi utilizzare BigQuery per esplorare e visualizzare i dati. Puoi anche eseguire trasformazioni dei dati utilizzando le query SQL direttamente in BigQuery prima di utilizzare i dati per l'addestramento.
  • Accesso ai set di dati pubblici: BigQuery ospita molti set di dati pubblici, come il set di dati Chicago Taxi Trips, che puoi utilizzare facilmente per la sperimentazione e l'addestramento in Vertex AI Workbench.

Specifico per Ray on Vertex AI

  • Ray on Vertex AI ha la capacità di leggere i dati direttamente da BigQuery. Puoi utilizzare l'SDK Agent Platform per Python all'interno di un'attività Ray per eseguire query BigQuery e materializzare i risultati per l'utilizzo nelle applicazioni Ray.
  • Quando leggi da BigQuery, tieni presente le dimensioni massime della risposta alla query, ovvero 10 GB.
  • Puoi anche scrivere i dati dalle applicazioni Ray in BigQuery utilizzando l'SDK Agent Platform per Python.

Scopri di più