Introduzione a Vertex Explainable AI

Vertex Explainable AI integra le attribuzioni delle caratteristiche in Vertex AI. Questa pagina fornisce una breve panoramica dei metodi di attribuzione delle caratteristiche disponibili con Vertex AI. Per una discussione tecnica approfondita, consulta il nostro white paper AI AI Explanations.

Vertex Explainable AI aiuta a capire gli output del modello per la classificazione e la regressione. Vertex AI indica in che misura ciascuna caratteristica dei dati ha contribuito al risultato previsto. Puoi quindi utilizzare queste informazioni per verificare se il modello funziona come previsto, riconoscere il bias nei modelli e trovare idee per migliorare il modello e i dati di addestramento.

Vertex AI supporta Vertex Explainable AI per i seguenti tipi di modelli:

  • Modelli immagine AutoML (solo modelli di classificazione)
  • Modelli tabulari AutoML (solo modelli di classificazione e regressione)
  • Modelli con addestramento personalizzato basati su dati tabulari
  • Modelli con addestramento personalizzato basati sui dati delle immagini

Per i modelli tabulari AutoML, le attribuzioni delle caratteristiche vengono visualizzate in Google Cloud Console come importanza delle caratteristiche. Puoi visualizzare l'importanza delle caratteristiche del modello per l'importanza complessiva del modello e l'importanza della funzionalità locale per le previsioni online e batch.

Attribuzione caratteristiche

Le attribuzioni delle caratteristiche indicano il contributo di ogni caratteristica nel modello alle previsioni per ogni istanza specifica. Quando richiedi le previsioni, ottieni i valori previsti in base al tuo modello. Quando richiedi spiegazioni, ottieni le previsioni insieme a informazioni sull'attribuzione delle caratteristiche.

Le attribuzioni delle caratteristiche funzionano su dati tabulari e includono funzionalità di visualizzazione integrate per i dati delle immagini. Esamina i seguenti esempi:

  • Una rete neurale profonda è addestrata a prevedere la durata di un giro in bici, in base ai dati meteo e ai dati di ridesharing precedenti. Se richiedi solo le previsioni di questo modello, ottieni la durata prevista delle corse in bici in un numero di minuti. Se richiedi spiegazioni, ottieni la durata prevista del viaggio in bicicletta, insieme a un punteggio di attribuzione per ogni caratteristica nella richiesta di spiegazioni. I punteggi di attribuzione mostrano in che misura la funzionalità ha influito sulla variazione del valore della previsione, rispetto al valore di riferimento specificato. Scegli un valore basale significativo per il tuo modello, in questo caso la durata media del giro in bici. Puoi tracciare i punteggi di attribuzione delle caratteristiche per vedere quali funzionalità hanno contribuito maggiormente alla previsione risultante:

    Un grafico di attribuzione delle caratteristiche per una durata prevista del giro in bici

  • Viene addestrato un modello di classificazione delle immagini per prevedere se una determinata immagine contiene un cane o un gatto. Se richiedi previsioni di questo modello a un nuovo set di immagini, riceverai una previsione per ciascuna immagine ("can" o "cat"). Se richiedi spiegazioni, ottieni la classe prevista insieme a un overlay per l'immagine, che mostra quali pixel dell'immagine hanno contribuito maggiormente alla previsione risultante:

    Foto di un gatto con overlay sull'attribuzione delle caratteristiche
    Foto di un gatto con overlay di attribuzione delle caratteristiche
    Foto di un cane con overlay di attribuzione delle caratteristiche
    Foto di un cane con overlay di attribuzione delle caratteristiche
  • Un modello di classificazione delle immagini viene addestrato per prevedere le specie di un fiore nell'immagine. Se richiedi previsioni di questo modello su un nuovo insieme di immagini, riceverai una previsione per ogni immagine ("daisy" o "dandelion"). Se richiedi spiegazioni, ottieni la classe prevista insieme a un overlay per l'immagine, che mostra le aree dell'immagine che hanno maggiormente contribuito alla previsione risultante:

    Foto di una margherita con overlay di attribuzione delle caratteristiche
    Foto di una margherita con overlay di attribuzione delle caratteristiche

Vantaggi

