Implementazione del machine learning

Last reviewed 2023-08-23 UTC

Questo documento nel Framework dell'architettura Google Cloud spiega alcuni dei principi fondamentali e delle best practice per l'analisi dei dati in in Google Cloud. Imparerai alcune delle principali funzionalità di AI e machine learning (ML) e come possono aiutare nelle varie fasi dei processi di AI e ML durante il ciclo di vita di attività. Queste best practice ti aiutano a soddisfare le tue esigenze di AI e ML e la progettazione del tuo sistema. In questo documento si presuppone che tu abbia familiarità con AI di base e concetti di base del machine learning.

Per semplificare il processo di sviluppo e ridurre al minimo l'overhead quando crei modelli ML su Google Cloud, consideriamo il livello più alto di astrazione che ha senso per il tuo caso d'uso. Il livello di astrazione è definita come la complessità con cui un sistema viene visualizzato o programmato. Più alto è il livello di astrazione, minore è il dettaglio disponibile visualizzatore.

Per selezionare i servizi di IA e ML di Google in base alle tue esigenze aziendali, utilizza tabella seguente:

Utente tipo Servizi Google
Utenti aziendali Soluzioni standard come Contact Center AI Insights, Document AI, Discovery AI e API Cloud Healthcare.
Sviluppatori con esperienza di ML minima Le API preaddestrate eseguono attività percettive comuni come visione artificiale, video e linguaggio naturale. Queste API sono supportate da modelli preaddestrati e forniscono rilevatori predefiniti. Sono pronte per l'uso senza alcuna esperienza con il ML e senza dover sviluppare modelli. API preaddestrate includono: API Vision, API Video, API Natural Language, API Speech-to-Text, Text-to-Speech API e API Cloud Translation.
IA generativa per sviluppatori Vertex AI Agent Builder consente agli sviluppatori di usare le sue funzionalità pronte all'uso per creare ed eseguire il deployment di chatbot in pochi minuti e motori di ricerca in ore. Gli sviluppatori che vogliono combinare più funzionalità nei flussi di lavoro aziendali possono utilizzare l'API Gen App Builder per integrazione diretta.
Sviluppatori e data scientist AutoML consente sviluppo di modelli personalizzati con immagini, video, testo o dati tabulari. AutoML accelera lo sviluppo dei modelli con ricerca automatica nella raccolta di modelli di Google per trovare il modello più performante senza dover creare il modello. AutoML gestisce le attività più comuni, come la scelta dell'architettura del modello, ottimizzazione degli iperparametri e provisioning delle macchine per l'addestramento e la pubblicazione.
Data scientist e ML engineer Strumenti per modelli personalizzati di Vertex AI consentono di addestrare e distribuire modelli personalizzati, e rendono operativa l'ML nel tuo flusso di lavoro. Puoi anche eseguire il carico di lavoro ML su computing autogestito, come le VM di Compute Engine.
Data scientist e machine learning engineer Generativa Supporto dell'IA su Vertex AI (noto anche come genai) fornisce l'accesso all'ampia AI generativa di Google per consentirti di testare, ottimizzare ed eseguire il deployment dei modelli applicazioni basate sull'AI.
Data engineer, data scientist e analisti di dati che hanno familiarità con SQL interfacce BigQuery ML ti consente di sviluppare basati su SQL e sui dati archiviati in BigQuery.

Servizi chiavi

La tabella seguente fornisce una panoramica generale dei servizi di AI e ML:

Servizio Google Descrizione
Cloud Storage e BigQuery Offri opzioni di archiviazione flessibili per i dati di machine learning e artefatti.
BigQuery ML Consente di creare modelli di machine learning direttamente dai dati ospitati all'interno in BigQuery.
Pub/Sub, Dataflow,
Cloud Data Fusion e Dataproc
Supporta l'importazione e l'elaborazione dei dati in batch e in tempo reale. Per maggiori informazioni informazioni, consulta Analisi di dati.
Vertex AI Offre a data scientist e machine learning engineer un'unica piattaforma per creare, addestrare, testare, monitorare, ottimizzare ed eseguire il deployment di modelli ML per qualsiasi cosa: dall'AI generativa alle MLOps.

Ecco alcuni strumenti:
Vertex AI Agent Builder Consente di creare chatbot e motori di ricerca per siti web e per l'utilizzo nei dati aziendali.
  • IA conversazionale attiva Vertex AI Agent Builder può aiutarti a reinventare le interazioni di cliente e dipendente con chatbot e assistenti digitali basati sull'AI generativa. Ad esempio, con strumenti, potete fornire molto di più che semplici informazioni, attivando transazioni dall'esperienza di chat.
  • Aziende Search on Vertex AI Agent Builder, consente alle aziende di creare esperienze di ricerca per clienti e dipendenti sui loro siti web pubblici o privati. Nella oltre a fornire risultati di ricerca multimodali di alta qualità, La Ricerca può anche riepilogare i risultati e fornire citazioni corrispondenti con l'AI generativa.
IA generativa su Vertex AI Accesso ai modelli di IA generativa di grandi dimensioni di Google puoi testarli, ottimizzarli ed eseguirne il deployment per utilizzarli nelle diverse applicazioni. L'IA generativa su Vertex AI è anche nota come genai.
  • Generativa I modelli di AI, noti anche come modelli di base, vengono classificati in base al tipo di contenuti che sono pensati per generare. Questi contenuti includono testo e chat, immagini, codice e incorporamenti di testo.
  • Vertex AI Studio consente di prototipare e testare rapidamente modelli di AI generativa nella console Google Cloud. Puoi testare i prompt di esempio, progettare i tuoi prompt personalizza i modelli di base per gestire attività che soddisfano le esigenze e alle esigenze aziendali.
  • Modello Ottimizzazione: consente di personalizzare i modelli di base per casi d'uso specifici ottimizzandole utilizzando un set di dati di esempi di input-output.
  • Giardinaggio dei modelli fornisce modelli di base di livello enterprise, modelli specifici per le attività e su quelle di livello inferiore.
API preaddestrate
AutoML Fornisce strumenti per modelli personalizzati per creare, eseguire il deployment e scalare i modelli ML. Gli sviluppatori possono caricare i propri dati e utilizzare Servizio AutoML per creare un modello personalizzato.
  • Immagine AutoML: esegue l'esecuzione la classificazione delle immagini e il rilevamento di oggetti sui dati immagine.
  • Video AutoML: esegue l'esecuzione rilevamento di oggetti, classificazione e riconoscimento delle azioni sui dati video.
  • AutoML Text: esegue l'esecuzione classificazione del linguaggio, estrazione di entità e analisi del sentiment sul testo e i dati di Google Cloud.
  • AutoML Translation: rileva e traduce tra coppie di lingue.
  • Tabulare AutoML: consente di creare una di regressione, classificazione o previsione. Destinato ai modelli e i dati di Google Cloud.
AI infrastructure Consente di utilizzare acceleratori AI per elaborare carichi di lavoro ML su larga scala. Questi acceleratori consentono di addestrare e ottenere l'inferenza da modelli di deep learning dai modelli di machine learning in modo conveniente.

Le GPU possono aiutarti con un'inferenza economicamente vantaggiosa e un addestramento di scale-up o scale-out per di machine learning. Tensor Processing Unit (TPU) sono ASIC personalizzati per addestrare ed eseguire reti neurali profonde.
Dialogflow Fornisce agenti virtuali che forniscono un'esperienza di conversazione.
Contact Center AI Il contact center offre un'esperienza di contact center automatizzata e completa con la funzionalità Agent Assist e gli agenti interessati.
Document AI Fornisce la comprensione dei documenti su larga scala per i documenti in generale e per tipi di documenti specifici, ad esempio legati al mutuo casa e all'approvvigionamento documenti.
Lending DocAI Automatizza l'elaborazione di documenti relativi ai mutui. Riduce i tempi di elaborazione semplifica l'acquisizione dei dati supportando al contempo i requisiti normativi e di conformità i tuoi requisiti.
Procurement DocAI Automatizza l'acquisizione dei dati di approvvigionamento su larga scala trasformando i dati non strutturati documenti (come fatture e ricevute) in dati strutturati per aumentare l'efficienza operativa, migliorare la customer experience e informare decisionale responsabile.
Consigli Fornisce consigli personalizzati sui prodotti.
AI di Healthcare Natural Language Consente di rivedere e analizzare documenti medici.
API Media Translation Consente la traduzione in tempo reale di contenuti vocali dai dati audio.

Trattamento dati

Applica le seguenti best practice per l'elaborazione dei dati al tuo ambiente.

Assicurati che i dati soddisfino i requisiti di ML

I dati che utilizzi per il machine learning devono soddisfare determinati requisiti di base, a prescindere dal tipo di dati. Questi requisiti includono la capacità dei dati di prevedere il target, coerenza nella granularità tra i dati utilizzati l'addestramento e i dati utilizzati per la previsione, nonché i dati etichettati con precisione addestramento. Il volume dei dati dovrebbe essere sufficiente. Per maggiori informazioni le informazioni, vedi Trattamento dati.

