Questa pagina mostra come valutare i modelli di classificazione e regressione AutoML.
Vertex AI fornisce metriche di valutazione dei modelli per aiutarti a determinare le prestazioni dei tuoi modelli, ad esempio le metriche di precisione e richiamo. Vertex AI calcola le metriche di valutazione utilizzando il set di test.
Prima di iniziare
Prima di poter valutare il modello, devi addestrarlo.
Come utilizzare le metriche di valutazione del modello
Le metriche di valutazione del modello forniscono misurazioni quantitative del rendimento del modello sul set di test. L'interpretazione e l'utilizzo di queste metriche dipendono dalle esigenze aziendali e dal problema che il modello è addestrato a risolvere. Ad esempio, potresti avere una tolleranza più bassa per i falsi positivi rispetto ai falsi negativi o viceversa. Questo tipo di domande influisce sulle metriche su cui ti concentrerai.
Ottenere le metriche di valutazione
Puoi ottenere un insieme aggregato di metriche di valutazione per il tuo modello e, per alcuni scopi, le metriche di valutazione per una determinata classe o etichetta. Le metriche di valutazione per una determinata classe o etichetta sono note anche come sezione di valutazione. I seguenti contenuti descrivono come ottenere metriche di valutazione aggregate e segmenti di valutazione utilizzando la console o l'API Google Cloud.
Console Google Cloud
Nella console Google Cloud, nella sezione Vertex AI, vai alla pagina Modelli.
Nel menu a discesa Regione, seleziona la regione in cui si trova il modello.
Nell'elenco dei modelli, fai clic sul modello per aprire la scheda Valuta.
Nella scheda Valuta puoi visualizzare le metriche di valutazione aggregate del modello, ad esempio Precisione media e Richiamo.
Se lo scopo del modello ha sezioni di valutazione, la console mostra un elenco di etichette. Puoi fare clic su un'etichetta per visualizzare le metriche di valutazione relative all'etichetta, come mostrato nell'esempio seguente:
API
Le richieste API per ottenere le metriche di valutazione sono le stesse per ogni tipo di dati e scopo, ma gli output sono diversi. I seguenti esempi mostrano la stessa richiesta, ma risposte diverse.
Ottenere le metriche di valutazione del modello aggregate
Le metriche di valutazione del modello aggregato forniscono informazioni sul modello nel suo insieme. Per visualizzare informazioni su una sezione specifica, elenca le sezioni di valutazione del modello.
Per visualizzare le metriche di valutazione del modello aggregate, utilizza il metodo
projects.locations.models.evaluations.get
.
Seleziona la scheda di seguito relativa al tuo scopo:
Classificazione
Vertex AI restituisce un array di metriche di confidenza. Ogni elemento mostra le metriche di valutazione con un valore confidenceThreshold
diverso (da 0 a 1). Se visualizzi valori di soglia diversi, puoi vedere in che modo la soglia influisce su altre metriche, come precisione e richiamo.
Seleziona una scheda corrispondente alla tua lingua o al tuo ambiente:
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- LOCATION: regione in cui è archiviato il modello.
- PROJECT: il tuo ID progetto.
- MODEL_ID: l'ID della risorsa modello.
- PROJECT_NUMBER: il numero del progetto generato automaticamente.
- EVALUATION_ID: ID per la valutazione del modello (viene visualizzato nella risposta).
Metodo HTTP e URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione Node.js riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare o aggiornare l'SDK Vertex AI per Python, consulta Installare l'SDK Vertex AI per Python. Per saperne di più, consulta la documentazione di riferimento dell'API Python.
Regressione
Seleziona una scheda corrispondente alla tua lingua o al tuo ambiente:
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- LOCATION: regione in cui è archiviato il modello.
- PROJECT: il tuo ID progetto.
- MODEL_ID: l'ID della risorsa modello.
- PROJECT_NUMBER: il numero del progetto generato automaticamente.
- EVALUATION_ID: ID per la valutazione del modello (viene visualizzato nella risposta).
Metodo HTTP e URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione Node.js riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare o aggiornare l'SDK Vertex AI per Python, consulta Installare l'SDK Vertex AI per Python. Per saperne di più, consulta la documentazione di riferimento dell'API Python.
Elenca tutte le sezioni di valutazione (solo modelli di classificazione)
Il metodo
projects.locations.models.evaluations.slices.list
elenca tutte le sezioni di valutazione per il modello. Devi avere l'ID valutazione del modello, che puoi ottenere quando visualizzi le metriche di valutazione aggregate.
Puoi utilizzare le sezioni di valutazione del modello per determinare il rendimento del modello per un'etichetta specifica. Il campo value
indica a quale etichetta si riferiscono le metriche.
Vertex AI restituisce un array di metriche di confidenza. Ogni elemento mostra le metriche di valutazione con un valore confidenceThreshold
diverso (da 0 a 1). Visualizzando diversi valori di soglia, puoi vedere in che modo la soglia influisce su altre metriche, come precisione e richiamo.
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- LOCATION: regione in cui si trova il modello. Ad esempio,
us-central1
. - PROJECT: il tuo ID progetto.
- MODEL_ID: l'ID del modello.
- EVALUATION_ID: ID della valutazione del modello che contiene le sezioni di valutazione da elencare.
Metodo HTTP e URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione Node.js riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare o aggiornare l'SDK Vertex AI per Python, consulta Installare l'SDK Vertex AI per Python. Per saperne di più, consulta la documentazione di riferimento dell'API Python.
Ottenere le metriche per un singolo segmento
Per visualizzare le metriche di valutazione per un singolo segmento, utilizza il metodo
projects.locations.models.evaluations.slices.get
. Devi disporre dell'ID della frazione, che viene fornito quando elenchi tutte le frazioni. Il seguente esempio si applica a tutti i tipi di dati e scopi.
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- LOCATION: regione in cui si trova il modello. Ad esempio, us-central1.
- PROJECT: il tuo ID progetto.
- MODEL_ID: l'ID del modello.
- EVALUATION_ID: ID della valutazione modello contenente la sezione di valutazione da recuperare.
- SLICE_ID: ID di un segmento di valutazione da ottenere.
- PROJECT_NUMBER: il numero del progetto generato automaticamente.
- EVALUATION_METRIC_SCHEMA_FILE_NAME: il nome di un file schema
che definisce le metriche di valutazione da restituire, ad esempio
classification_metrics_1.0.0
.
Metodo HTTP e URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices/SLICE_ID
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices/SLICE_ID"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices/SLICE_ID" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione Node.js riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare o aggiornare l'SDK Vertex AI per Python, consulta Installare l'SDK Vertex AI per Python. Per saperne di più, consulta la documentazione di riferimento dell'API Python.
Metriche di valutazione del modello
Vertex AI restituisce diverse metriche di valutazione, come precisione, richiamo e soglie di confidenza. Le metriche che Vertex AI restituisce dipendono dall'obiettivo del modello. Ad esempio, Vertex AI fornisce metriche di valutazione diverse per un modello di classificazione di immagini rispetto a un modello di rilevamento di oggetti immagine.
Un file schema determina le metriche di valutazione fornite da Vertex AI per ogni scopo.
Puoi visualizzare e scaricare i file dello schema dalla seguente posizione Cloud Storage:
gs://google-cloud-aiplatform/schema/modelevaluation/
Le metriche di valutazione sono:
Classificazione
- AuPRC: l'area sotto la curva di precisione-richiamo (PR), chiamata anche precisione mediana. Il valore va da zero a uno, dove un valore più elevato indica un modello di qualità superiore.
- AuROC: l'area sotto la curva della caratteristica operativa del ricevitore. L'intervallo varia da zero a uno, dove un valore più elevato indica un modello di qualità superiore.
- Perdita logaritmica: l'entropia incrociata tra le previsioni del modello e i valori target. L'intervallo varia da zero a infinito, dove un valore più basso indica un modello di qualità superiore.
- Soglia di confidenza: un punteggio di confidenza che determina quali predizioni restituire. Un modello restituisce previsioni uguali o superiori a questo valore. Una soglia di confidenza più alta aumenta la precisione, ma riduce il richiamo. Vertex AI restituisce le metriche di affidabilità a diversi valori di soglia per mostrare in che modo la soglia influisce sulla precisione e sul richiamo.
- Richiamo: la frazione di previsioni con questa classe che sono state previste correttamente dal modello. Chiamato anche tasso di veri positivi.
- Richiamo a 1: il richiamo (tasso di veri positivi) se si considera solo l'etichetta con il punteggio di previsione più alto e non al di sotto della soglia di confidenza per ogni esempio.
- Precisione: la frazione delle previsioni di classificazione prodotte dal modello che sono risultate corrette.
- Precisione a 1: la precisione quando si considera solo l'etichetta con il punteggio di previsione più alto e non al di sotto della soglia di confidenza per ogni esempio.
- Punteggio F1: la media armonica di precisione e richiamo. F1 è una metrica utile per trovare un equilibrio tra precisione e richiamo qualora esista una distribuzione non uniforme delle classi.
- Punteggio F1 pari a 1: la media armonica del richiamo pari a 1 e della precisione pari a 1.
- Conteggio veri negativi: il numero di volte in cui un modello ha previsto correttamente una classe negativa.
- Conteggio dei veri positivi: il numero di volte in cui un modello ha previsto correttamente una classe positiva.
- Conteggio falsi negativi: il numero di volte in cui un modello ha previsto erroneamente una classe negativa.
- Conteggio falsi positivi: il numero di volte in cui un modello ha previsto erroneamente una classe positiva.
- Tasso di falsi positivi: la frazione di risultati previsti in modo errato rispetto a tutti i risultati previsti.
- Tasso di falsi positivi pari a 1: il tasso di falsi positivi se si considera solo l'etichetta con il punteggio di previsione più alto e non al di sotto della soglia di affidabilità per ogni esempio.
- Matrice di confusione: una matrice di confusione mostra la frequenza con cui un modello ha previsto correttamente un risultato. Per i risultati previsti in modo errato, la matrice mostra invece ciò che è stato previsto dal modello. La matrice di confusione ti aiuta a capire dove il tuo modello "confonde" due risultati.
- Attribuzioni delle funzionalità del modello: Vertex AI mostra l'impatto di ciascuna caratteristica su un modello. I valori sono forniti sotto forma percentuale per ogni caratteristica: più alta è la percentuale, maggiore è l'impatto della caratteristica sull' addestramento del modello. Esamina queste informazioni per assicurarti che tutte le funzionalità più importanti abbiano senso per i dati in uso e per il problema aziendale. Per scoprire di più, consulta Attribuzione delle funzionalità per la classificazione e la regressione.
Regressione
- MAE: l'errore medio assoluto (MAE) indica la differenza media assoluta tra i valori target e quelli previsti. Questa metrica va da zero a infinito e un valore inferiore indica un modello di qualità superiore.
- RMSE: l'errore quadratico medio della radice è la radice quadrata della media dei quadrati delle differenze tra i valori di destinazione e quelli previsti. L'RMSE è più sensibile agli outlier rispetto al MAE. Di conseguenza,se la preoccupazione principale riguarda gli errori di grande entità, l'RMSE può essere una metrica più utile da valutare. Analogamente al MAE, un valore minore indica un modello di qualità migliore (0 rappresenta un predittore perfetto).
- RMSLE: la metrica dell'errore logaritmico quadratico medio è simile all'RMSE, con la differenza che utilizza il logaritmo naturale dei valori previsti ed effettivi più 1. Penalizza in misura maggiore la sottoprevisione rispetto alla sovraprevisione. Può essere una buona metrica anche nel caso in cui non si voglia penalizzare più pesantemente le differenze per i valori di previsione elevati rispetto a quelli ridotti. Questa metrica va da zero a infinito e un valore inferiore indica un modello di qualità superiore. La metrica di valutazione RMSLE viene restituita solo se tutti i valori previsti e tutte le etichette sono non negativi.
- r^2: r al quadrato (r^2) è il quadrato del coefficiente di correlazione Pearson tra le etichette e i valori previsti. Questa metrica va da zero a uno. Un valore più alto indica una migliore approssimazione alla retta di regressione.
-
MAPE: l'errore percentuale assoluto medio (MAPE) corrisponde alla differenza percentuale media assoluta tra le etichette e i valori previsti. Questa metrica va da zero a infinito, dove un valore più basso indica un modello di qualità migliore.
Il MAPE non viene mostrato se la colonna di destinazione contiene valori 0. In questo caso, il MAPE non è definito. - Attribuzioni delle funzionalità del modello: Vertex AI mostra l'impatto di ciascuna funzionalità su un modello. I valori sono forniti sotto forma percentuale per ogni caratteristica: più alta è la percentuale, maggiore è l'impatto della caratteristica sull'addestramento del modello. Esamina queste informazioni per assicurarti che tutte le funzionalità più importanti abbiano senso per i dati in uso e per il problema aziendale. Per scoprire di più, consulta Attribuzione delle funzionalità per la classificazione e la regressione.
Passaggi successivi
Quando è tutto pronto per fare previsioni con il tuo modello di classificazione o regressione, hai due opzioni:
- Esegui previsioni online (in tempo reale) utilizzando il tuo modello.
- Ottieni previsioni batch direttamente dal modello.
Inoltre, puoi:
- Visualizza l'architettura del modello.
- Scopri come esportare il modello.