Introduzione al monitoraggio dei modelli di Vertex AI

Questa pagina fornisce una panoramica del monitoraggio dei modelli di Vertex AI.

Panoramica di Monitoring

Vertex AI Model Monitoring consente di eseguire job di monitoraggio secondo necessità o in base a una pianificazione regolare per monitorare la qualità dei modelli tabulari. Se hai impostato degli avvisi, Vertex AI Model Monitoring ti informa quando le metriche superano una soglia specificata.

Ad esempio, supponiamo di avere un modello che prevede il lifetime value cliente. Man mano che le abitudini dei clienti cambiano, cambiano anche i fattori che prevedono la spesa dei clienti. Di conseguenza, le caratteristiche e i valori delle caratteristiche utilizzati in precedenza per addestrare il modello potrebbero non essere pertinenti per le previsioni oggi. Questa deviazione dei dati è nota come deviazione.

Vertex AI Model Monitoring può monitorare e avvisarti quando le deviazioni superano una soglia specificata. Puoi quindi rivalutare o riaddestrare il modello per assicurarti che funzioni come previsto.

Ad esempio, Vertex AI Model Monitoring può fornire visualizzazioni come nella figura seguente, in cui vengono sovrapposti due grafici di due set di dati. Questa visualizzazione consente di confrontare e vedere rapidamente le deviazioni tra i due set di dati.

Un esempio di distribuzione numerica di una base di dati e di set di dati assortiti.

Versioni di Vertex AI Model Monitoring

Vertex AI Model Monitoring offre due offerte: v2 e v1.

Model Monitoring v2 è in Anteprima ed è l'offerta più recente che associa tutte le attività di monitoraggio a una versione del modello. Model Monitoring v1, invece, è in disponibilità generale ed è configurato sugli endpoint Vertex AI.

Se hai bisogno di supporto a livello di produzione e vuoi monitorare un modello di cui è stato eseguito il deployment su un endpoint Vertex AI, usa Model Monitoring v1. Per tutti gli altri casi d'uso, usa Model Monitoring v2, che offre tutte le funzionalità di Model Monitoring v1 e molto altro. Per ulteriori informazioni, consulta la panoramica per ciascuna versione:

Per gli utenti esistenti di Model Monitoring v1, Model Monitoring v1 viene mantenuto così com'è. Non è necessario eseguire la migrazione a Model Monitoring v2. Se vuoi eseguire la migrazione, puoi utilizzare entrambe le versioni contemporaneamente fino a quando non avrai eseguito la migrazione completa a Model Monitoring v2, per evitare interruzioni del monitoraggio durante la transizione.

Panoramica di Model Monitoring v2

Model Monitoring v2 consente di tenere traccia delle metriche nel tempo dopo aver configurato il monitoraggio del modello ed eseguito job di monitoraggio. Puoi eseguire job di monitoraggio on demand o configurare esecuzioni pianificate. Con le esecuzioni pianificate, Model Monitoring esegue automaticamente job di monitoraggio in base a una pianificazione definita da te.

Obiettivi di monitoraggio

Le metriche e le soglie monitorate sono mappate a obiettivi di monitoraggio. Per ogni versione del modello, puoi specificare uno o più obiettivi di monitoraggio. La seguente tabella descrive in dettaglio ogni obiettivo:

Scopo Descrizione Tipo di dati delle caratteristiche Metriche supportate
Deviazione dei dati delle caratteristiche di input

Misura la distribuzione dei valori delle caratteristiche di input rispetto a una distribuzione dei dati di riferimento.

Categoria: booleano, stringa, categoriale
  • L-Infinity
  • La divergenza di Jensen Shannon
Numerico: numero in virgola mobile, numero intero La divergenza di Jensen Shannon
Deviazione dei dati di previsione di output

Misura la distribuzione dei dati per le previsioni del modello rispetto a una distribuzione dei dati di riferimento.

Categoria: booleano, stringa, categoriale
  • L-Infinity
  • La divergenza di Jensen Shannon
Numerico: numero in virgola mobile, numero intero La divergenza di Jensen Shannon
Attribuzione delle caratteristiche

Misura la variazione nel contributo delle caratteristiche alla previsione di un modello rispetto a una base di riferimento. Ad esempio, puoi monitorare se una funzionalità molto importante diminuisce improvvisamente in importanza.

Tutti i tipi di dati Valore SHAP (SHapley Additive ExPlanations)

Caratteristica di input e deviazione della previsione di output

Dopo il deployment di un modello in produzione, i dati di input possono discostarsi dai dati utilizzati per addestrare il modello oppure la distribuzione dei dati delle caratteristiche in produzione potrebbe cambiare notevolmente nel tempo. La versione 2 di Model Monitoring v2 può monitorare le variazioni nella distribuzione dei dati di produzione rispetto ai dati di addestramento o l'evoluzione della distribuzione dei dati di produzione nel tempo.

Analogamente, per i dati di previsione, Model Monitoring v2 può monitorare le variazioni nella distribuzione dei risultati previsti rispetto ai dati di addestramento o alla distribuzione dei dati di produzione nel tempo.

Attribuzione delle caratteristiche

Le attribuzioni delle caratteristiche indicano in che misura ciascuna caratteristica del modello ha contribuito alle previsioni per ogni determinata istanza. I punteggi di attribuzione sono proporzionali al contributo della caratteristica alla previsione di un modello. In genere sono firmati, a indicare se una funzionalità consente di eseguire il push della previsione verso l'alto o verso il basso. Le attribuzioni relative a tutte le caratteristiche devono corrispondere al punteggio di previsione del modello.

Monitorando le attribuzioni delle funzionalità, Model Monitoring v2 tiene traccia delle variazioni nei contributi di una funzionalità alle previsioni di un modello nel tempo. Una modifica nel punteggio di attribuzione di una funzionalità chiave spesso indica che la funzionalità è cambiata in modo da influire sull'accuratezza delle previsioni del modello.

Per scoprire di più sulle attribuzioni e sulle metriche delle funzionalità, consulta Spiegazioni basate sulle funzionalità e Metodo di Shapley campionato.

Come configurare Model Monitoring v2

Devi prima registrare i tuoi modelli in Vertex AI Model Registry. Se pubblichi modelli al di fuori di Vertex AI, non è necessario caricare l'artefatto del modello. Successivamente, creerai un monitoraggio del modello, associato alla versione di un modello, e definirai lo schema del modello. Per alcuni modelli, come i modelli AutoML, lo schema viene fornito.

Nel monitoraggio dei modelli, puoi specificare facoltativamente configurazioni predefinite come obiettivi di monitoraggio, un set di dati di addestramento, il monitoraggio della località di output e le impostazioni di notifica. Per maggiori informazioni, consulta Configurare il monitoraggio del modello.

Dopo aver creato il monitoraggio del modello, puoi eseguire un job di monitoraggio on demand o pianificare job regolari per il monitoraggio continuo. Quando esegui un job, il monitoraggio dei modelli utilizza la configurazione predefinita impostata nel monitoraggio del modello, a meno che non fornisci una configurazione di monitoraggio diversa. Ad esempio, se fornisci obiettivi di monitoraggio diversi o un set di dati di confronto diverso, Model Monitoring utilizza le configurazioni del job anziché la configurazione predefinita del monitoraggio del modello. Per saperne di più, consulta Eseguire un job di monitoraggio.

Prezzi

Non viene addebitato alcun costo per Model Monitoring v2 durante l'anteprima. Ti viene comunque addebitato l'utilizzo di altri servizi, come Cloud Storage, BigQuery, previsioni batch di Vertex AI, Vertex Explainable AI e Cloud Logging.

Panoramica di Model Monitoring v1

Per aiutarti a mantenere le prestazioni di un modello, Model Monitoring v1 monitora i dati di input di previsione del modello per rilevare eventuali disallineamento e deviazione delle funzionalità:

  • Il disallineamento addestramento/produzione si verifica quando la distribuzione dei dati delle caratteristiche in produzione devia dalla distribuzione dei dati delle caratteristiche utilizzata per addestrare il modello. Se sono disponibili i dati di addestramento originali, puoi abilitare il rilevamento del disallineamento per monitorare i modelli per il disallineamento addestramento/produzione.

  • La deviazione della previsione si verifica quando la distribuzione dei dati delle funzionalità in produzione cambia in modo significativo nel tempo. Se i dati di addestramento originali non sono disponibili, puoi abilitare il rilevamento delle deviazioni per monitorare i dati di input e rilevare eventuali modifiche nel tempo.

Puoi abilitare il rilevamento dell'inclinazione e della deviazione.

Model Monitoring v1 supporta il rilevamento di disallineamento e deviazione delle funzionalità per le caratteristiche categoriche e numeriche:

  • Le funzionalità categoriche sono dati limitati in base al numero di valori possibili, in genere raggruppati per proprietà qualitative. ad esempio categorie come tipo di prodotto, paese o tipo di cliente.

  • Le caratteristiche numeriche sono dati che possono essere qualsiasi valore numerico. Ad esempio, peso e altezza.

Quando il disallineamento o la deviazione della funzionalità di un modello supera una soglia di avviso impostata, Model Monitoring v1 ti invia un avviso via email. Puoi anche visualizzare le distribuzioni di ogni caratteristica nel tempo per valutare se è necessario riaddestrare il modello.

Calcolare la deriva

Per rilevare le deviazioni per la versione 1, Vertex AI Model Monitoring utilizza TensorFlow Data Validation (TFDV) per calcolare le distribuzioni e i punteggi di distanza.

  1. Calcola la distribuzione statistica della base di riferimento:

    • Per il rilevamento del disallineamento, la base di riferimento è la distribuzione statistica dei valori della caratteristica nei dati di addestramento.

    • Per il rilevamento delle deviazioni, la base di riferimento è la distribuzione statistica dei valori della caratteristica osservati in produzione in passato.

    Le distribuzioni per le caratteristiche categoriche e numeriche vengono calcolate come segue:

    • Per le caratteristiche categoriche, la distribuzione calcolata è il numero o la percentuale di istanze di ogni possibile valore della caratteristica.

    • Per le caratteristiche numeriche, Vertex AI Model Monitoring divide l'intervallo dei possibili valori delle caratteristiche in intervalli uguali e calcola il numero o la percentuale di valori delle caratteristiche che rientrano in ogni intervallo.

    La base di riferimento viene calcolata quando crei un job di monitoraggio dei modelli di Vertex AI e viene ricalcolata solo se aggiorni il set di dati di addestramento per il job.

  2. Calcola la distribuzione statistica degli ultimi valori delle funzionalità osservate in produzione.

  3. Confronta la distribuzione degli ultimi valori delle funzionalità in produzione con la distribuzione di riferimento calcolando un punteggio di distanza:

  4. Quando il punteggio di distanza tra due distribuzioni statistiche supera la soglia specificata, Vertex AI Model Monitoring identifica l'anomalia come disallineamento o deviazione.

L'esempio seguente mostra l'inclinazione o la deriva tra la base di riferimento e le distribuzioni più recenti di una caratteristica categoriale:

Distribuzione di riferimento

Esempio di distribuzione delle caratteristiche del set di dati di riferimento.

Distribuzione più recente

Un esempio di distribuzione delle caratteristiche del set di dati più recente.

L'esempio seguente mostra l'inclinazione o la deriva tra la base di riferimento e le distribuzioni più recenti di una caratteristica numerica:

Distribuzione di riferimento

Esempio di distribuzione delle caratteristiche del set di dati di riferimento.

Distribuzione più recente

Un esempio di distribuzione delle caratteristiche del set di dati più recente.

Considerazioni sull'uso del monitoraggio dei modelli

  • Per ottimizzare i costi, puoi impostare una frequenza di campionamento delle richieste di previsione per monitorare un sottoinsieme degli input di produzione di un modello.

  • Puoi impostare una frequenza con cui gli input registrati di recente di un modello di cui è stato eseguito il deployment vengono monitorati per rilevare disallineamento o deviazioni. La frequenza di monitoraggio determina l'intervallo di tempo, o le dimensioni della finestra di monitoraggio, dei dati registrati analizzati in ogni esecuzione di monitoraggio.

  • Puoi specificare le soglie di avviso per ogni funzionalità che vuoi monitorare. Viene registrato un avviso quando la distanza statistica tra la distribuzione delle funzionalità di input e la base di riferimento corrispondente supera la soglia specificata. Per impostazione predefinita, ogni caratteristica categorica e numerica viene monitorata, con valori di soglia pari a 0,3.

  • Un endpoint di previsione online può ospitare più modelli. Quando attivi il rilevamento del disallineamento o della deviazione su un endpoint, i seguenti parametri di configurazione vengono condivisi tra tutti i modelli ospitati in quell'endpoint:

    • Tipo di rilevamento
    • Monitoraggio della frequenza
    • Frazione di richieste di input monitorata

    Per gli altri parametri di configurazione, puoi impostare valori diversi per ogni modello.

Passaggi successivi