Archivia i dati tabulari in BigQuery

Se utilizzi dati tabulari, valuta la possibilità di archiviare tutti i dati in BigQuery e utilizzando l'API BigQuery Storage per leggerne i dati. Per semplificare l'interazione con l'API, utilizza una delle gli strumenti, a seconda di dove vuoi leggere i dati:

Il tipo di dati di input determina inoltre gli strumenti disponibili per lo sviluppo del modello. API preaddestrate, AutoML e BigQuery ML possono Offrire ambienti di sviluppo più efficienti in termini di tempo e costi per per alcuni casi d'uso di immagini, video, testo e dati strutturati.

Assicurati di avere dati sufficienti a sviluppare un modello di ML

Per sviluppare un modello di ML utile, devi avere abbastanza dati. Per prevedere una categoria, il numero consigliato di esempi per ogni categoria è dieci volte diverse caratteristiche. Più categorie si desidera prevedere, più dati di cui hai bisogno. I set di dati non bilanciati richiedono ancora più dati. Se non disponi una quantità sufficiente di dati etichettati; considera l'apprendimento semi-supervisionato.

Le dimensioni del set di dati hanno anche implicazioni per l'addestramento e la pubblicazione: se disponi di un set di dati, puoi addestrarlo direttamente all'interno Istanza Notebooks; Se hai set di dati più grandi che richiedono l'addestramento distribuito, usa Servizio di addestramento personalizzato Vertex AI. Se vuoi che Google addestra il modello per i tuoi dati, utilizza AutoML.

Prepara i dati per il consumo

Una buona preparazione dei dati può accelerare lo sviluppo del modello. Quando configuri pipeline di dati, assicurati che sia in grado di elaborare i dati in modalità flusso e batch, in modo da ottenere risultati coerenti da entrambi i tipi di e i dati di Google Cloud.

Sviluppo e addestramento di modelli

Applica le seguenti best practice per lo sviluppo e l'addestramento del modello alla tua completamente gestito di Google Cloud.

Scegli lo sviluppo di modelli gestiti o con addestramento personalizzato

Quando crei il tuo modello, considera il massimo livello di astrazione possibile. Se possibile, usa AutoML per far sì che lo sviluppo e l'addestramento vengono gestite automaticamente. Per i modelli con addestramento personalizzato, scegli le opzioni gestite per scalabilità e flessibilità, invece di opzioni autogestite. Per scoprire di più sulle opzioni di sviluppo dei modelli, consulta Utilizzare gli strumenti e i prodotti consigliati.

Considera le Servizio di addestramento Vertex AI anziché l'addestramento autogestito Compute Engine alle VM Container Deep Learning VM. Per un ambiente JupyterLab, considera Vertex AI Workbench che fornisce ambienti JupyterLab sia gestiti che gestiti dall'utente. Per ulteriori informazioni, vedi Sviluppo del machine learning e Addestramento operativo.

Usa container predefiniti o personalizzati per i modelli con addestramento personalizzato

Per i modelli con addestramento personalizzato Vertex AI, puoi usare container predefiniti o personalizzati a seconda del tuo machine learning e la versione del framework. Container predefiniti sono disponibili per le applicazioni di addestramento Python create per Versioni TensorFlow, scikit-learn, PyTorch e XGBoost.

Altrimenti, puoi scegliere creare un container personalizzato per il tuo job di addestramento. Ad esempio, usa un container personalizzato se vuoi addestrare il modello utilizzando non è disponibile in un container predefinito o se usare un linguaggio di programmazione diverso da Python. Nel tuo elenco container, preinstalla l'applicazione di addestramento e tutte le sue dipendenze di un'immagine che esegue il job di addestramento.

Considera i requisiti di addestramento distribuito

Prendi in considerazione distribuito i tuoi requisiti. Alcuni framework ML, come TensorFlow e PyTorch di eseguire un codice di addestramento identico su più macchine. Questi framework coordinano automaticamente la divisione del lavoro in base a variabili di ambiente vengono impostati su ogni macchina. Altri framework potrebbero richiedere personalizzazione.

Passaggi successivi

Per saperne di più sull'IA e sul machine learning, consulta quanto segue:

Esplora altre categorie nella Framework dell'architettura come affidabilità, eccellenza operativa e sicurezza, privacy e conformità.