Attribuzioni delle caratteristiche per classificazione e regressione

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 AI Explanations.

L'importanza globale delle caratteristiche (attribuzioni delle caratteristiche del modello) mostra l'impatto di ogni caratteristica su un modello. I valori sono forniti come percentuale per ogni funzionalità: più alta è la percentuale, maggiore è l'impatto che la caratteristica ha avuto sull'addestramento dei modelli. Per visualizzare l'importanza globale delle caratteristiche per il tuo modello, esamina le metriche di valutazione.

Le attribuzioni delle funzionalità locali per i modelli di serie temporali indicano il contributo di ogni caratteristica nei dati 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, ricevi i valori previsti appropriati per il tuo modello. Quando richiedi le 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 bici in base ai dati meteo e ai dati di ride sharing precedenti. Se richiedi solo previsioni da questo modello, ottieni la durata prevista 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

Puoi generare ed eseguire query sulle attribuzioni delle caratteristiche locali quando esegui un job di previsione online o un job di previsione batch.

Vantaggi

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:

  • Modelli di debug: le attribuzioni delle caratteristiche possono aiutare a rilevare nei dati i problemi che in genere mancano nelle tecniche standard di valutazione dei modelli.

  • 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 delle caratteristiche, inclusa l'importanza delle caratteristiche locali per AutoML, sono specifiche per le singole previsioni. L'ispezione delle attribuzioni delle caratteristiche per una singola previsione può fornire insight utili, ma gli insight potrebbero non essere generalizzabili all'intera classe per quella singola istanza o all'intero modello.

    Per informazioni più generalizzabili sui modelli AutoML, fai riferimento all'importanza delle caratteristiche del modello. Per ottenere informazioni più generalizzabili per altri modelli, aggrega le attribuzioni in sottoinsiemi nel tuo set di dati o nell'intero set di dati.

  • Ogni attribuzione mostra solo in che misura la caratteristica ha influito sulla previsione per l'esempio specifico. Una singola attribuzione potrebbe non riflettere il comportamento generale del modello. Per comprendere il comportamento approssimativo del modello su un intero set di dati, aggrega le attribuzioni 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 dipendono esclusivamente dal modello e dai dati utilizzati per addestrare il modello. Possono solo rivelare i pattern trovati dal modello nei dati e non possono rilevare alcuna relazione fondamentale nei dati. La presenza o l'assenza di una forte attribuzione a una determinata funzionalità non significa che esista o meno una relazione tra la funzionalità e il target. L'attribuzione mostra semplicemente che il modello utilizza o meno la caratteristica.

  • Le attribuzioni da sole non possono determinare se il tuo modello è corretto, imparziale o di qualità audio. Valuta attentamente i dati di addestramento e le metriche di valutazione, oltre alle attribuzioni.

Per maggiori informazioni sulle limitazioni, consulta il white paper di AI Explanations.

Migliorare le attribuzioni delle caratteristiche

I seguenti fattori hanno l'impatto maggiore sulle attribuzioni delle caratteristiche:

  • I metodi di attribuzione si avvicinano al valore di Shapley. Puoi aumentare la precisione dell'approssimazione aumentando il numero di percorsi per il metodo di Shapley campionato. Di conseguenza, le attribuzioni potrebbero cambiare radicalmente.
  • Le attribuzioni esprimono 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 ti stai ponendo sul modello. I valori di attribuzione e la loro interpretazione potrebbero cambiare notevolmente quando cambi base di riferimento.

Algoritmo

Vertex AI fornisce attribuzioni delle caratteristiche utilizzando Shapley Values, un algoritmo di teoria del gioco cooperativo che assegna il merito a ciascun giocatore di un gioco per un risultato specifico. Applicato ai modelli di machine learning, ciò significa che ogni caratteristica del modello viene considerata come un "giocatore" nel gioco e il merito viene assegnato in proporzione al risultato di una determinata previsione. Per i modelli di dati strutturati, Vertex AI utilizza un'approssimazione di campionamento dei valori di Shapley esatti chiamata Spley campionato.

Per informazioni dettagliate sul funzionamento del metodo di Shapley campionato, leggi l'articolo Bounding the Estimation Error of Sampling-based Shapley Value Approximation.

Passaggi successivi

Le seguenti risorse forniscono ulteriore materiale didattico utile: