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 una discussione tecnica approfondita, consulta il nostro white paper sulle spiegazioni dell'IA.
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, le AI Explanations ti indicano 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.
Feature Attributions
Le attribuzioni delle caratteristiche indicano in che misura ciascuna caratteristica del modello ha contribuito alle previsioni per ogni istanza specifica. Quando richiedi le previsioni, ottieni i valori previsti in base al tuo modello. Quando richiedi spiegazioni, ricevi le previsioni insieme alle informazioni sull'attribuzione delle funzionalità.
Le attribuzioni delle funzionalità funzionano con i dati tabulari e includono funzionalità di visualizzazione integrate per i dati delle immagini. Considera gli esempi seguenti:
Una rete neurale profonda viene addestrata a prevedere la durata di una corsa in bicicletta, sulla base dei dati meteorologici e dei dati di condivisione delle corse precedenti. Se richiedi solo le previsioni di questo modello, ottieni le durate previste delle gite in bicicletta in numero di minuti. Se richiedi spiegazioni, ottieni la durata prevista del tragitto in bicicletta, 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 un valore di riferimento significativo per il tuo modello, in questo caso la durata media delle corse in bicicletta. Puoi tracciare i punteggi di attribuzione delle caratteristiche per vedere quali hanno contribuito maggiormente alla previsione risultante:
Un modello di classificazione delle immagini viene addestrato per prevedere se una determinata immagine contiene un cane o un gatto. Se richiedi le previsioni di questo modello su un nuovo insieme di immagini, riceverai una previsione per ogni immagine ("cane" o "gatto"). Se richiedi spiegazioni, ottieni la classe prevista insieme a un overlay per l'immagine che mostra i pixel dell'immagine che hanno contribuito maggiormente alla previsione risultante:
Un modello di classificazione delle immagini viene addestrato a prevedere la specie di un fiore nell'immagine. Se richiedi le 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 contribuito maggiormente alla previsione risultante:
Vantaggi e casi d'uso
Se esamini istanze specifiche e anche le attribuzioni delle funzionalità aggregate nel 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 funzionalità possono aiutare a rilevare i problemi nei dati che le tecniche di valutazione dei modelli standard di solito non rilevano. Ad esempio, un modello di patologia delle immagini ha ottenuto risultati sospettamente buoni su un set di dati di test di immagini di radiografia del torace. Le attribuzioni delle caratteristiche hanno rivelato che l'elevata accuratezza del modello dipendeva dai segni a 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
Tieni presenti le seguenti limitazioni delle attribuzioni delle funzionalità:
- Le attribuzioni sono specifiche per le singole previsioni. L'esame di un'attribuzione per una singola previsione può fornire informazioni utili, ma queste potrebbero non essere generalizzabili all'intera classe per la singola istanza o per l'intero modello. Per ottenere informazioni più generalizzabili, puoi aggregare le attribuzioni su sottoinsiemi del set di dati o sull'intero set di dati.
- Sebbene le attribuzioni delle caratteristiche possano essere utili per il debug del modello, non indicano sempre chiaramente se un problema deriva dal modello o dai dati su cui è addestrato. Usa il tuo buonsenso e diagnostica i problemi comuni relativi ai dati per restringere il campo delle potenziali cause.
- Le attribuzioni delle caratteristiche sono soggette ad attacchi di IA avversarie simili a quelli delle previsioni nei modelli complessi.
Per ulteriori informazioni sulle limitazioni, consulta l'elenco di limitazioni di alto livello e il white paper sulle spiegazioni dell'IA.
Confronto dei metodi di attribuzione delle funzionalità
AI Explanations offrono tre metodi da utilizzare per le attribuzioni delle funzionalità: Shapley campionati, gradienti integrati e XRAI.
Metodo | Spiegazione di base | Tipi di modelli consigliati | Esempi di casi d'uso |
---|---|---|---|
Gradienti integrati | Un metodo basato sui gradienti per calcolare in modo efficiente le attribuzioni delle funzionalità con le stesse proprietà assiomatiche del valore di Shapley. | Modelli differenziabili, come le reti neurali. Consigliato soprattutto per i modelli con spazi di funzionalità di grandi dimensioni. Consigliato per immagini a basso contrasto, come le radiografie. |
|
XRAI (eXplanation with Ranked Area Integrals) | In base al metodo dei gradienti integrati, XRAI valuta le regioni sovrapposte dell'immagine per creare una mappa di salienza, che evidenzia le regioni pertinenti dell'immagine anziché i pixel. | Modelli che accettano input di immagini. Consigliato in particolare per le immagini naturali, ovvero qualsiasi scena reale contenente più oggetti. |
|
Valore di Shapley campionato | Assegna il merito per il risultato a ciascuna caratteristica e considera 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 |
|
Informazioni sui metodi di attribuzione delle funzionalità
Ogni metodo di attribuzione delle funzionalità si basa sui valori di Shapley, un algoritmo della teoria dei giochi cooperativi che assegna il merito a ogni giocatore di una partita per un determinato risultato. Applicato ai modelli di machine learning, ciò significa che ogni caratteristica del modello viene trattata come un "giocatore" nel gioco e le AI Explanations assegnano un merito proporzionale a ogni caratteristica per il risultato di una determinata previsione.
Le spiegazioni basate sull'IA ti consentono di "scegliere" i tuoi giocatori, per così dire, selezionando le funzionalità esatta per la tua richiesta di spiegazioni.
Metodo del valore di Shapley campionato
Il metodo Shapley campionato fornisce un'approssimazione di campionamento dei valori di Shapley esatti.
Metodo dei gradienti integrati
Nel metodo dei gradienti integrati, il gradiente dell'output della previsione viene calcolato rispetto alle caratteristiche dell'input, lungo un percorso integrale.
- I gradienti vengono calcolati a intervalli diversi di un parametro di scala. Per i dati delle immagini, immagina questo parametro di scalatura come un "cursore" che scala tutti i pixel dell'immagine in nero.
- I gradienti sono "integrati":
- La media dei gradienti viene calcolata insieme.
- Viene calcolato il prodotto elemento per elemento dei gradienti medi e dell'input originale.
Per una spiegazione intuitiva di questo processo applicato alle immagini, consulta il post del blog "Attributing a deep network's prediction to its input features". Gli autori del documento originale sui gradienti integrati (Axiomatic Attribution for Deep Networks) mostrano nel post del blog precedente 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 regioni dell'immagine contribuiscono maggiormente a una determinata previsione della classe.
- 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 un'immagine di riferimento nera e una bianca.
- Sovrasegmentazione: indipendentemente dall'attribuzione a livello di pixel, XRAI sovrasegmenta l'immagine per creare un patchwork di piccole regioni. XRAI utilizza il metodo basato su grafo di Felzenswalb per creare i segmenti di immagine.
- 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 assegna un ranking a ogni segmento e poi li ordina dal più positivo al meno positivo. In questo modo, vengono determinate le aree dell'immagine più salienti o che contribuiscono maggiormente a una determinata previsione della classe.
Modelli differenziabili e non differenziabili
Nei modelli differenziabili, puoi calcolare la derivata di tutte le operazioni nel grafo di TensorFlow. Questa proprietà contribuisce a rendere possibile la propagazione indietro in questi modelli. Ad esempio, le reti neurali sono differenziabili. Per ottenere le attribuzioni delle funzionalità per i modelli differenziabili, utilizza il metodo dei gradienti integrati.
I modelli non differenziabili includono operazioni non differenziabili nel grafico di TensorFlow, ad esempio le operazioni 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 funzionalità per i modelli non differenziabili, utilizza il metodo del valore di Shapley campionato. Il valore di Shapley campionato funziona anche su modelli differenziabili, ma in questo caso è più costoso in termini di calcolo del necessario.
Riferimenti
Le implementazioni di valori di Shapley campionati, gradienti integrati e XRAI si basano rispettivamente sui seguenti riferimenti:
- Messa in un intervallo dell'errore di stima dell'approssimazione del valore di Shapley basata sul campionamento
- Axiomatic Attribution for Deep Networks
- XRAI: attribuzioni migliori tramite le regioni
Scopri di più sull'implementazione delle AI Explanations dell'IA leggendo il white paper sulle spiegazioni dell'IA.
Risorse didattiche
Le seguenti risorse forniscono ulteriore materiale didattico utile:
- Machine learning interpretabile: valori di Shapley
- Repository GitHub di Integrated Gradients di Ankur Taly.
- La libreria SHAP (SHapley Additive exPlanations)
- Introduzione ai valori di Shapley