Vertex AI Model Monitoring per previsioni batch

In questa pagina viene descritto come configurare le richieste di job di previsione batch per includere un'analisi del monitoraggio dei modelli una tantum. Per le previsioni batch, Model Monitoring supporta il rilevamento del disallineamento delle caratteristiche per le funzionalità di input categorico e numerico.

Per creare un job di previsione batch con l'analisi del disallineamento del monitoraggio dei modelli, 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 del monitoraggio dei modelli solo quando crei nuovi job di previsione batch.

Per ulteriori informazioni sul disallineamento, consulta la pagina 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 il monitoraggio dei modelli con previsioni batch, completa quanto segue:

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

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

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

    Tipo di modello Dati di addestramento Output di previsione batch
    Addestrato dal cliente CSV, JSONL, BigQuery, TfRecord(tf.train.Example) JSONL
    Tabella 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 che lo schema calcoli la distribuzione di riferimento 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 Model Monitoring 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, [email protected].

  • 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 elencando 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 funzionalità da monitorare. Ad esempio, se specifichi Age=0.4, il monitoraggio dei modelli 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 la documentazione di riferimento sui job di Monitoring.

Python

Consulta il blocco note di esempio per eseguire un job di previsione batch con Model Monitoring per un modello tabulare personalizzato.

Model Monitoring ti avvisa automaticamente via email in caso di aggiornamenti e avvisi relativi alle offerte di lavoro.

Accedi alle metriche di disallineamento

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

Console (istogramma)

Utilizza la console Google Cloud per visualizzare gli istogrammi di distribuzione delle funzionalità per ogni funzionalità monitorata e scoprire quali modifiche hanno portato a disallineamenti nel tempo:

  1. Vai alla pagina Previsioni batch:

    Vai a 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. Fai clic sul nome di un elemento per analizzarlo. Una pagina mostra gli istogrammi di distribuzione delle caratteristiche per quella caratteristica.

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

    Istogrammi che mostrano la distribuzione di esempio dei dati di input 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 a Previsioni batch

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

  3. Fai clic sulla scheda Proprietà di Monitoring.

  4. Fai clic sul link Directory di output di Monitoring, che ti reindirizzerà 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 per accedere alla pagina Dettagli oggetto.

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

  • Fai clic su Scarica e apri il file nell'editor di testo locale.

  • Utilizza il percorso file dell'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 funzionalità 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 aver eseguito un job di previsione batch con il monitoraggio dei modelli.

Esegui il debug degli errori di monitoraggio della previsione batch

Se il job di monitoraggio della previsione batch ha esito negativo, puoi trovare i log di debug nella console Google Cloud:

  1. Vai alla pagina Previsioni batch.

    Vai a Previsioni batch

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

  3. Fai clic sulla scheda Proprietà di Monitoring.

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

  5. Fai clic sulla cartella logs/.

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

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

    • Fai clic su Scarica e apri il file nell'editor di testo locale.

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

Tutorial sui blocchi 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

Personalizzato

Modelli XGBoost

Attribuzioni delle funzionalità Explainable AI

Previsione batch

Configurazione per i modelli tabulari

Passaggi successivi