Panoramica della valutazione dei modelli di BigQuery ML
Questo documento descrive in che modo BigQuery ML supporta la valutazione dei modelli di machine learning (ML).
Panoramica della valutazione dei modelli
Puoi utilizzare le metriche di valutazione dei modelli ML per i seguenti scopi:
- Valutare la qualità dell'adattamento tra il modello e i dati.
- Confrontare modelli diversi.
- Prevedere con quale precisione ogni modello può essere eseguito su un set di dati specifico, nel contesto della selezione del modello.
Le valutazioni dei modelli di apprendimento supervisionato e non supervisionato funzionano in modo diverso:
- Per i modelli di apprendimento supervisionato, la valutazione del modello è ben definita. Un set di valutazione, ovvero i dati che non sono stati analizzati dal modello, viene in genere escluso dal set di addestramento e poi utilizzato per valutare le prestazioni del modello. Ti consigliamo di non utilizzare il set di addestramento per la valutazione, perché in questo modo il modello avrà prestazioni scadenti quando generalizza i risultati della previsione per i nuovi dati. Questo risultato è noto come overfitting.
- Per i modelli di apprendimento non supervisionato, la valutazione del modello è meno definita e in genere varia da modello a modello. Poiché i modelli di apprendimento non supervisionato non riservano un set di valutazione, le metriche di valutazione vengono calcolate utilizzando l'intero set di dati di input.
Offerte di valutazione dei modelli
BigQuery ML fornisce le seguenti funzioni per calcolare le metriche di valutazione per i modelli ML:
| Categoria di modello | Tipi di modello | Funzioni di valutazione del modello | Cosa fa la funzione |
|---|---|---|---|
| Apprendimento supervisionato | Regressione lineare Regressore di alberi potenziati Regressore di foreste casuali Regressore DNN Regressore Wide & Deep Regressore di AutoML Tables |
ML.EVALUATE |
Riporta le seguenti metriche:
|
| Regressione logistica Classificatore di alberi potenziati Classificatore di foreste casuali Classificatore DNN Classificatore Wide & Deep Classificatore di AutoML Tables |
ML.EVALUATE |
Riporta le seguenti metriche:
|
|
ML.CONFUSION_MATRIX |
Riporta la matrice di confusione. | ||
ML.ROC_CURVE |
Riporta le metriche per diversi valori di soglia, tra cui:
Si applica solo ai modelli di classificazione binaria. |
||
| Apprendimento non supervisionato | K-means | ML.EVALUATE |
Riporta l'indice di Davies-Bouldin e la distanza quadratica media tra i punti dati e i centroidi dei cluster assegnati. |
| Fattorizzazione matriciale | ML.EVALUATE |
Per i modelli basati sul feedback esplicito, riporta le seguenti metriche:
|
|
Per i modelli basati sul feedback implicito, riporta le seguenti metriche:
|
|||
| PCA | ML.EVALUATE |
Riporta la percentuale di varianza totale spiegata. | |
| Autoencoder | ML.EVALUATE |
Riporta le seguenti metriche:
|
|
| Serie temporale | ARIMA_PLUS | ML.EVALUATE
| Riporta le seguenti metriche:
Questa funzione richiede nuovi dati come input. |
ML.ARIMA_EVALUATE
| Riporta le seguenti metriche per tutti i modelli candidati ARIMA
caratterizzati da diverse tuple (p, d, q, has_drift):
Riporta anche altre informazioni su stagionalità, effetti delle festività, e outlier di picchi e cali. Questa funzione non richiede nuovi dati come input. |
Valutazione automatica nelle istruzioni CREATE MODEL
BigQuery ML supporta la valutazione automatica durante la creazione del modello. A seconda del tipo di modello, delle opzioni di addestramento della suddivisione dei dati e dell'utilizzo o meno dell'ottimizzazione degli iperparametri, le metriche di valutazione vengono calcolate in base al set di dati di valutazione riservato, al set di dati di test riservato o all'intero set di dati di input.
Per i modelli K-means, PCA, autoencoder e ARIMA_PLUS, BigQuery ML utilizza tutti i dati di input come dati di addestramento e le metriche di valutazione vengono calcolate rispetto all'intero set di dati di input.
Per i modelli di regressione lineare e regressione logistica, alberi potenziati, foreste casuali, DNN, Wide & Deep e fattorizzazione matriciale, le metriche di valutazione vengono calcolate rispetto al set di dati specificato dalle seguenti opzioni
CREATE MODEL:Quando addestri questi tipi di modelli utilizzando l'ottimizzazione degli iperparametri, l'opzione
DATA_SPLIT_TEST_FRACTIONti aiuta anche a definire il set di dati rispetto al quale vengono calcolate le metriche di valutazione. Per ulteriori informazioni, consulta Suddivisione dei dati.Per i modelli di AutoML Tables, consulta Informazioni sulle suddivisioni di dati per i modelli AutoML.
Per ottenere le metriche di valutazione calcolate durante la creazione del modello, utilizza funzioni di valutazione come ML.EVALUATE sul modello senza specificare dati di input.
Per un esempio, consulta
ML.EVALUATE senza dati di input specificati.
Valutazione con un nuovo set di dati
Dopo la creazione del modello, puoi specificare nuovi set di dati per la valutazione. Per fornire un nuovo set di dati, utilizza funzioni di valutazione come ML.EVALUATE sul modello con i dati di input specificati. Per un esempio, consulta
ML.EVALUATE con una soglia personalizzata e dati di input.
Valutare i risultati di qualsiasi modello di regressione o classificazione
La funzione
ML.METRICSconsente di calcolare le metriche di valutazione per le attività di classificazione o regressione ML
su qualsiasi tabella o query che
contenga valori effettivi e previsti. Questa funzione consente di valutare le previsioni senza dover creare o fare riferimento a un modello archiviato.
Passaggi successivi
Per ulteriori informazioni sulle istruzioni e le funzioni SQL supportate per i modelli che supportano la valutazione, consulta i seguenti documenti: