Introduzione a Vertex Explainable AI

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Vertex Explainable AI integra le attribuzioni delle funzionalità in Vertex AI. Questa pagina fornisce una breve panoramica concettuale dei metodi di attribuzione delle funzionalità disponibili con Vertex AI. Per una discussione tecnica approfondita, consulta il nostro white paper sulle spiegazioni dell'AI.

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 di immagini AutoML (solo modelli di classificazione)
  • Modelli tabulari AutoML (solo modelli di classificazione e regressione)
  • Modelli addestrati personalizzati basati su dati tabulari
  • Modelli addestrati personalizzati basati su dati immagine

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

Feature Attributions

Le attribuzioni di funzionalità indicano in che misura ciascuna caratteristica del modello ha contribuito alle previsioni per ogni istanza specifica. Quando richiedi previsioni, ottieni valori previsti appropriati per il tuo modello. Quando richiedi spiegazioni, ricevi le previsioni insieme alle informazioni sull'attribuzione delle caratteristiche.

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

  • Una rete neurale profonda viene addestrata per prevedere la durata di un giro in bici, in base ai dati meteorologici e ai dati di condivisione delle corse precedenti. Se richiedi solo le previsioni di questo modello, vengono visualizzate le durate previste dei giri in bicicletta in 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 spiegazione. I punteggi di attribuzione mostrano in che misura la caratteristica ha interessato la modifica del valore della previsione, in relazione al valore di riferimento che hai specificato. Scegli una base di riferimento significativa 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 caratteristiche hanno contribuito maggiormente alla previsione risultante:

    Un grafico di attribuzione delle caratteristiche per una durata prevista per una corsa in bicicletta

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

    Foto di un gatto con overlay di 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, ricevi una previsione per ogni immagine ("daisy" o "dandelion"). Se richiedi spiegazioni, ricevi la classe prevista insieme a un overlay per l'immagine, che mostra quali aree nell'immagine hanno contribuito maggiormente alla previsione risultante:

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

Vantaggi

Se esamini istanze specifiche e aggrega anche le attribuzioni delle funzionalità 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 le tecniche di valutazione dei modelli standard non verrebbero rilevate.

    Ad esempio, un modello patologico dell'immagine ha ottenuto risultati stranamente positivi su un set di dati di test relativo alle immagini a raggi X. Le attribuzioni delle caratteristiche hanno rivelato che l'alta precisione del modello dipendeva dai segni di penna del radiologo nell'immagine. Per ulteriori dettagli su questo esempio, consulta il white paper sulle AI AI.

  • 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 funzionalità, inclusa l'importanza delle funzionalità locali per AutoML, sono specifiche delle singole previsioni. Il controllo delle attribuzioni delle caratteristiche per una singola previsione può fornire informazioni utili, ma queste informazioni potrebbero non essere generalizzabili per l'intera classe per quella singola istanza o per l'intero modello.

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

  • Anche se le attribuzioni delle funzionalità possono essere utili per il debug del modello, non indicano sempre chiaramente se un problema è dovuto al modello o ai dati su cui il modello è addestrato. Usa il tuo buon senso e diagnostica i problemi di dati più comuni per restringere gli spazi di potenziali cause.

  • Le attribuzioni di funzionalità sono soggette ad attacchi contrari simili alle previsioni in modelli complessi.

Per ulteriori informazioni sulle limitazioni, consulta l'elenco delle limitazioni di alto livello e il white paper sull'AI Explanations.

Confrontare i metodi di attribuzione delle caratteristiche

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

Metodo Spiegazione di base Tipi di modello consigliati Esempi di casi d'uso Risorse Model di Vertex AI compatibili
Valore di Shapley campionato Assegna il merito per il risultato a ciascuna caratteristica e considera diverse permutazioni delle funzionalità. Questo metodo fornisce un'approssimazione di campionamento dei valori Shapley esatti. Modelli non distinguibili, ad esempio insieme di alberi e reti neurali
  • Classificazione e regressione nei dati tabulari
  • Modelli addestrati personalizzati (qualsiasi container 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, come le reti neurali. Consigliato soprattutto per i modelli con ampi spazi di funzionalità.
Consigliato per le immagini a basso contrasto, come i raggi X.
  • Classificazione e regressione nei dati tabulari
  • Classificazione basata sui dati delle immagini
XRAI (eXplanation con Ranked Area Integrals) In base al metodo delle sfumature integrate, XRAI valuta le aree sovrapposte dell'immagine per creare una mappa funzionale, che evidenzia aree geografiche pertinenti dell'immagine anziché pixel. Modelli che accettano input di immagini. Consigliato soprattutto per le immagini naturali, ovvero scene del mondo reale che contengono più oggetti.
  • Classificazione basata sui dati delle immagini

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

Modelli differenziabili e non differenziabili

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

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

I modelli non differenziabili includono operazioni non distinguibili nel grafico TensorFlow, come quelle che eseguono attività di decodifica e arrotondamento. Ad esempio, un modello creato come insieme di alberi e reti neurali non è differenziabile. Per ottenere le attribuzioni delle caratteristiche per i modelli non differenziabili, utilizza il metodo Shapley campionato. Il modello di Shapley campionato funziona anche su modelli differenziabili, ma in questo caso è più costoso del necessario.

Metodi di attribuzione delle caratteristiche

Ogni metodo di attribuzione delle funzionalità si basa sui valori di Shapley, un algoritmo di teoria dei giochi cooperativi che assegna il merito a ciascun giocatore di un gioco per un risultato specifico. Se applicata ai modelli di machine learning, ogni caratteristica del modello viene considerata come un "player" nel gioco. Vertex Explainable AI assegna il merito proporzionale a ciascuna caratteristica per il risultato di una determinata previsione.

Metodo Shapley campionato

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

Per informazioni dettagliate su come funziona il metodo di Shapley campionato, consulta l'articolo Il limite di approssimazione di valore di Shapley basato sul campionamento.

Metodo gradienti integrati

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

  1. I gradienti vengono calcolati a intervalli diversi di un parametro di scalabilità. La dimensione di ogni intervallo è determinata utilizzando la regola Quarante gaussiana. Per i dati dell'immagine, immagina questo parametro di scalabilità come un "dispositivo di scorrimento": ciò significa ridimensionare tutti i pixel dell'immagine in nero.
  2. Le sfumature sono integrate nel seguente modo:
    1. L'integrale viene approssimato utilizzando una media ponderata.
    2. Viene calcolato il prodotto a livello di elemento delle gradienti medi e dell'input originale.

Per una spiegazione intuitiva di questo processo applicato alle immagini, consulta il post del blog "Attribuire una previsione alla rete profonda alle sue funzionalità di input". Gli autori dell'articolo originale sui gradienti integrati (Axiomatic Attribution for Deep Networks) mostrano nel post del blog precedente che aspetto hanno le immagini in ogni fase del processo.

Metodo XRAI

Il metodo XRAI combina il metodo dei gradienti integrati con passaggi aggiuntivi per determinare quali regioni 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 su grafici di Felzenswalb per creare i segmenti immagine.
  3. Selezione della regione: 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 poi ordina i segmenti dal più positivo al meno positivo. Determina quali aree dell'immagine sono più importanti 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 sui dettagli dell'AI.

Risorse didattiche

Le seguenti risorse forniscono ulteriore materiale didattico utile:

Passaggi successivi