Attribuzioni delle funzionalità per la classificazione e la regressione

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

Introduzione

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. Quando richiedi le previsioni, ottieni i valori previsti appropriati per il tuo modello. Quando richiedi spiegazioni, ricevi le previsioni insieme alle informazioni sull'attribuzione delle caratteristiche.

Considera l'esempio seguente: una rete neurale profonda viene addestrata per prevedere la durata di un giro in bicicletta, in base ai dati meteo e ai dati di condivisione dei viaggi precedenti. Se richiedi solo le previsioni di questo modello, vengono visualizzate le durate previste delle corse in bicicletta in un 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

Genera importanza delle funzionalità a livello globale

Per conoscere l'importanza delle caratteristiche del modello, esamina le metriche di valutazione del modello.

Genera attribuzioni di caratteristiche locali

Per ricevere spiegazioni online, segui la maggior parte degli stessi passaggi che seguiresti per ricevere previsioni online. Tuttavia, anziché inviare una richiesta projects.locations.endpoints.predict all'API Vertex AI, invia una richiesta projects.locations.endpoints.explain.

Per ottenere spiegazioni batch, imposta il campo generateExplanation su true quando crei un job di previsione batch.

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.

  • 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.

  • Ogni attribuzione mostra solo in che misura la funzionalità ha influito sulla previsione per quell'esempio specifico. Una singola attribuzione potrebbe non riflettere il comportamento generale del modello. Per comprendere il comportamento approssimativo del modello in un intero set di dati, aggrega le attribuzioni sull'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 dipendono interamente dal modello e dai dati utilizzati per addestrare il modello. Possono solo rivelare i pattern che il modello ha trovato nei dati e non può rilevare alcuna relazione fondamentale nei dati. La presenza o l'assenza di un'attribuzione importante a una determinata funzionalità non significa che esista o meno una relazione tra quella funzionalità e il target. L'attribuzione si limita a mostrare che il modello utilizza o meno la funzionalità nelle sue previsioni.

  • Le attribuzioni da sole non sono in grado di determinare se il tuo modello è equo, imparziale o di qualità audio. Valuta attentamente i dati di addestramento e le metriche di valutazione, oltre a quelle relative alle attribuzioni.

Per ulteriori informazioni sulle limitazioni, consulta il White paper sui dettagli delle AI AI.

Migliorare le attribuzioni delle funzionalità

I seguenti fattori incidono maggiormente sulle attribuzioni delle caratteristiche:

  • 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 drasticamente.
  • Le attribuzioni mostrano solo in che misura la caratteristica ha influito sulla variazione del valore di previsione rispetto al valore di riferimento. Assicurati di scegliere una base di riferimento significativa, pertinente alla domanda che vuoi porre al modello. I valori dell'attribuzione e la relativa interpretazione possono cambiare in modo significativo con il cambio dei riferimenti.

Algoritmo

Vertex AI fornisce attribuzioni di funzionalità utilizzando Shapley Values, un algoritmo di teoria dei giochi cooperativi che assegna il merito a ciascun giocatore di un gioco per un risultato particolare. Applicato ai modelli di machine learning, significa che ogni caratteristica del modello viene trattata come un "player" nel gioco e il merito viene assegnato in proporzione al risultato di una specifica previsione. Per i modelli di dati strutturati, Vertex AI utilizza un'approssimazione di campionamento di valori Shapley esatti chiamati Shapley campionati.

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.

Passaggi successivi

Le seguenti risorse forniscono ulteriore materiale didattico utile: