Introduzione ad AI Explanations per AI Platform

AI Explanations integra le attribuzioni delle funzionalità in AI Platform Prediction. Questa pagina fornisce una breve panoramica concettuale dei metodi di attribuzione delle caratteristiche disponibili con AI Platform Prediction. Per un'analisi tecnica approfondita, consulta il nostro white paper AI Explanations.

AI Explanations ti aiuta a comprendere gli output del modello per le attività di classificazione e regressione. Ogni volta che richiedi una previsione su AI Platform, AI Explanations indica in che misura ciascuna funzionalità nei 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.

Attribuzioni delle caratteristiche

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

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

  • Una rete neurale profonda è addestrata per prevedere la durata di un giro in bici in base ai dati meteo e ai dati di ride sharing precedenti. Se richiedi solo previsioni per questo modello, ottieni le durate previste delle corse in bicicletta in numero di minuti. Se richiedi le spiegazioni, ottieni la durata prevista della corsa in bici, insieme a un punteggio di attribuzione per ogni funzionalità nella richiesta di spiegazioni. I punteggi di attribuzione mostrano in che misura la funzionalità ha influito sulla variazione del valore di previsione rispetto al valore di riferimento specificato. Scegli una base di riferimento significativa che abbia senso per il tuo modello, in questo caso la durata mediana di un 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 di un giro in bici

  • Un modello di classificazione delle immagini viene addestrato per prevedere se una determinata immagine contiene un cane o un gatto. Se richiedi previsioni da questo modello su un nuovo set di immagini, riceverai una previsione per ogni immagine ("cane" o "gatto"). Se richiedi le 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 di attribuzione delle caratteristiche
    Una foto di un gatto con overlay di attribuzione delle caratteristiche
    Una foto di un cane con overlay di attribuzione delle caratteristiche
    Una foto di un cane con overlay di attribuzione delle funzionalità
  • Viene addestrato un modello di classificazione delle immagini per prevedere le specie di un fiore nell'immagine. Se richiedi previsioni da questo modello su un nuovo insieme di immagini, riceverai una previsione per ogni immagine ("daisy" o "denti di leone"). Se richiedi le spiegazioni, ricevi la classe prevista insieme a un overlay per l'immagine, che mostra quali aree dell'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 caratteristiche

Vantaggi e casi d'uso

Se esamini istanze specifiche e aggreghi le attribuzioni delle caratteristiche nel tuo set di dati di addestramento, puoi ottenere informazioni più approfondite sul funzionamento del modello. Considera i seguenti vantaggi e casi d'uso:

  • Modelli di debug: le attribuzioni delle caratteristiche possono aiutare a rilevare problemi nei dati che in genere mancano nelle tecniche standard di valutazione dei modelli. Ad esempio, un modello di patologia dell'immagine ha ottenuto risultati in modo sospettosamente buoni su un set di dati di test di immagini a raggi X del torace. Le attribuzioni delle caratteristiche hanno rivelato che l'alta precisione del modello dipendeva dai segni della penna del radiologo nell'immagine.
  • Ottimizzazione dei modelli: puoi identificare e rimuovere le funzionalità meno importanti, il che può comportare modelli più efficienti.

Limitazioni concettuali

Considera i seguenti limiti delle attribuzioni delle funzionalità:

  • Le attribuzioni sono specifiche per le singole previsioni. L'ispezione di un'attribuzione per una singola previsione può fornire informazioni utili, ma l'insight potrebbe non essere generalizzabile all'intera classe per quella singola istanza o all'intero modello. Per ottenere informazioni più generalizzabili, puoi aggregare le attribuzioni in sottoinsiemi nel tuo set di dati o nell'intero set di dati.
  • Sebbene le attribuzioni delle caratteristiche possano aiutare con il debug del modello, non sempre indicano chiaramente se un problema deriva dal modello o dai dati su cui il modello è addestrato. Usa il tuo buon senso e diagnostica problemi comuni sui dati per restringere l'ambito delle potenziali cause.
  • Le attribuzioni delle caratteristiche sono soggette ad attacchi antagonistici simili a quelli delle previsioni nei modelli complessi.

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

Confronto tra i metodi di attribuzione delle caratteristiche

AI Explanations 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
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. Opzione consigliata in particolare per i modelli con spazi di caratteristiche estesi.
Opzione consigliata per le immagini a basso contrasto, come i raggi X.
  • Classificazione e regressione su dati tabulari
  • Classificazione in base ai dati dell'immagine
XRAI (eXplanation with Ranked Area Integrals) In base al metodo dei gradienti integrati, XRAI valuta le regioni sovrapposte dell'immagine per creare una mappa delle tendenze, che evidenzia le aree pertinenti dell'immagine anziché i pixel. Modelli che accettano input di immagine. Opzione consigliata in particolare per le immagini naturali, ovvero le scene reali che contengono più oggetti.
  • Classificazione in base ai dati dell'immagine
Valore di Shapley campionato Assegna il merito del risultato a ogni caratteristica e considera le diverse permutazioni delle caratteristiche. Questo metodo fornisce un'approssimazione di campionamento dei valori di Shapley esatti. Modelli non differenziabili, come insiemi di alberi e reti neurali1
  • Classificazione e regressione su dati tabulari

Informazioni sui metodi di attribuzione delle caratteristiche

Ogni metodo di attribuzione delle caratteristiche si basa sui valori di Shapley, un algoritmo di teoria del gioco cooperativo che assegna il merito di un determinato risultato a ciascun giocatore di un gioco. Applicato ai modelli di machine learning, ciò significa che ogni caratteristica del modello viene trattata come un "giocatore" nel gioco e AI Explanations assegna un merito proporzionale a ogni caratteristica per il risultato di una determinata previsione.

AI Explanations ti consente di "scegliere" i giocatori, per così dire, selezionando le funzionalità esatte per la tua richiesta di spiegazioni.

Metodo di Shapley campionato

Il metodo di shapley campionato fornisce un'approssimazione di campionamento dei valori esatti di Shapley.

Metodo dei gradienti integrati

Nel metodo dei gradienti integrati, il gradiente dell'output di previsione viene calcolato in relazione alle caratteristiche dell'input, lungo un percorso integrale.

  1. I gradienti vengono calcolati a intervalli diversi di un parametro di scala. Per i dati di immagine, immagina questo parametro di ridimensionamento come un "dispositivo di scorrimento" che scala tutti i pixel dell'immagine sul nero.
  2. I gradienti sono "integrati":
    1. La media dei gradienti viene calcolata insieme.
    2. Viene calcolato il prodotto a livello di elemento dei gradienti medi e dell'input originale.

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

Metodo XRAI

Il metodo XRAI combina il metodo dei gradienti integrati con passaggi aggiuntivi 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 bianca.
  2. Sovrasegmentazione: indipendentemente dall'attribuzione a livello di pixel, XRAI sovrasegmenta l'immagine per creare un mosaico di piccole regioni. XRAI utilizza il metodo di Felzenswalb basato su grafici per creare i segmenti di immagine.
  3. Selezione della regione: XRAI aggrega l'attribuzione a livello di pixel all'interno di ciascun segmento per determinarne la densità di attribuzione. Utilizzando questi valori, XRAI classifica ciascun segmento, quindi ordina i segmenti dal più positivo al meno positivo. Questo determina quali aree dell'immagine sono più rilevanti o contribuiscono maggiormente a una data previsione di classe.

Immagini che mostrano i passaggi dell'algoritmo XRAI

Modelli differenziabili e non differenziabili

Nei modelli differibili, puoi calcolare la derivata di tutte le operazioni nel grafico TensorFlow. Questa proprietà consente di rendere possibile la retropropagazione 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.

I modelli non differenziabili includono operazioni non differenziabili nel grafico TensorFlow, come operazioni che eseguono attività di decodifica e arrotondamento. Ad esempio, un modello costruito come un insieme di alberi e reti neurali non è differenziabile. Per ottenere le attribuzioni delle caratteristiche per modelli non differenziabili, usa il metodo di Shapley campionato. Anche il valore Shapley campionato funziona su modelli differenziabili, ma in quel caso è più costoso dal punto di vista del calcolo del necessario.

Riferimenti

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

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

Risorse didattiche

Le seguenti risorse forniscono ulteriore materiale didattico utile:

Passaggi successivi