Introduzione
Questa pagina fornisce una breve panoramica concettuale dei metodi di attribuzione delle caratteristiche disponibili con Vertex AI. Per una discussione tecnica approfondita, consulta il nostro white paper sulle spiegazioni dell'AI.
L'importanza globale delle caratteristiche (attribuzioni delle funzionalità del modello) mostra in che modo ciascuna caratteristica influisce su un modello. I valori sono una percentuale per ogni caratteristica: più alta è la percentuale, maggiore è l'impatto che la caratteristica ha avuto sull'addestramento del modello. Per visualizzare l'importanza delle caratteristiche globali del modello, esamina le metriche di valutazione.
Le attribuzioni delle caratteristiche locali per i modelli di serie temporali indicano in che misura ogni caratteristica nei dati ha contribuito al risultato previsto. Utilizza 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. Quando richiedi inferenze, ottieni i valori previsti in base al modello. Quando richiedi le spiegazioni, ricevi le inferenze insieme alle informazioni sull'attribuzione delle caratteristiche.
Considera il seguente esempio: una rete neurale profonda viene addestrata per prevedere la durata di una corsa in bicicletta, in base ai dati meteo e ai dati precedenti di ride sharing. Se richiedi solo inferenze da questo modello, ottieni le durate previste delle corse in bicicletta in minuti. Se richiedi le spiegazioni, ricevi 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 di inferenza rispetto al valore di base che specifichi. Scegli una base di riferimento significativa e adatta al tuo modello. In questo caso, la durata mediana della corsa in bicicletta.
Puoi tracciare i punteggi di attribuzione delle caratteristiche per vedere quali caratteristiche hanno contribuito maggiormente all'inferenza risultante:
Genera ed esegui query sulle attribuzioni delle funzionalità locali quando esegui un job di inferenza online o un job di inferenza batch.
Vantaggi
Se esamini istanze specifiche e aggreghi anche le attribuzioni delle caratteristiche nel set di dati di addestramento, puoi ottenere informazioni più approfondite sul funzionamento del modello. Considera i seguenti vantaggi:
Debug dei modelli: le attribuzioni delle caratteristiche possono aiutare a rilevare problemi nei dati che le tecniche standard di valutazione dei modelli di solito non rilevano.
Ottimizzazione dei modelli: puoi identificare e rimuovere le funzionalità meno importanti, il che può portare a modelli più efficienti.
Limitazioni concettuali
Tieni presenti le seguenti limitazioni delle attribuzioni delle funzionalità:
Le attribuzioni delle funzionalità, inclusa l'importanza delle funzionalità locali per AutoML, sono specifiche per le singole inferenze. L'ispezione delle attribuzioni delle caratteristiche per una singola inferenza può fornire informazioni utili, ma queste potrebbero non essere generalizzabili all'intera classe per quella singola istanza o per l'intero modello.
Per ottenere informazioni più generalizzabili per i modelli AutoML, consulta l'importanza delle funzionalità del modello. Per ottenere informazioni più generalizzabili per altri modelli, aggregare le attribuzioni in sottoinsiemi del set di dati o nell'intero set di dati.
Ogni attribuzione mostra solo in che misura la funzionalità ha influito sull'inferenza per quell'esempio specifico. Una singola attribuzione potrebbe non riflettere il comportamento complessivo del modello. Per comprendere il comportamento approssimativo del modello su un intero set di dati, aggrega le attribuzioni 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 viene addestrato il modello. Usa il tuo miglior giudizio e diagnostica i problemi comuni relativi ai dati per restringere il campo delle potenziali cause.
Le attribuzioni dipendono interamente dal modello e dai dati utilizzati per addestrarlo. Possono solo rivelare i pattern che il modello ha trovato nei dati e non possono rilevare alcuna relazione fondamentale nei dati. La presenza o l'assenza di un'attribuzione forte a una determinata funzionalità non significa che esista o meno una relazione tra questa funzionalità e il target. L'attribuzione mostra semplicemente se il modello utilizza o meno la funzionalità nelle sue inferenze.
Le attribuzioni da sole non possono indicare se il modello è equo, imparziale o di buona qualità. Valuta attentamente i dati di addestramento e le metriche di valutazione, oltre alle attribuzioni.
Per ulteriori informazioni sulle limitazioni, consulta il white paper sulle spiegazioni dell'AI.
Miglioramento delle attribuzioni di funzionalità
I seguenti fattori hanno il maggiore impatto sulle attribuzioni delle funzionalità:
- I metodi di attribuzione approssimano il valore di Shapley. Puoi aumentare la precisione dell'approssimazione aumentando il numero di percorsi per il metodo Shapley campionato. Di conseguenza, le attribuzioni potrebbero cambiare radicalmente.
- Le attribuzioni esprimono solo l'impatto della funzionalità sulla variazione del valore di inferenza rispetto al valore di base. Assicurati di scegliere una baseline significativa, pertinente alla domanda che poni al modello. I valori di attribuzione e la loro interpretazione potrebbero cambiare in modo significativo quando cambi le baseline.
Algoritmo
Vertex AI fornisce attribuzioni delle funzionalità utilizzando i valori di Shapley, un algoritmo di teoria dei giochi cooperativi che assegna il merito a ogni giocatore di una partita per un risultato particolare. Applicato ai modelli di machine learning, ciò significa che ogni caratteristica del modello viene trattata come un "giocatore" nel gioco e il credito viene assegnato in proporzione al risultato di una particolare inferenza. Per i modelli di dati strutturati, Vertex AI utilizza un'approssimazione di campionamento dei valori di Shapley esatti chiamata Shapley campionati.
Per informazioni dettagliate sul funzionamento del metodo di Shapley basato sul campionamento, leggi l'articolo Bounding the Estimation Error of Sampling-based Shapley Value Approximation.
Passaggi successivi
Le seguenti risorse forniscono ulteriore materiale didattico utile: