In diesem Leitfaden wird beschrieben, wie Sie Erläuterungen von einer Model
-Ressource in Vertex AI abrufen. Es gibt zwei Möglichkeiten, Erläuterungen zu erhalten:
Onlineerläuterungen:Synchrone Anfragen an die Vertex AI API, ähnlich wie Onlineinferenzen, die Inferenzen mit Feature-Attributionen zurückgeben.
Batcherklärungen:Asynchrone Anfragen an die Vertex AI API, die Rückschlüsse mit Feature-Attributionen zurückgeben. Batcherläuterungen sind ein optionaler Teil von Batchinferenzanfragen.
Hinweise
Bevor Sie Erläuterungen abrufen, müssen Sie Folgendes tun:
Dieser Schritt unterscheidet sich, je nachdem, welche Art von maschinellem Lernmodell Sie verwenden:
Wenn Sie Erläuterungen von einem benutzerdefinierten Modell abrufen möchten, folgen Sie entweder Beispielbasierte Erläuterungen konfigurieren oder Featurebasierte Erläuterungen konfigurieren, um ein
Model
zu erstellen, das Vertex Explainable AI unterstützt.Wenn Sie Erläuterungen aus einem AutoML-Modell für tabellarische Klassifizierung oder Regression abrufen möchten, trainieren Sie ein AutoML-Modell anhand eines tabellarischen Datasets. Für die Verwendung von Vertex Explainable AI ist keine bestimmte Konfiguration erforderlich. Erklärungen für Prognosemodelle werden nicht unterstützt.
Wenn Sie Erläuterungen aus einem AutoML-Bildklassifizierungsmodell abrufen möchten,trainieren Sie ein AutoML-Modell für ein Bild-Dataset und aktivieren Sie Erläuterungen, wenn Sie das Modell bereitstellen Für die Verwendung von Vertex Explainable AI ist keine bestimmte Konfiguration erforderlich. Erklärungen für Modelle zur Objekterkennung werden nicht unterstützt.
Wenn Sie Onlineerläuterungen erhalten möchten, stellen Sie die im vorherigen Schritt erstellte Datei
Model
in einerEndpoint
-Ressource bereit.
Online-Erläuterungen abrufen
Wenn Sie Onlineerläuterungen erhalten möchten, folgen Sie größtenteils den gleichen Schritten wie bei Onlineinferenzen. Statt eine projects.locations.endpoints.predict
-Anfrage an die Vertex AI API zu senden, senden Sie jedoch eine projects.locations.endpoints.explain
-Anfrage.
Die folgenden Leitfäden enthalten ausführliche Anleitungen zum Vorbereiten und Senden von Onlineerläuterungsanfragen:
Informationen zu AutoML-Bildklassifizierungsmodellen finden Sie unter Onlinevorhersagen aus AutoML-Modellen abrufen.
Informationen zu tabellarischen AutoML-Klassifizierungs- und Regressionsmodellen finden Sie unter Inferenz aus AutoML-Modellen abrufen.
Für benutzerdefiniert trainierte Modelle finden Sie weitere Informationen unter Onlinevorhersagen aus benutzerdefinierten Modellen abrufen.
Batch-Erklärungen abrufen
Es werden nur featurebasierte Batcherklärungen unterstützt. Beispielbasierte Batcherklärungen sind nicht möglich.
Setzen Sie das Feld generateExplanation
beim Erstellen eines Batchinferenzjobs auf true
, um Batcherläuterungen zu erhalten.
Ausführliche Anleitungen zum Vorbereiten und Erstellen von Batchvorhersagejobs finden Sie unter Batchvorhersagen abrufen.
Gleichzeitige Erläuterungen erhalten
Explainable AI unterstützt gleichzeitige Erklärungen. Mit gleichzeitigen Erläuterungen können Sie sowohl featurebasierte als auch beispielbasierte Erläuterungen vom selben bereitgestellten Modellendpunkt anfordern, ohne Ihr Modell für jede Erläuterungsmethode separat bereitstellen zu müssen.
Wenn Sie gleichzeitige Erläuterungen erhalten möchten, laden Sie Ihr Modell hoch und konfigurieren Sie entweder beispielbasierte oder featurebasierte Erläuterungen. Stellen Sie das Modell dann wie gewohnt bereit.
Nachdem das Modell bereitgestellt wurde, können Sie die konfigurierten Erklärungen wie gewohnt anfordern.
Außerdem können Sie gleichzeitige Erläuterungen anfordern, indem Sie concurrent_explanation_spec_override
angeben.
Beachten Sie bei der Verwendung von gleichzeitigen Erläuterungen Folgendes:
- Gleichzeitige Erklärungen sind nur mit der API-Version
v1beta1
verfügbar. Wenn Sie das Vertex Python SDK verwenden, müssen Sie daspreview
-Modell verwenden, um gleichzeitige Erläuterungen zu nutzen. - Beispielbasierte Erklärungen können nicht angefordert werden, nachdem das Modell mit funktionsbasierten Erklärungen bereitgestellt wurde. Wenn Sie sowohl beispielbasierte als auch featurebasierte Erläuterungen benötigen, stellen Sie Ihr Modell mit beispielbasierten Erläuterungen bereit und fordern Sie featurebasierte Erläuterungen über das Feld „concurrent_explanation“ an.
- Batcherklärungen werden für gleichzeitige Erklärungen nicht unterstützt. Online Diese Funktion kann nur über Erklärungen verwendet werden.
Fehlerbehebung
In diesem Abschnitt werden Schritte zur Fehlerbehebung beschrieben, die möglicherweise hilfreich sind, wenn Sie Probleme beim Abrufen von Erläuterungen haben.
Fehler: Listenindex außerhalb des Bereichs
Wenn Sie beim Anfordern von Erläuterungen die folgende Fehlermeldung erhalten:
"error": "Explainability failed with exception: listindex out of range"
Achten Sie darauf, ein leeres Array nicht an ein Feld zu übergeben, das ein Array von Objekten erwartet. Wenn field1
zum Beispiel ein Array von Objekten akzeptiert, kann der folgende Anfragetext zu einem Fehler führen:
{
"instances": [
{
"field1": [],
}
]
}
Achten Sie stattdessen darauf, dass das Array nicht leer ist. Beispiel:
{
"instances": [
{
"field1": [
{}
],
}
]
}
Nächste Schritte
- Basierend auf den erhaltenen Erläuterungen können Sie nachlesen, wie Sie Ihre
Model
anpassen, um Erläuterungen zu verbessern. - Probieren Sie ein Beispiel-Notebook mit Vertex Explainable AI für tabellarische Daten oder Bilddaten aus.