Questa guida descrive come ottenere spiegazioni da una risorsa Model
su
Vertex AI. Puoi ottenere spiegazioni in due modi:
Spiegazioni online:richieste sincrone all'API Vertex AI, simili alle inferenze online che restituiscono inferenze con attribuzioni delle caratteristiche.
Spiegazioni batch:richieste asincrone all'API Vertex AI che restituiscono inferenze con attribuzioni delle caratteristiche. Le spiegazioni batch sono una parte facoltativa delle richieste di inferenza batch.
Prima di iniziare
Prima di ottenere le spiegazioni, devi:
Questo passaggio varia in base al tipo di modello di machine learning utilizzato:
Se vuoi ottenere spiegazioni da un modello addestrato personalizzato, segui le istruzioni riportate in Configurazione delle spiegazioni basate su esempi o in Configurazione delle spiegazioni basate su caratteristiche per creare un
Model
che supporti Vertex Explainable AI.Se vuoi ottenere spiegazioni da un modello di classificazione o regressione tabulare AutoML, addestra un modello AutoML su un set di dati tabulare. Non è richiesta una configurazione specifica per utilizzare Vertex Explainable AI. Le spiegazioni per i modelli di previsione non sono supportate.
Se vuoi ottenere spiegazioni da un modello di classificazione delle immagini AutoML, addestra un modello AutoML su un set di dati di immagini e attiva le spiegazioni quando esegui il deployment del modello. Non è necessaria alcuna configurazione specifica per utilizzare Vertex Explainable AI. Le spiegazioni per i modelli di rilevamento degli oggetti non sono supportate.
Se vuoi ottenere spiegazioni online, deploy l'
Model
che hai creato nel passaggio precedente in una risorsaEndpoint
.
Ricevere spiegazioni online
Per ottenere spiegazioni online, segui la maggior parte degli stessi passaggi che segui per ottenere
inferenze online. Tuttavia, anziché inviare una
projects.locations.endpoints.predict
richiesta all'API
Vertex AI, invia una projects.locations.endpoints.explain
richiesta.
Le seguenti guide forniscono istruzioni dettagliate per la preparazione e l'invio di richieste di spiegazione online:
Per i modelli di classificazione delle immagini AutoML,leggi Generazione di inferenze online da modelli AutoML.
Per i modelli di classificazione tabulare e regressione AutoML,leggi Ottenere inferenze dai modelli AutoML.
Per i modelli addestrati personalizzati,leggi Generazione di inferenze online da modelli addestrati personalizzati.
Ottenere spiegazioni batch
Sono supportate solo le spiegazioni batch basate su caratteristiche; non puoi ottenere spiegazioni batch basate su esempi.
Per ottenere spiegazioni batch, imposta il campo generateExplanation
su
true
quando crei un job di inferenza batch.
Per istruzioni dettagliate sulla preparazione e la creazione di job di previsione batch, leggi Ottenere inferenze batch.
Ottenere spiegazioni simultanee
Explainable AI supporta le spiegazioni simultanee. Le spiegazioni simultanee consentono di richiedere spiegazioni basate su caratteristiche ed esempi dallo stesso endpoint del modello di cui è stato eseguito il deployment senza dover eseguire il deployment del modello separatamente per ogni metodo di spiegazione.
Per ottenere spiegazioni simultanee, carica il modello e configura spiegazioni basate su esempi o basate su caratteristiche. Poi, esegui il deployment del modello come di consueto.
Dopo il deployment del modello, puoi richiedere le spiegazioni configurate come di consueto.
Inoltre, puoi richiedere spiegazioni simultanee specificando
concurrent_explanation_spec_override
.
Tieni presente quanto segue quando utilizzi le spiegazioni simultanee:
- Le spiegazioni simultanee sono disponibili solo utilizzando la versione
v1beta1
dell'API. Se utilizzi l'SDK Vertex Python, devi utilizzare il modellopreview
per utilizzare le spiegazioni simultanee. - Le spiegazioni basate su esempi non possono essere richieste dopo il deployment con spiegazioni basate sulle funzionalità. Se vuoi utilizzare sia la spiegazione basata su esempi sia quella basata sulle caratteristiche, esegui il deployment del modello utilizzando la spiegazione basata su esempi e richiedi quella basata sulle caratteristiche utilizzando il campo della spiegazione simultanea.
- Le spiegazioni batch non sono supportate per le spiegazioni simultanee. Online Le spiegazioni sono l'unico modo per utilizzare questa funzionalità.
Risoluzione dei problemi
Questa sezione descrive i passaggi per la risoluzione dei problemi che potrebbero esserti utili in caso di problemi durante la visualizzazione delle spiegazioni.
Errore: indice di elenco fuori intervallo
Se ricevi il seguente messaggio di errore quando richiedi spiegazioni:
"error": "Explainability failed with exception: listindex out of range"
Assicurati di non passare un array vuoto in un campo che prevede un
array di oggetti. Ad esempio, se field1
accetta un array di oggetti, il seguente corpo della richiesta potrebbe generare un errore:
{
"instances": [
{
"field1": [],
}
]
}
Assicurati invece che l'array non sia vuoto, ad esempio:
{
"instances": [
{
"field1": [
{}
],
}
]
}
Passaggi successivi
- In base alle spiegazioni che ricevi, scopri come modificare il tuo
Model
per migliorare le spiegazioni. - Prova un notebook di esempio che mostra Vertex Explainable AI su dati tabulari o dati immagine.