Attribuzioni delle caratteristiche per la previsione

Introduzione

Questa pagina fornisce una breve panoramica concettuale dell'attribuzione delle caratteristiche disponibili con Vertex AI. Per informazioni tecniche approfondite consulta il nostro white paper sulle spiegazioni dell'IA.

Importanza globale delle caratteristiche (attribuzioni delle caratteristiche del modello) indica in che misura ciascuna la caratteristica influisce su un modello. I valori sono forniti sotto forma percentuale per caratteristica: più alta è la percentuale, maggiore è l'impatto che la caratteristica ha avuto sul modello addestramento. Ad esempio, dopo aver esaminato l'importanza globale delle caratteristiche , potresti giungere alla seguente conclusione: "Il modello vede che il le vendite del mese precedente sono di solito il migliore fattore predittivo della metrica del mese successivo vendite. Fattori come il numero di clienti e le promozioni sono importanti, ma sono meno importanti dei dati di vendita".

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

Le attribuzioni di caratteristiche locali per i modelli di serie temporali indicano in che misura ciascuna caratteristica di un modello hanno contribuito a una previsione. Misurano il contributo di un elemento a una previsione rispetto a una base di input. Per funzionalità numeriche come vendite, l'input di riferimento sono le vendite mediane. Per caratteristiche categoriche come il nome del prodotto, l'input di riferimento è il nome del prodotto più comune. La somma di tutte le attribuzioni non sono la previsione. La somma indica quanto la previsione è diversa dalla previsione di riferimento (ovvero, tutti gli input vengono input di riferimento).

Le attribuzioni delle caratteristiche sono determinate in base alle previsioni effettuate per controfattuale. Ecco un esempio di previsione: Quale sarebbe la prevedere se il valore pubblicitario di TRUE su 2020-11-21 è stato sostituito con FALSE, il valore più comune? Il numero richiesto di scale controfattuale con il numero di colonne e il numero di percorsi (servizio generato). La il numero risultante di previsioni può essere ordini di grandezza maggiori rispetto a la normale attività di previsione e il tempo di esecuzione previsto viene adeguato di conseguenza.

Puoi utilizzare la previsione con AutoML. o Flusso di lavoro tabulare per la previsione per generare ed eseguire query sulle attribuzioni delle caratteristiche locali. Le previsioni con AutoML supportano solo per previsioni batch. Il flusso di lavoro tabulare per le previsioni supporta sia previsioni batch e le previsioni online.

Vantaggi

Se esamini istanze specifiche e aggreghi anche le attribuzioni delle caratteristiche attraverso il set di dati di addestramento, puoi ottenere insight più approfonditi su come il modello funziona. Considera i seguenti vantaggi:

  • Modelli di debug: le attribuzioni delle caratteristiche possono aiutare a rilevare problemi nei dati. che generalmente le tecniche di valutazione standard non rilevano.

  • Ottimizzazione dei modelli: puoi identificare e rimuovere funzionalità che sono inferiori importante, il che può portare a modelli più efficienti.

Limitazioni concettuali

Considera i seguenti limiti delle attribuzioni delle caratteristiche:

  • Le attribuzioni delle caratteristiche, inclusa l'importanza locale delle caratteristiche per AutoML, sono specifiche delle singole previsioni. L'analisi delle attribuzioni delle caratteristiche per una singola previsione può fornire informazioni buone, ma queste potrebbero non essere generalizzabili all'intera classe per per quella singola istanza o per l'intero modello.

    Per ottenere insight più generalizzabili per i modelli AutoML, fai riferimento l'importanza delle caratteristiche. Per ottenere insight più generalizzabili per altri modelli, le attribuzioni aggregate in sottoinsiemi del set di dati o dell'intero set di dati.

  • Ogni attribuzione mostra solo in che misura la caratteristica ha influito sulla previsione per specifico. Una singola attribuzione potrebbe non riflettere l'insieme comportamento del modello. Per comprendere il comportamento approssimativo del modello su un'intera aggregare le attribuzioni sull'intero set di dati.

  • Sebbene le attribuzioni delle caratteristiche possano aiutare con il debug del modello, indicare sempre chiaramente se un problema deriva dal modello o i dati con cui viene addestrato il modello. Usa il buon senso e diagnostica i problemi più comuni problemi di dati per ridurre lo spazio delle 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 rilevare relazioni fondamentali all'interno dei dati. La presenza o l'assenza di un una forte attribuzione a una determinata caratteristica non significa che esista o non esista una relazione tra quella caratteristica e il target. L'attribuzione mostra semplicemente indica che il modello sta o non sta usando la caratteristica nelle sue previsioni.

  • Le attribuzioni da sole non sono in grado di capire se il tuo modello è giusto, imparziale o del suono qualità. Valuta attentamente i dati di addestramento e le metriche di valutazione oltre alle attribuzioni.

Per ulteriori informazioni sulle limitazioni, consulta White paper "AI Explains"

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 Shapley campionato. Di conseguenza, le attribuzioni potrebbero cambiare drasticamente.
  • Le attribuzioni esprimono solo in che misura la caratteristica ha influito sulla modifica valore di previsione rispetto al valore di riferimento. Assicurati di scegliere base significativa, pertinente alla domanda che intendi porre al modello. I valori dell'attribuzione e la loro interpretazione potrebbero cambiare in modo significativo man mano che cambia base di riferimento.

Puoi visualizzare il conteggio dei percorsi e le basi di riferimento in Parametri e metadati di spiegazione.

Visualizza metadati e parametri della spiegazione

I parametri e i metadati di spiegazione contengono quanto segue:

  • static_value: le base di riferimento utilizzate per generare spiegazioni.
  • pathCount: il numero di path, un fattore relativo al tempo necessario per la generazione 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 Vertex AI e include specifica di spiegazione.

REST

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

  • LOCATION: regione in cui è archiviato il modello
  • PROJECT: il tuo ID progetto.
  • MODEL_ID: l'ID della risorsa del 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 delle seguenti 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

Vertex AI fornisce attribuzioni delle caratteristiche utilizzando i valori di Shapley, una cooperativa l'algoritmo di teoria dei giochi che assegna credito a ogni giocatore di un gioco per un particolare risultato. Applicata ai modelli di machine learning, significa che ogni la caratteristica del modello viene trattata come un "player" nel gioco e il merito viene assegnato in proporzione al risultato di una particolare previsione. Per i dati strutturati Vertex AI utilizza un'approssimazione di campionamento dei valori di Shapley esatti chiamata Valore di Shapley campionato.

Per informazioni approfondite sul funzionamento del metodo Shapley campionato, leggi l'articolo Limitazione dell'errore di stima dell'approssimazione del valore di Shapley basato sul campionamento.

Passaggi successivi

Le seguenti risorse forniscono ulteriore materiale didattico utile: