La scelta che fai 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 sono non strutturati, ad esempio immagini, testo o video: Cloud Storage è la soluzione ideale per archiviare questi tipi di file di grandi dimensioni, spesso singoli.
- Quando i dati di addestramento sono strutturati in formati come TFRecord, Cloud Storage viene spesso utilizzato per questi formati specifici per l'apprendimento automatico.
- Quando lavori con file di dimensioni molto grandi: Cloud Storage FUSE trasmette i dati in streaming al tuo job di addestramento anziché richiedere il download dell'intero file nelle repliche. Ciò può comportare tempi di caricamento e avvio dei job più rapidi per set di dati di grandi dimensioni.
- Quando esegui l'addestramento distribuito: Cloud Storage FUSE offre un'elevata velocità effettiva per le letture sequenziali di file di grandi dimensioni, il che è utile negli scenari di addestramento distribuito in cui più worker devono accedere ai dati in parallelo.
- Quando preferisci la praticità di accedere ai dati di Cloud Storage come se si trattasse di 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 preoccupi meno della latenza minima per l'accesso casuale a numerosi file di piccole dimensioni.
Specifiche per Ray su Vertex AI
- Puoi archiviare i tuoi dati nei bucket Cloud Storage a cui Ray su Vertex AI 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.
- Vertex AI 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 fossero su un disco locale utilizzando operazioni di I/O 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 hai bisogno di un'elevata velocità effettiva e di un accesso a bassa latenza ai file remoti, come se fossero archiviati localmente. Questo può essere importante per determinati tipi di dati o interazioni complesse con i file durante l'addestramento.
- Quando devi rendere immediatamente disponibili i file remoti per tutti i nodi di un cluster di calcolo, ad esempio un cluster Ray su Vertex AI.
- Quando la tua applicazione beneficia di un'interfaccia del file system più standard con una compatibilità POSIX potenzialmente più elevata rispetto a Cloud Storage FUSE.
- Nel tuo Virtual Private Cloud è già presente un'infrastruttura NFS che vuoi utilizzare.
- Devi condividere file o directory su più job o cluster con accesso coerente e a bassa latenza e ti consigliamo di gestire le autorizzazioni a livello di file system.
Specifiche per Ray su Vertex AI
- Puoi montare condivisioni NFS sul tuo cluster Ray su Vertex AI, rendendo accessibili i file remoti come se fossero locali.
- Questo è utile per l'accesso a bassa latenza e ad alta velocità effettiva ai file system condivisi.
- Puoi configurare i mount NFS quando crei il cluster Ray utilizzando l'SDK Vertex AI per Python, specificando il server, il percorso e il punto di montaggio. Una volta montato, il codice Ray può leggere e scrivere su questi volumi NFS utilizzando operazioni file standard.
Scopri di più
Set di dati gestito
- Governance e gestione dei dati centralizzata: i set di dati gestiti forniscono un punto di riferimento centralizzato per organizzare e gestire i set di dati in Vertex AI. In questo modo, puoi monitorare e gestire gli asset di dati in diversi progetti ed esperimenti.
- Etichettatura dei dati: puoi creare attività di etichettatura e gestire set di annotazioni direttamente nel set di dati gestito.
- Monitoraggio della derivazione dei dati: i set di dati gestiti monitorano automaticamente la derivazione dei tuoi dati fino ai 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 i modelli personalizzati sia i modelli AutoML utilizzando gli stessi dati. In questo modo, puoi confrontare direttamente il loro rendimento nello stesso set di dati, per scegliere l'approccio migliore per il tuo problema.
- Generazione di statistiche e visualizzazioni dei dati: Vertex AI può generare automaticamente statistiche e visualizzazioni per i dati all'interno di un set di dati gestito. Ciò può essere utile per l'analisi esplorativa dei dati e aiutarti a comprendere le caratteristiche dei tuoi dati.
- Suddivisione automatica dei dati: quando utilizzi set di dati gestiti nelle pipeline di addestramento, Vertex AI può suddividere automaticamente i dati in set di addestramento, convalida e test in base a frazioni, filtri, suddivisioni predefinite o timestamp specificati. In questo modo, la procedura di preparazione dei dati viene semplificata.
- Utilizzo delle versioni dei set di dati: i set di dati gestiti consentono il controllo delle versioni, che ti consente di monitorare le modifiche ai dati nel tempo e di ripristinare le versioni precedenti, se necessario.
Specifiche per Ray su Vertex AI
- Se utilizzi un set di dati gestito in una pipeline di addestramento Vertex AI che utilizza Ray per l'addestramento distribuito, i dati del set di dati gestito vengono resi disponibili per i contenitori di addestramento, a cui la tua 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
eAIP_TEST_DATA_URI
rimandano ai dati.
Scopri di più
BigQuery
- Quando ti colleghi ai dati all'interno dei componenti Vertex AI: molti strumenti e servizi Vertex AI 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 esplorazione, visualizzazione e sviluppo di modelli senza doverli spostare in un altro sistema di archiviazione.
- Quando crei pipeline di addestramento: quando crei pipeline di addestramento in Vertex AI, 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 l'esecuzione delle pipeline in base ai nuovi dati che arrivano in una tabella BigQuery. Ciò consente l'automazione del ricoinvolgimento del modello. Puoi configurare un attivatore 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 lo scostamento e la deriva delle funzionalità dei modelli di cui è stato eseguito il deployment. Per il rilevamento dello scostamento, puoi specificare l'URI BigQuery del set di dati di addestramento. Inoltre, BigQuery può archiviare i log degli endpoint di inferenza online, che possono essere utilizzati come origine dati per il monitoraggio continuo. Per questo, la tabella BigQuery dovrebbe idealmente avere una colonna con 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 di eseguire analisi esplorative interattive dei dati di BigQuery e di utilizzare BigQuery ML in un ambiente di 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 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.
Specifiche per Ray su Vertex AI
- Ray su Vertex AI è in grado di leggere i dati direttamente da BigQuery. Puoi utilizzare l'SDK Vertex AI per Python all'interno di un compito Ray per eseguire query BigQuery e materializzare i risultati per utilizzarli nelle tue applicazioni Ray.
- Quando leggi da BigQuery, tieni presente le dimensioni massime della risposta alla query, pari a 10 GB.
- Puoi anche scrivere i dati delle tue applicazioni Ray in BigQuery utilizzando l'SDK Vertex AI per Python.
Scopri di più
- Vertex AI per gli utenti di BigQuery
- Creare una pipeline per l'addestramento continuo dei modelli
- Utilizzare Ray su Vertex AI con BigQuery