Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo descrive i metodi che è possibile usare per l'interpretabilità dei modelli in Azure Machine Learning.
Perché l'interpretabilità del modello è importante per il debug del modello
Quando si usano modelli di Machine Learning in modalità che influiscono sulla vita delle persone, è fondamentale comprendere cosa influisce sul comportamento dei modelli. L'interpretabilità consente di rispondere a domande in scenari come:
- Debug del modello: perché il modello ha commesso questo errore? Come si può migliorare il modello?
- Collaborazione tra essere umano e intelligenza artificiale: come comprendere e considerare attendibili le decisioni del modello?
- Conformità alle normative: il modello soddisfa i requisiti legali?
Il componente di interpretabilità del dashboard di intelligenza artificiale responsabile contribuisce alla fase di "diagnosi" del flusso di lavoro del ciclo di vita del modello generando descrizioni delle stime di un modello di Machine Learning comprensibili agli esseri umani. Fornisce più viste del comportamento di un modello:
- Spiegazioni globali: ad esempio, quali funzionalità influiscono sul comportamento complessivo di un modello di allocazione prestiti?
- Spiegazioni locali: ad esempio, perché la richiesta di un prestito di un cliente è stata approvata o rifiutata?
È anche possibile osservare le spiegazioni del modello per una coorte selezionata come sottogruppo di punti dati. Questo approccio è utile quando, ad esempio, si valuta l'equità nelle stime del modello per gli individui appartenenti a un determinato gruppo demografico. La scheda Spiegazione locale di questo componente rappresenta anche una visualizzazione completa dei dati, ideale per una valutazione generale dei dati a colpo d’occhio e per l’esame delle differenze tra stime corrette ed errate di ogni coorte.
Le funzionalità di questo componente si basano sul pacchetto interpretML, che genera spiegazioni del modello.
Usare l'interpretabilità quando è necessario:
- Determinare l’attendibilità delle stime del sistema di intelligenza artificiale comprendendo quali sono le funzionalità più importanti per le stime.
- Approccio al debug del modello, dapprima comprendendolo, quindi scoprendo se il modello usa funzionalità integre o semplicemente false correlazioni.
- Individuare potenziali fonti di iniquità comprendendo se il modello basa le stime su funzionalità sensibili o altamente correlate alle stime.
- Generare nell’utente la fiducia nelle decisioni del modello generando spiegazioni locali per illustrare i risultati.
- Completare un controllo normativo di un sistema di intelligenza artificiale per convalidare i modelli e monitorare l'impatto delle decisioni del modello sugli esseri umani.
Come interpretare il modello
In Machine Learning le funzionalità sono i campi di dati usati per stimare un punto dati di destinazione. Ad esempio, per stimare il rischio del credito, è possibile usare campi di dati per età, dimensioni dell'account ed età dell'account. In questo caso, l’età, le dimensioni dell'account e l’età dell'account sono funzionalità. L'importanza della funzionalità indica in che modo ogni campo dati influisce sulle stime del modello. Ad esempio, anche se è possibile usare l'età in maniera massiccia nella stima, le dimensioni dell'account e l'età dell'account potrebbero non influire significativamente sui valori della stima. Tramite questo processo, i data scientist possono spiegare le stime risultanti in modalità che offrono agli stakeholder visibilità sulle funzionalità più importanti del modello.
Usando le classi e i metodi nel dashboard di intelligenza artificiale responsabile e usando l’SDK v2 e l'interfaccia della riga di comando v2, è possibile:
- Spiegare la stima del modello generando valori di importanza della funzionalità per l'intero modello (spiegazione globale) o per singoli punti dati (spiegazione locale).
- Ottenere l'interpretabilità del modello su set di dati reali su larga scala.
- Usare un dashboard di visualizzazione interattivo per individuare i criteri nei dati e le relative spiegazioni in fase di training.
Tecniche di interpretabilità del modello supportate
Il dashboard di intelligenza artificiale responsabile usa le tecniche di interpretazione sviluppate in Interpret-Community, un pacchetto Python open source per il training di modelli interpretabili e aiuta a spiegare sistemi di intelligenza artificiale opachi. I modelli opaque-box sono quelli per i quali non sono disponibili informazioni sul funzionamento interno.
Interpret-Community funge da host per i seguenti explainer supportati e attualmente supporta le tecniche di interpretabilità presentate nelle sezioni successive.
Supportato nel dashboard di intelligenza artificiale responsabile nell’SDK Python v2 e nell'interfaccia della riga di comando v2
Tecnica di interpretabilità | Descrizione | Tipo |
---|---|---|
Mimic Explainer (Global Surrogate) + SHAP Tree | Mimic Explainer si basa sull'idea di eseguire il training di modelli surrogati globali per simulare modelli opaque-box. Un modello surrogato globale è un modello intrinsecamente interpretabile sottoposto a training per l’approssimazione delle stime di qualunque modello opaque-box con la massima accuratezza possibile. I data scientist possono interpretare il modello surrogato per trarre conclusioni sul modello opaque-box. Il dashboard di intelligenza artificiale responsabile usa LightGBM (LGBMExplainableModel), associato a SHAP (SHapley Additive exPlanations) Tree Explainer, un explainer specifico per alberi e insiemi di alberi. La combinazione di lightGBM e SHAP Tree fornisce per i modelli di Machine Learning spiegazioni globali e locali indipendenti dal modello. |
Indipendente dal modello |
Tecniche di interpretabilità del modello supportate per modelli di testo
Tecnica di interpretabilità | Descrizione | Tipo | Attività di testi |
---|---|---|---|
Testo SHAP | SHAP (SHapley Additive exPlanations) è un metodo di spiegazione di uso comune per reti neurali profonde che fornisce informazioni dettagliate sul contributo di ogni funzionalità di input a una determinata stima. Si basa sul concetto dei valori Shapley, un metodo per l’assegnazione di credito a singoli giocatori in un gioco cooperativo. SHAP applica questo concetto alle funzionalità di input di una rete neurale calcolando il contributo medio di ogni funzionalità all'output del modello per tutte le possibili combinazioni di funzionalità. Per il testo in particolare, SHAP divide le parole in modo gerarchico, trattando ogni parola o token come funzionalità. Ciò produce un set di valori di attribuzione che quantificano l'importanza di ogni parola o token per la stima specificata. La mappa di attribuzione finale viene generata visualizzando questi valori come mappa termica sul documento di testo originario. SHAP è un metodo indipendente dal modello e può essere usato per spiegare un'ampia gamma di modelli di Deep Learning, tra cui CNN, RNN e trasformatori. Fornisce, inoltre, diverse proprietà auspicabili, ad esempio coerenza, accuratezza ed equità, per cui è una tecnica affidabile e interpretabile per comprendere il processo decisionale di un modello. | Indipendente dal modello | Classificazione multiclasse di testi, classificazione multietichetta di testi |
Tecniche di interpretabilità del modello supportate per modelli di immagini
Tecnica di interpretabilità | Descrizione | Tipo | Attività di visione |
---|---|---|---|
Visione SHAP | SHAP (SHapley Additive exPlanations) è un metodo di spiegazione di uso comune per reti neurali profonde che fornisce informazioni dettagliate sul contributo di ogni funzionalità di input a una determinata stima. Si basa sul concetto dei valori Shapley, un metodo per l’assegnazione di credito a singoli giocatori in un gioco cooperativo. SHAP applica questo concetto alle funzionalità di input di una rete neurale calcolando il contributo medio di ogni funzionalità all'output del modello per tutte le possibili combinazioni di funzionalità. Per la visione in particolare, SHAP divide l'immagine in maniera gerarchica, trattando le aree superpixel dell'immagine come ogni funzionalità. Ciò produce un set di valori di attribuzione che quantificano l'importanza di ogni area immagine o superpixel per la stima specificata. La mappa di attribuzione finale viene generata visualizzando questi valori come mappa termica. SHAP è un metodo indipendente dal modello e può essere usato per spiegare un'ampia gamma di modelli di Deep Learning, tra cui CNN, RNN e trasformatori. Fornisce, inoltre, diverse proprietà auspicabili, ad esempio coerenza, accuratezza ed equità, per cui è una tecnica affidabile e interpretabile per comprendere il processo decisionale di un modello. | Indipendente dal modello | Classificazione multiclasse di immagini, classificazione multietichetta di immagini |
Retropropagazione guidata | La retropropagazione guidata è un metodo di spiegazione di uso comune per reti neurali profonde che fornisce informazioni dettagliate sulle rappresentazioni apprese del modello. Genera una visualizzazione delle funzionalità di input che attivano un particolare neurone nel modello, calcolando il gradiente dell'output rispetto all'immagine di input. A differenza di altri metodi basati su gradienti, la retropropagazione guidata esegue la retropropagazione solo tramite gradienti positivi e usa una funzione di attivazione ReLU modificata per garantire che i gradienti negativi non influiscano sulla visualizzazione. Ciò comporta una mappa di salienza più interpretabile e ad alta risoluzione che evidenzia le funzionalità più importanti nell'immagine di input per una determinata stima. La retropropagazione guidata può essere usata per spiegare un'ampia gamma di modelli di Deep Learning, tra cui reti neurali convoluzionali (CNN), reti neurali ricorrenti (RNN) e trasformatori. | AutoML (Automazione dell'apprendimento automatico) | Classificazione multiclasse di immagini, classificazione multietichetta di immagini |
GradCAM guidato | GradCAM guidato è un metodo di spiegazione di uso comune per reti neurali profonde che fornisce informazioni dettagliate sulle rappresentazioni apprese del modello. Genera una visualizzazione delle funzionalità di input che contribuiscono maggiormente a una determinata classe di output, combinando l'approccio basato su gradiente della retropropagazione guidata con l'approccio di localizzazione di GradCAM. In particolare, calcola i gradienti della classe di output rispetto alle mappe delle funzionalità dell'ultimo livello convoluzionale nella rete, quindi assegna un peso a ogni mappa di funzionalità in base all'importanza dell'attivazione per tale classe. Ciò produce una mappa termica ad alta risoluzione che evidenzia le aree più discriminanti dell'immagine di input per la classe di output specificata. GradCAM guidato può essere usato per spiegare un'ampia gamma di modelli di Deep Learning, tra cui CNN, RNN e trasformatori. L’incorporazione della retropropagazione guidata, inoltre, garantisce che la visualizzazione sia significativa e interpretabile, evitando attivazioni spurie e contributi negativi. | AutoML (Automazione dell'apprendimento automatico) | Classificazione multiclasse di immagini, classificazione multietichetta di immagini |
Gradienti integrati | Gradienti integrati è un metodo di spiegazione di uso comune per reti neurali profonde che fornisce informazioni dettagliate sul contributo di ogni funzionalità di input a una determinata stima. Calcola l'integrale del gradiente della classe di output rispetto all'immagine di input, lungo un percorso dritto tra un'immagine di base e l'immagine di input effettiva. Questo percorso generalmente viene scelto come interpolazione lineare tra le due immagini, con la linea di base come immagine neutra senza funzionalità salienti. Integrando il gradiente lungo questo percorso, Gradienti integrati fornisce una misura del modo in cui ogni funzionalità di input contribuisce alla stima, consentendo la generazione di una mappa di attribuzione. Questa mappa evidenzia le funzionalità di input più influenti e può essere usata per ottenere informazioni dettagliate sul processo decisionale del modello. Gradienti integrati può essere usato per spiegare un'ampia gamma di modelli di Deep Learning, tra cui CNN, RNN e trasformatori. Inoltre, è una tecnica su base teoretica che soddisfa un set di proprietà auspicabili, ad esempio sensibilità, invarianza dell'implementazione e completezza. | AutoML (Automazione dell'apprendimento automatico) | Classificazione multiclasse di immagini, classificazione multietichetta di immagini |
XRAI | XRAI è un nuovo metodo di salienza basato su aree e si basa su Gradienti integrati (IG). Sovrasegmenta l'immagine e testa in modo iterativo l'importanza di ogni area, fondendo aree più piccole in segmenti più grandi in base ai punteggi di attribuzione. Questa strategia produce una qualità elevata e aree di salienza di alta qualità, strettamente vincolate, le cui prestazioni sono superiori a quelle delle tecniche di salienza esistenti. XRAI può essere usato con qualunque modello basato su DNN, purché sia disponibile un modo per raggruppare le funzionalità di input in segmenti tramite una metrica di similarità. | AutoML (Automazione dell'apprendimento automatico) | Classificazione multiclasse di immagini, classificazione multietichetta di immagini |
D-RISE | D-RISE è un metodo indipendente dal modello per la creazione di spiegazioni visive per le stime dei modelli di rilevamento oggetti. Tenendo conto degli aspetti correlati sia alla localizzazione che alla categorizzazione del rilevamento oggetti, D-RISE può produrre mappe di salienza che evidenziano parti di un'immagine che contribuiscono maggiormente alla stima del rilevatore. A differenza dei metodi basati su gradienti, D-RISE è più generico e non ha bisogno di accedere al funzionamento interno del rilevatore di oggetti, ma richiede solo l'accesso agli input e agli output del modello. Il metodo può essere applicato ai rilevatori a singolo stadio (ad esempio YOLOv3), ai rilevatori a due stadi (ad esempio Faster-RCNN) e ai trasformatori di visione (ad esempio DETR, OWL-ViT). D-Rise fornisce la mappa di salienza creando maschere casuali dell'immagine di input e la invia al rilevatore di oggetti con le maschere casuali dell'immagine di input. Valutando la modifica del punteggio del rilevatore di oggetti, aggrega tutti i rilevamenti con ogni maschera e produce una mappa di salienza finale. |
Indipendente dal modello | Rilevamento oggetti |
Passaggi successivi
- Informazioni su come generare il dashboard di intelligenza artificiale responsabile tramite l'interfaccia della riga di comando v2 e l'SDK v2 o l'interfaccia utente di Azure Machine Learning Studio.
- Esplorare le visualizzazioni di interpretabilità supportate del dashboard di intelligenza artificiale responsabile.
- Informazioni su come generare una scorecard di intelligenza artificiale responsabile in base alle informazioni dettagliate osservate nel dashboard di intelligenza artificiale responsabile.