Attribuzioni delle caratteristiche per la previsione

Introduzione

Questa pagina fornisce una breve panoramica concettuale dei metodi di attribuzione delle caratteristiche disponibili con Agent Platform.

L'importanza delle caratteristiche globali (attribuzioni delle caratteristiche del modello) mostra in che modo ciascuna caratteristica influisce su un modello. I valori sono espressi in percentuale per ogni caratteristica: più alta è la percentuale, maggiore è l'impatto della caratteristica sull'addestramento del modello. Ad esempio, dopo aver esaminato l'importanza delle caratteristiche globali per il tuo modello, potresti giungere alla seguente conclusione: "Il modello rileva che le vendite del mese precedente sono in genere il predittore più efficace delle vendite del mese successivo. Fattori come il numero di clienti e le promozioni sono importanti, ma meno importanti delle cifre di vendita".

Per visualizzare l'importanza delle caratteristiche globali per il tuo modello, esamina le metriche di valutazione.

Le attribuzioni delle caratteristiche locali per i modelli di serie temporali indicano in che misura ciascuna caratteristica di un modello ha contribuito a un'inferenza. Misurano il contributo di una caratteristica a un'inferenza rispetto a una base di riferimento di input. Per le caratteristiche numeriche come le vendite, l'input di riferimento è la mediana delle vendite. Per le caratteristiche categoriche come il nome del prodotto, l'input di riferimento è il nome del prodotto più comune. La somma di tutte le attribuzioni non è l'inferenza. La somma indica la differenza tra l'inferenza e l'inferenza di riferimento (ovvero tutti gli input sono input di riferimento).

Le attribuzioni delle caratteristiche vengono determinate in base alle previsioni effettuate per i controfattuali. Di seguito è riportata una previsione di esempio: Qual è la previsione se il valore dell'annuncio di TRUE il 2020-11-21 è stato sostituito con FALSE, il valore più comune? Il numero richiesto di controfattuali scala con il numero di colonne e il numero di percorsi (generati dal servizio). Il numero di inferenze risultante può essere di ordini di grandezza superiore rispetto a un'attività di inferenza normale e il tempo di esecuzione previsto scala di conseguenza.

Puoi utilizzare Previsioni con AutoML o Flusso di lavoro tabulare per le previsioni per generare ed eseguire query sulle attribuzioni delle caratteristiche locali. Previsioni con AutoML supporta solo le inferenze batch. Flusso di lavoro tabulare per le previsioni supporta sia le inferenze batch sia le inferenze online.

Vantaggi

Se esamini istanze specifiche e aggreghi le attribuzioni delle caratteristiche nel 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 problemi nei dati che le tecniche di valutazione dei modelli standard in genere non rilevano.

  • Ottimizzazione dei modelli: puoi identificare e rimuovere le caratteristiche meno importanti, il che può portare a modelli più efficienti.

Limitazioni concettuali

Tieni presenti le seguenti limitazioni delle attribuzioni delle caratteristiche:

  • Le attribuzioni delle caratteristiche, inclusa l'importanza delle caratteristiche locali per AutoML, sono specifiche per le singole inferenze. L'esame delle attribuzioni delle caratteristiche per una singola inferenza può fornire informazioni utili, ma queste potrebbero non essere generalizzabili all'intera classe per la singola istanza o all'intero modello.

    Per ottenere informazioni più generalizzabili per i modelli AutoML, consulta l'importanza delle caratteristiche del modello. Per ottenere informazioni più generalizzabili per altri modelli, aggrega le attribuzioni su sottoinsiemi del set di dati o sull'intero set di dati.

  • Ogni attribuzione mostra solo in che misura la caratteristica 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 dei modelli, non indicano sempre chiaramente se un problema deriva dal modello o dai dati su cui viene addestrato il modello. Utilizza il tuo miglior giudizio e diagnostica i problemi comuni dei dati per restringere lo spazio delle potenziali cause.

  • Le attribuzioni dipendono interamente dal modello e dai dati utilizzati per addestrare il modello. Possono rivelare solo i pattern che il modello ha trovato nei dati e non possono rilevare relazioni fondamentali nei dati. La presenza o l'assenza di una forte attribuzione a una determinata caratteristica non significa che esista o meno una relazione tra quella caratteristica e il target. L'attribuzione mostra semplicemente se il modello utilizza o meno la caratteristica 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 di AI Explanations].

Migliorare le attribuzioni delle caratteristiche

I seguenti fattori hanno il maggiore impatto 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 del valore di Shapley campionato. Di conseguenza, le attribuzioni potrebbero cambiare drasticamente.
  • Le attribuzioni esprimono solo in che misura la caratteristica ha influito sulla variazione del valore di inferenza, rispetto al valore di riferimento. Assicurati di scegliere una base di riferimento significativa, pertinente alla domanda che stai ponendo al modello. I valori di attribuzione e la loro interpretazione potrebbero cambiare in modo significativo quando cambi le basi di riferimento.

Visualizza il conteggio dei percorsi e le basi di riferimento nei parametri e nei metadati delle spiegazioni.

Visualizzare i metadati e i parametri delle spiegazioni

I parametri e i metadati delle spiegazioni contengono quanto segue:

  • static_value: Le basi di riferimento utilizzate per generare le spiegazioni.
  • pathCount: il numero di percorsi, un fattore che influisce sulla quantità di tempo necessaria per generare le attribuzioni delle caratteristiche.
  • historical_values, prediction_values: colonne disponibili al momento della previsione.
  • historical_values: colonne non disponibili al momento della previsione.

Il modello può essere visualizzato utilizzando l'API REST di Agent Platform e include la specifica della spiegazione.

REST

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • LOCATION: regione in cui è archiviato il modello
  • PROJECT: Il tuo ID progetto. .
  • MODEL_ID: l'ID della risorsa modello

Metodo HTTP e URL:

GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID

Per inviare la richiesta, scegli una di queste opzioni:

curl

Esegui questo comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID"

PowerShell

Esegui questo comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID" | Select-Object -Expand Content

Dovresti vedere un output simile al seguente per un modello AutoML addestrato.

Algoritmo

Gemini Enterprise Agent Platform fornisce attribuzioni delle caratteristiche utilizzando i valori di Shapley, un algoritmo di teoria del gioco cooperativo che assegna il merito a ogni giocatore in una partita per un determinato risultato. Applicato ai modelli di machine learning, ciò significa che ogni caratteristica del modello viene trattata come un "giocatore" nella partita e il merito viene assegnato in proporzione al risultato di una determinata inferenza. Per i modelli di dati strutturati, Agent Platform utilizza un'approssimazione di campionamento dei valori di Shapley esatti chiamata valore di Shapley campionato.

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

Passaggi successivi

Le seguenti risorse forniscono ulteriore materiale didattico utile: