Vertex AI Model Monitoring per le previsioni batch

Questa pagina descrive come configurare richieste di job di previsione batch per includere l'analisi di Model Monitoring una tantum. Per le previsioni batch, Model Monitoring supporta il rilevamento del disallineamento delle caratteristiche per le caratteristiche di input categoriche e numeriche.

Per creare un job di previsione batch con l'analisi del disallineamento di Model Monitoring, devi includere nella richiesta sia i dati di input della previsione batch sia i dati di addestramento originali per il modello. Puoi aggiungere l'analisi di Model Monitoring solo quando crei nuovi job di previsione batch.

Per ulteriori informazioni sul disallineamento, consulta Introduzione al monitoraggio dei modelli.

Per istruzioni su come configurare il monitoraggio dei modelli per le previsioni online (in tempo reale), consulta Utilizzo del monitoraggio dei modelli.

Prerequisiti

Per utilizzare Model Monitoring con previsioni batch, completa quanto segue:

  1. Disporre di un modello disponibile in Vertex AI Model Registry che sia di tipo AutoML tabulare o addestramento personalizzato tabulare.

  2. Carica i dati di addestramento in Cloud Storage o BigQuery e ottieni il link URI ai dati.

    • Per i modelli addestrati con AutoML, puoi utilizzare invece l'ID del set di dati per il set di dati di addestramento.
  3. Model Monitoring confronta i dati di addestramento con l'output della previsione batch. Assicurati di utilizzare formati file supportati per l'output dei dati di addestramento e della previsione batch:

    Tipo di modello Dati di addestramento Output di previsione batch
    Addestrato dal cliente CSV, JSONL, BigQuery, TfRecord(tf.train.Example) JSONL
    Dati tabulari AutoML CSV, JSONL, BigQuery, TfRecord(tf.train.Example) CSV, JSONL, BigQuery, TfRecord(Protobuf.Value)
  4. (Facoltativo) Per i modelli con addestramento personalizzato, carica lo schema del tuo modello in Cloud Storage. Model Monitoring richiede lo schema per calcolare la distribuzione di base per il rilevamento del disallineamento.

Richiedi una previsione batch

Puoi utilizzare i seguenti metodi per aggiungere configurazioni di monitoraggio dei modelli ai job di previsione batch:

Console

Segui le istruzioni per effettuare una richiesta di previsione batch con il monitoraggio dei modelli abilitato:

API REST

Segui le istruzioni per effettuare una richiesta di previsione batch utilizzando l'API REST:

Quando crei la richiesta di previsione batch, aggiungi la seguente configurazione di monitoraggio dei modelli al corpo JSON della richiesta:

"modelMonitoringConfig": {
 "alertConfig": {
   "emailAlertConfig": {
     "userEmails": "EMAIL_ADDRESS"
   },
  "notificationChannels": [NOTIFICATION_CHANNELS]
 },
 "objectiveConfigs": [
   {
     "trainingDataset": {
       "dataFormat": "csv",
       "gcsSource": {
         "uris": [
           "TRAINING_DATASET"
         ]
       }
     },
     "trainingPredictionSkewDetectionConfig": {
       "skewThresholds": {
         "FEATURE_1": {
           "value": VALUE_1
         },
         "FEATURE_2": {
           "value": VALUE_2
         }
       }
     }
   }
 ]
}

dove:

  • EMAIL_ADDRESS è l'indirizzo email a cui vuoi ricevere avvisi da Model Monitoring. Ad esempio, example@example.com.

  • NOTIFICATION_CHANNELS: un elenco di canali di notifica di Cloud Monitoring in cui vuoi ricevere avvisi da Model Monitoring. Utilizza i nomi delle risorse per i canali di notifica, che puoi recuperare elenchi i canali di notifica nel tuo progetto. Ad esempio: "projects/my-project/notificationChannels/1355376463305411567", "projects/my-project/notificationChannels/1355376463305411568".

  • TRAINING_DATASET è il link al set di dati di addestramento archiviato in Cloud Storage.

    • Per utilizzare un link a un set di dati di addestramento BigQuery, sostituisci il campo gcsSource con quanto segue:
    "bigquerySource": {
        {
          "inputUri": "TRAINING_DATASET"
        }
     }
    
    • Per utilizzare un link a un modello AutoML, sostituisci il campo gcsSource con quanto segue:
    "dataset": "TRAINING_DATASET"
  • FEATURE_1:VALUE_1 e FEATURE_2:VALUE_2 è la soglia di avviso per ogni caratteristica da monitorare. Ad esempio, se specifichi Age=0.4, Model Monitoring registra un avviso quando la distanza statistica tra le distribuzioni di input e di riferimento per la funzionalità Age supera 0,4. Per impostazione predefinita, ogni caratteristica categorica e numerica viene monitorata con valori di soglia pari a 0,3.

Per ulteriori informazioni sulle configurazioni di monitoraggio dei modelli, consulta il riferimento del job di Monitoring.

Python

Consulta il blocco note di esempio per eseguire un job di previsione batch con il monitoraggio dei modelli per un modello tabulare personalizzato.

Model Monitoring ti avvisa automaticamente via email degli aggiornamenti sulle offerte e degli avvisi.

Metriche di disallineamento degli accessi

Puoi utilizzare i seguenti metodi per accedere alle metriche di disallineamento per i job di previsione batch:

Console (istogramma)

Utilizza la console Google Cloud per visualizzare gli istogrammi della distribuzione delle caratteristiche per ogni caratteristica monitorata e scoprire quali modifiche hanno causato un disallineamento nel tempo:

  1. Vai alla pagina Previsioni batch:

    Vai alle previsioni batch

  2. Nella pagina Previsioni batch, fai clic sul job di previsione batch da analizzare.

  3. Fai clic sulla scheda Avvisi di monitoraggio dei modelli per visualizzare un elenco delle caratteristiche di input del modello, insieme alle informazioni pertinenti, come la soglia di avviso per ogni caratteristica.

  4. Per analizzare un elemento, fai clic sul suo nome. Una pagina mostra gli istogrammi della distribuzione delle caratteristiche per quella caratteristica.

    La visualizzazione della distribuzione dei dati sotto forma di istogrammi ti consente di concentrarti rapidamente sui cambiamenti che si sono verificati nei dati. In seguito, potresti decidere di modificare la pipeline di generazione delle caratteristiche o di riaddestrare il modello.

    Istogrammi che mostrano la distribuzione dei dati di input di esempio e la distribuzione dei dati di addestramento per il rilevamento del disallineamento.

Console (file JSON)

Utilizza la console Google Cloud per accedere alle metriche in formato JSON:

  1. Vai alla pagina Previsioni batch:

    Vai alle previsioni batch

  2. Fai clic sul nome del job di monitoraggio della previsione batch.

  3. Fai clic sulla scheda Proprietà di monitoraggio.

  4. Fai clic sul link Directory di output di Monitoring, che ti indirizza a un bucket Cloud Storage.

  5. Fai clic sulla cartella metrics/.

  6. Fai clic sulla cartella skew/.

  7. Fai clic sul file feature_skew.json, che ti indirizza alla pagina Dettagli oggetto.

  8. Apri il file JSON utilizzando una delle seguenti opzioni:

  • Fai clic su Scarica e apri il file nel tuo editor di testo locale.

  • Utilizza il percorso del file URI gsutil per eseguire gsutil cat GSUTIL_URI in Cloud Shell o nel tuo terminale locale.

Il file feature_skew.json include un dizionario in cui la chiave è il nome della caratteristica e il valore è il disallineamento delle caratteristiche. Ad esempio:

{
  "cnt_ad_reward": 0.670936,
  "cnt_challenge_a_friend": 0.737924,
  "cnt_completed_5_levels": 0.549467,
  "month": 0.293332,
  "operating_system": 0.05758,
  "user_pseudo_id": 0.1
}

Python

Consulta il blocco note di esempio per accedere alle metriche di disallineamento per un modello tabulare personalizzato dopo l'esecuzione di un job di previsione batch con Model Monitoring.

Debug degli errori di monitoraggio della previsione batch

Se il job di monitoraggio della previsione batch non va a buon fine, puoi trovare i log di debug nella console Google Cloud:

  1. Vai alla pagina Previsioni batch.

    Vai alle previsioni batch

  2. Fai clic sul nome del job di monitoraggio della previsione batch non riuscito.

  3. Fai clic sulla scheda Proprietà di monitoraggio.

  4. Fai clic sul link Directory di output di Monitoring, che ti indirizza a un bucket Cloud Storage.

  5. Fai clic sulla cartella logs/.

  6. Fai clic su uno dei file .INFO per passare alla pagina Dettagli oggetto.

  7. Apri il file di log utilizzando una delle seguenti opzioni:

    • Fai clic su Scarica e apri il file nel tuo editor di testo locale.

    • Utilizza il percorso dell'URI gsutil per eseguire gsutil cat GSUTIL_URI in Cloud Shell o nel tuo terminale locale.

Tutorial sul blocco note

Scopri di più su come utilizzare Vertex AI Model Monitoring per ottenere visualizzazioni e statistiche per i modelli con questi tutorial end-to-end.

AutoML

Valore personalizzato

Modelli XGBoost

Attribuzioni delle caratteristiche di Vertex Explainable AI

Previsioni in batch

Configurazione per i modelli tabulari

Passaggi successivi