Introduzione all'AI e al machine learning in BigQuery
BigQuery ML consente di creare ed eseguire modelli di machine learning (ML) utilizzando query GoogleSQL. I modelli BigQuery ML vengono archiviati nei set di dati BigQuery, in modo simile a tabelle e viste. BigQuery ML ti consente inoltre di accedere ai modelli Vertex AI e alle API Cloud AI per eseguire attività di intelligenza artificiale (IA) come la generazione di testo o la traduzione automatica. Gemini per Google Cloud fornisce anche assistenza basata sull'AI per le attività di BigQuery. Per visualizzare un elenco di funzionalità basate sull'AI in BigQuery, consulta la panoramica di Gemini in BigQuery.
In genere, l'esecuzione di ML o AI su set di dati di grandi dimensioni richiede una vasta conoscenza della programmazione e dei framework ML. Questi requisiti limitano lo sviluppo della soluzione a un gruppo molto ristretto di persone all'interno di ogni azienda ed escludono gli analisti di dati che comprendono i dati, ma hanno conoscenze limitate di ML e programmazione. Tuttavia, con BigQuery ML, gli esperti di SQL possono utilizzare gli strumenti e le competenze SQL esistenti per creare e valutare i modelli e generare risultati da LLM e API Cloud AI.
Puoi utilizzare le funzionalità di BigQuery ML utilizzando quanto segue:
- Nella console Google Cloud
- Lo strumento a riga di comando bq
- L'API REST BigQuery
- Notebook di Colab Enterprise integrati in BigQuery
- Strumenti esterni come un Jupyter Notebook o una piattaforma di business intelligence
Vantaggi di BigQuery ML
BigQuery ML offre diversi vantaggi rispetto ad altri approcci all'utilizzo di ML o AI con un data warehouse basato su cloud:
- BigQuery ML democratizza l'utilizzo del machine learning e dell'IA in quanto permette ai data analyst, gli utenti principali del data warehouse, di creare ed eseguire modelli utilizzando fogli di lavoro e strumenti di business intelligence esistenti. L'analisi predittiva può guidare il processo decisionale aziendale in tutta l'organizzazione.
- Non è necessario programmare una soluzione di ML o AI utilizzando Python o Java. Puoi addestrare i modelli e accedere alle risorse di AI utilizzando SQL, un linguaggio familiare agli analisti di dati.
BigQuery ML aumenta la velocità di sviluppo e di innovazione dei modelli eliminando la necessità di spostare i dati dal data warehouse. BigQuery ML, invece, porta l'ML ai dati, offrendo i seguenti vantaggi:
- Complessità ridotta perché sono necessari meno strumenti.
- Aumento della velocità di produzione perché non è necessario spostare e formattare grandi quantità di dati per i framework ML basati su Python per addestrare un modello in BigQuery.
Per ulteriori informazioni, guarda il video Come accelerare lo sviluppo del machine learning con BigQuery ML.
IA generativa e modelli preaddestrati
Puoi utilizzare modelli remoti per accedere ai modelli Vertex AI e alle API Cloud AI da BigQuery ML per eseguire le seguenti attività:
- IA generativa utilizzando modelli di testo o multimodali di Vertex AI.
- Embedding di testo o multimodale mediante l'utilizzo dei modelli di embedding di Vertex AI.
- Elaborazione del linguaggio naturale utilizzando l'API Cloud Natural Language.
- Traduzione automatica utilizzando l'API Cloud Translation.
- Elaborazione dei documenti utilizzando l'API Document AI.
- Trascrizione audio utilizzando l'API Speech-to-Text.
- Visione artificiale utilizzando l'API Cloud Vision.
Modelli supportati
Un modello in BigQuery ML rappresenta ciò che un sistema di ML ha imparato dai dati di addestramento. Le sezioni seguenti descrivono i tipi di modelli supportati da BigQuery ML.
Modelli addestrati internamente
I seguenti modelli sono integrati in BigQuery ML:
- L'analisi del contributo (Anteprima) serve a determinare l'effetto di una o più dimensioni sul valore di una determinata metrica. Ad esempio, puoi vedere l'effetto della posizione del negozio e della data di vendita sulle entrate del negozio. Per ulteriori informazioni, consulta la panoramica dell'analisi dei contributi.
- La regressione lineare consente di prevedere il valore di una metrica numerica per i nuovi dati utilizzando un modello addestrato su dati remoti simili. Le etichette sono di tipo reale, il che significa che non possono essere infinito positivo, infinito negativo o NaN (Not a Number).
- La regressione logistica è utilizzata per la classificazione di due o più valori possibili, ad esempio se un input è
low-value
,medium-value
ohigh-value
. Le etichette possono avere fino a 50 valori univoci. - Il clustering K-means è destinato alla segmentazione dei dati. Ad esempio, questo modello identifica i segmenti di clienti. K-means è una tecnica di apprendimento non supervisionato, pertanto l'addestramento del modello non richiede etichette o dati suddivisi per l'addestramento o la valutazione.
- La fattorizzazzione matriciale è utilizzata per creare sistemi di consigli sui prodotti. Puoi creare consigli sui prodotti utilizzando il comportamento storico dei clienti, le transazioni e le valutazioni dei prodotti, per poi utilizzarli per esperienze personalizzate dei clienti.
- L'analisi delle componenti principali (PCA) è il processo di calcolo delle componenti principali e del loro utilizzo per eseguire una variazione di base nei dati. Viene comunemente utilizzato per la riduzione della dimensionalità proiettando ogni punto dati solo sui primi componenti principali per ottenere dati di dimensioni inferiori, preservando al contempo il più possibile la variazione dei dati.
- Serie temporali è per eseguire previsioni delle serie temporali. Puoi utilizzare questa funzionalità per creare milioni di modelli di serie temporali e utilizzarli per le previsioni. Il modello gestisce automaticamente anomalie, stagionalità e festività.
Puoi eseguire un simulacro sulle istruzioni CREATE MODEL
per i modelli addestrati internamente per ottenere una stima della quantità di dati che verranno elaborati se li esegui.
Modelli addestrati esternamente
I seguenti modelli sono esterni a BigQuery ML e addestrati in Vertex AI:
- La rete neurale profonda (DNN) è utilizzata per creare reti neurali profonde basate su TensorFlow per i modelli di classificazione e regressione.
- Wide & Deep è utile per problemi generici di regressione e classificazione su larga scala con input sparsi (caratteristiche categoriche con un elevato numero di possibili valori per caratteristica), come motori per suggerimenti, ricerca e problemi di classificazione.
- Autoencoder è destinato alla creazione di modelli basati su TensorFlow con il supporto di rappresentazioni di dati sparsi. Puoi utilizzare i modelli in BigQuery ML per attività come il rilevamento di anomalie non supervisionato e la riduzione della dimensionalità non lineare.
- Boosted Tree serve per creare modelli di classificazione e regressione basati su XGBoost.
- La foresta casuale consente di costruire alberi decisionali con più metodi di apprendimento per la classificazione, la regressione e altre attività durante l'addestramento.
- AutoML è un servizio di ML supervisionato che crea ed esegue il deployment di modelli di classificazione e regressione su dati tabulari con elevata velocità e scalabilità.
Non puoi eseguire un esercizio guidato sulle istruzioni CREATE MODEL
per i modelli addestrati esternamente per ottenere una stima della quantità di dati che verranno elaborati se li esegui.
Modelli remoti
Puoi creare
modelli remoti
in BigQuery che utilizzano modelli di cui è stato eseguito il deployment in Vertex AI.
Fai riferimento al modello di cui è stato eseguito il deployment specificando il suo
endpoint HTTPS
nell'istruzione CREATE MODEL
del modello remoto.
Le istruzioni CREATE MODEL
per i modelli remoti non elaborano byte e non comportano addebiti di BigQuery.
Modelli importati
BigQuery ML ti consente di importare modelli personalizzati addestrati al di fuori di BigQuery ed eseguire previsioni al suo interno. Puoi importare i seguenti modelli in BigQuery da Cloud Storage:
- Open Neural Network Exchange (ONNX) è un formato standard aperto per la rappresentazione dei modelli ML. Con ONNX, puoi rendere disponibili in BigQuery ML i modelli addestrati con framework di ML comuni come PyTorch e scikit-learn.
- TensorFlow è una libreria software gratuita e open source per il ML e l'IA. Puoi utilizzare TensorFlow per una serie di attività, ma è incentrato in modo particolare sull'addestramento e sull'inferenza delle reti neurali profonde. Puoi caricare i modelli TensorFlow addestrati in precedenza in BigQuery come modelli BigQuery ML ed eseguire la previsione in BigQuery ML.
- TensorFlow Lite è una versione leggera di TensorFlow per il deployment su dispositivi mobili, microcontroller e altri dispositivi edge. TensorFlow ottimizza i modelli TensorFlow esistenti per ridurre le dimensioni dei modelli e per l'inferenza più rapida.
- XGBoost è una libreria di boosting del gradiente distribuito ottimizzata progettata per essere altamente efficiente, flessibile e portabile. Implementa algoritmi di ML nel framework di boosting del gradiente.
Le istruzioni CREATE MODEL
per i modelli importati non elaborano byte e non comportano addebiti di BigQuery.
In BigQuery ML, puoi utilizzare un modello con i dati di più set di dati BigQuery per l'addestramento e la previsione.
Guida alla selezione del modello
Scarica l'albero decisionale per la selezione del modello.
BigQuery ML e Vertex AI
BigQuery ML si integra con Vertex AI, la piattaforma end-to-end per l'AI e il ML in Google Cloud. Puoi registrare i tuoi modelli BigQuery ML in Model Registry per eseguirne il deployment negli endpoint per le previsioni online. Per ulteriori informazioni, consulta quanto segue:
- Per scoprire di più sull'utilizzo dei modelli BigQuery ML con Vertex AI, consulta Gestire i modelli BigQuery ML con Vertex AI.
- Se non hai dimestichezza con Vertex AI e vuoi saperne di più su come si integra con BigQuery ML, consulta Vertex AI per gli utenti di BigQuery.
- Guarda il video Come semplificare i modelli di IA con Vertex AI e BigQuery ML.
BigQuery ML e Colab Enterprise
Ora puoi utilizzare i notebook Colab Enterprise per eseguire flussi di lavoro di ML in BigQuery. Notebooks ti consentono di utilizzare SQL, Python e altri linguaggi e librerie di uso comune per svolgere le tue attività di ML. Per ulteriori informazioni, vedi Creare notebook.
Aree geografiche supportate
BigQuery ML è supportato nelle stesse regioni di BigQuery. Per ulteriori informazioni, consulta Località di BigQuery ML.
Prezzi
Ti vengono addebitate le risorse di calcolo che utilizzi per addestrare i modelli e per eseguire query sui modelli. Il tipo di modello che crei influisce sul luogo in cui viene addestrato e sui prezzi applicabili a questa operazione. Le query contro i modelli vengono sempre eseguite in BigQuery e utilizzano i prezzi di calcolo di BigQuery. Poiché i modelli remoti effettuano chiamate ai modelli Vertex AI, anche le query sui modelli remoti comportano addebiti da Vertex AI.
Ti vengono addebitati gli importi per lo spazio di archiviazione utilizzato dai modelli addestrati in base ai prezzi di archiviazione di BigQuery.
Per ulteriori informazioni, consulta Prezzi di BigQuery ML.
Quote
Oltre ai limiti specifici di BigQuery ML, le query che utilizzano le funzioni e le istruzioni CREATE MODEL
di BigQuery ML sono soggette alle quote e ai limiti dei job di query di BigQuery.
Limitazioni
- BigQuery ML non è disponibile nella versione Standard.
- BigQuery ML non attiva gli slot di scalabilità automatica. Devi impostare una quantità di slot di base per utilizzare BigQuery ML con una versione di BigQuery. Questa limitazione si applica solo ai modelli addestrati esternamente, non a quelli addestrati internamente. Per ulteriori informazioni sui tipi di modelli, consulta Modelli supportati.
Passaggi successivi
- Per iniziare a utilizzare BigQuery ML, consulta Creare modelli di machine learning in BigQuery ML.
- Per scoprire di più sul machine learning e su BigQuery ML, consulta le seguenti risorse:
- Corso Applicare il machine learning ai dati con Google Cloud su Coursera
- Programma di formazione sull'analisi intelligente e sulla gestione dei dati
- Machine Learning Crash Course
- Glossario del machine learning
- Per scoprire di più su MLOps con Model Registry, consulta Gestire i modelli BigQuery ML in Vertex AI.