Esaminando istanze specifiche e aggregando le attribuzioni delle caratteristiche nel set di dati di addestramento, puoi ottenere informazioni più dettagliate sul funzionamento del modello. Considera i seguenti vantaggi:

  • Modelli di debug: le attribuzioni delle funzionalità possono aiutare a rilevare problemi nei dati che di solito non sarebbero disponibili con le tecniche di valutazione dei modelli standard.

    Ad esempio, un modello di patologia dell'immagine ha ottenuto risultati sospetti e positivi su un set di dati di test di immagini a raggi X. Le attribuzioni delle caratteristiche hanno rivelato che l'elevata precisione del modello dipendeva dai pennarelli del radiologo nell'immagine. Per ulteriori dettagli su questo esempio, consulta il white paper AI AI Explanations.

  • Ottimizzazione dei modelli: puoi identificare e rimuovere le funzionalità meno importanti, che possono determinare modelli più efficienti.

Limitazioni concettuali

Considera le seguenti limitazioni delle attribuzioni delle caratteristiche:

  • Le attribuzioni delle caratteristiche, inclusa l'importanza delle funzionalità locali per AutoML, sono specifiche delle singole previsioni. L'ispezione delle attribuzioni delle caratteristiche per una singola previsione può fornire informazioni utili, ma potrebbe non essere generalizzabile a tutta la classe per la singola istanza o all'intero modello.

    Per ottenere insight più generalizzati per i modelli AutoML, fai riferimento all'importanza delle funzionalità del modello. Per ottenere informazioni più generalizzabili per altri modelli, aggrega le attribuzioni relative a sottoinsiemi nel set di dati oppure nell'intero set di dati.

  • Anche se le attribuzioni delle funzionalità possono essere utili per il debug del modello, non indicano sempre chiaramente se si è verificato un problema derivante dal modello o dai dati su cui il modello è addestrato. Cerca di giudicare e risolvere i problemi più comuni relativi ai dati per ridurre il numero di potenziali cause.

  • Le attribuzioni delle caratteristiche sono soggette ad attacchi contrari simili alle previsioni in modelli complessi.

Per ulteriori informazioni sulle limitazioni, consulta l'elenco generale delle limitazioni e il white paper AI AI Explanations.

Confronto dei metodi di attribuzione delle caratteristiche

Vertex Explainable AI offre tre metodi da utilizzare per le attribuzioni delle caratteristiche: sampled Shapley, gradienti integrati e XRAI.

Metodo Spiegazione di base Tipi di modello consigliati Esempi di casi d'uso Risorse compatibili con Vertex AI Model
Valore di Shapley campionato Assegna il credito per il risultato a ciascuna caratteristica e considera diverse permutazioni di tali caratteristiche. Questo metodo fornisce un'approssimazione di campionamento dei valori esatti di Shapley. Modelli non distinguibili, come insieme di alberi e reti neurali
  • Classificazione e regressione nei dati tabulari
  • Modelli con addestramento personalizzato (qualsiasi contenitore di previsione)
  • Modelli tabulari AutoML
Gradienti integrati Un metodo basato su gradienti per calcolare in modo efficiente le attribuzioni delle caratteristiche con le stesse proprietà assiomatiche del valore di Shapley. Modelli differenziabili, ad esempio le reti neurali. Consigliato soprattutto per i modelli con ampi spazi di funzionalità.
Consigliato per immagini a basso contrasto, come quelle a raggi X.
  • Classificazione e regressione nei dati tabulari
  • Classificazione sui dati delle immagini
XRAI (eXplanation con aree con ranking delle entità) In base al metodo dei gradienti integrati, XRAI valuta le aree geografiche sovrapposte dell'immagine per creare una mappa della salienza, che evidenzia le aree pertinenti dell'immagine anziché i pixel. Modelli che accettano input di immagini. Consigliato soprattutto per le immagini naturali, ovvero qualsiasi scena reale che contiene più oggetti.
  • Classificazione sui dati delle immagini

Per un confronto più completo dei metodi di attribuzione, consulta il white paper AI AI Explanations.

Modelli differenziabili e non

Nei modelli differenziabili, puoi calcolare la derivata di tutte le operazioni nel grafico di TensorFlow. Questa proprietà consente di rendere possibile la propagazione in questi modelli. Ad esempio, le reti neurali sono differenziabili. Per ottenere attribuzioni delle caratteristiche per modelli differenziabili, utilizza il metodo dei gradienti integrati.

Il metodo dei gradienti integrati non funziona per i modelli non distinguibili. Scopri di più sulla codifica di input non diversificabili per lavorare con il metodo dei gradienti integrati.

I modelli non distinguibili includono operazioni non distinguibili nel grafico di TensorFlow, ad esempio operazioni che eseguono attività di decodifica e arrotondamento. Ad esempio, un modello creato come insieme di alberi e reti neurali non è distinguibile. Per ottenere attribuzioni delle caratteristiche per modelli non distinguibili, utilizza il metodo Shapley campionato. Anche gli esempi di Shapley funzionano su modelli differenziabili, ma in questo caso sono più costosi di quelli necessari.

Metodi di attribuzione delle caratteristiche

Ogni metodo di attribuzione delle caratteristiche si basa sui valori di Shapley, un algoritmo per la teoria del gioco cooperativo che assegna il merito a ciascun giocatore di un gioco per ottenere un risultato specifico. Applicata ai modelli di machine learning, ciò significa che ogni funzionalità del modello è considerata come un "giocatore" nel gioco. Vertex Explainable AI assegna credito proporzionale a ciascuna caratteristica per il risultato di una specifica previsione.

Metodo Shapley campionato

Il metodo shapley campionato fornisce un'approssimazione di campionamento dei valori esatti di Shapley. I modelli tabulari AutoML utilizzano il metodo Shapley campionato per l'importanza delle caratteristiche. Valore di Shapley campionato funziona bene per questi modelli, che sono meta-insiemi di alberi e reti neurali.

Per informazioni dettagliate sul funzionamento del metodo Shapley campionato, leggi l'articolo Bounding the Estimation Error of Sampling-based Shapley Value Approximation.

Metodo gradienti integrati

Nel metodo gradienti integrati, il gradiente dell'output di previsione viene calcolato rispetto alle caratteristiche dell'input, insieme a un percorso integrato.

  1. I gradienti vengono calcolati a intervalli diversi di un parametro di ridimensionamento. Le dimensioni di ogni intervallo vengono determinate utilizzando la regola Gaussian quadrature. Per i dati dell'immagine, immagina questo parametro di scalabilità come un "dispositivo di scorrimento" che scala tutti i pixel dell'immagine in nero.
  2. I gradienti sono integrati come segue:
    1. L'integrale è approssimativo utilizzando una media ponderata.
    2. Viene calcolato il prodotto a livello di elemento delle sfumature medie e dell'input originale.

Per una spiegazione intuitiva di questo processo come applicato alle immagini, consulta il post del blog, " Attributioning a deep network's Forecast to their input features". Gli autori del documento originale sui gradienti integrati (Axiomatic Attribution for Deep Networks) mostrano nel post del blog precedente come appaiono le immagini in ogni fase del processo.

Metodo XRAI

Il metodo XRAI combina il metodo dei gradienti integrati con ulteriori passaggi per determinare quali aree geografiche dell'immagine contribuiscono maggiormente a una determinata previsione di classe.

  1. Attribuzione a livello di pixel: XRAI esegue l'attribuzione a livello di pixel per l'immagine di input. In questo passaggio, XRAI utilizza il metodo dei gradienti integrati con una base di riferimento nera e una base di riferimento bianca.
  2. Sovrasegmentazione: indipendentemente dall'attribuzione a livello di pixel, XRAI sovrasegmenta l'immagine per creare un mosaico di piccole aree geografiche. XRAI utilizza il metodo basato sui grafici di Felzenswalb per creare i segmenti immagine.
  3. Selezione dell'area geografica: XRAI aggrega l'attribuzione a livello di pixel all'interno di ogni segmento per determinarne la densità di attribuzione. Utilizzando questi valori, XRAI classifica ogni segmento e quindi ordina i segmenti dal più alto al meno positivo. Determina quali aree dell'immagine sono più rilevanti o contribuiscono maggiormente a una determinata previsione di classe.

Immagini che mostrano i passaggi dell'algoritmo XRAI

Riferimenti

Le implementazioni di Shapley campionato, gradienti integrati e XRAI si basano rispettivamente sui seguenti riferimenti:

Scopri di più sull'implementazione di Vertex Explainable AI leggendo il white paper AI Explanations.

Risorse didattiche

Le seguenti risorse forniscono ulteriore materiale didattico utile:

Passaggi successivi