Sie können das What-If-Tool (WIT) in Notebookumgebungen verwenden, um AI Platform Prediction-Modelle über ein interaktives Dashboard zu prüfen. Das What-If-Tool ist in TensorBoard, Jupyter-Notebooks, Colab-Notebooks und JupyterHub eingebunden. Außerdem ist es auf von Nutzern verwalteten TensorFlow-Instanzen von Vertex AI Workbench vorinstalliert.
Auf dieser Seite wird erläutert, wie Sie das What-If-Tool mit einem trainierten Modell verwenden, das bereits auf AI Platform bereitgestellt ist. Weitere Informationen zum Bereitstellen von Modellen
What-If-Tool installieren
Hier erfahren Sie, wie Sie witwidget
in verschiedenen Notebookumgebungen installieren:
Nutzerverwaltete Notebooks
witwidget
ist bereits auf nutzerverwalteten Notebookinstanzen installiert.
Sie können die What-If-Tool-Anleitungen in Ihre Notebookinstanz laden. Dazu klonen Sie das WIT-Anleitungsrepository in Ihre Instanz. Weitere Informationen finden Sie unter GitHub-Repository in eine vom Nutzer verwaltete Notebookinstanz klonen.
Jupyter-Notebook
Mit den folgenden Befehlen installieren und aktivieren Sie das WIT für Jupyter:
pip install witwidget
jupyter nbextension install --py --symlink --sys-prefix witwidget
jupyter nbextension enable --py --sys-prefix witwidget
Sie können die GPU-kompatible Version von witwidget installieren, um TensorFlow mit GPU-Unterstützung (tensorflow-gpu
) zu verwenden:
pip install witwidget-gpu
jupyter nbextension install --py --symlink --sys-prefix witwidget
jupyter nbextension enable --py --sys-prefix witwidget
Sie müssen diese Installationsbefehle nur einmal in der Jupyter-Umgebung ausführen. Wenn Sie danach einen Jupyter-Kernel einrichten, ist das What-If-Tool verfügbar.
Colab-Notebook
Installieren Sie das Widget in die Laufzeit des Notebook-Kernels, indem Sie eine Zelle ausführen, die Folgendes enthält:
!pip install witwidget
Sie können die GPU-kompatible Version von witwidget installieren, um TensorFlow mit GPU-Unterstützung (tensorflow-gpu
) zu verwenden:
!pip install witwidget-gpu
JupyterLab
Folgen Sie dieser Anleitung für JupyterLab außerhalb von vom Nutzer verwalteten Notebooks.
Sie installieren und aktivieren das WIT für JupyterLab, indem Sie eine Zelle ausführen, die Folgendes enthält:
!pip install witwidget
!jupyter labextension install wit-widget
!jupyter labextension install @jupyter-widgets/jupyterlab-manager
Für die TensorFlow-GPU-Unterstützung verwenden Sie das Paket witwidget-gpu
:
!pip install witwidget-gpu
!jupyter labextension install wit-widget
!jupyter labextension install @jupyter-widgets/jupyterlab-manager
Je nach Notebookeinrichtung müssen Sie gegebenenfalls einige !sudo jupyter labextension ...
-Befehle ausführen.
Vorhersageausgaben für das What-If-Tool anpassen
Für alle Modelle, deren Ausgabe nicht den Anforderungen des What-If-Tools entspricht, müssen Sie eine Vorhersageanpassungsfunktion in Ihrem Code definieren.
Für das What-If-Tool sind die folgenden Eingabeformate erforderlich:
- Klassifikationsmodell: Eine Liste der Klassenpunktzahlen
- Regressionsmodell: Eine Regressionspunktzahl
Ein binäres XGBoost-Klassifikationsmodell gibt beispielsweise nur Ergebnisse für die positive Klasse zurück. Da das What-If-Tool Ergebnisse für jede Klasse erwartet, verwenden Sie die folgende Vorhersageanpassungsfunktion, um eine Liste mit sowohl den negativen als auch den positiven Punktzahlen zu erhalten:
def adjust_prediction(pred):
return [1 - pred, pred]
Bevor Sie das What-If-Tool konfigurieren, definieren Sie die Vorhersageanpassungsfunktion in einer Notebook-Codezelle.
What-If-Tool konfigurieren
Sie können das What-If-Tool verwenden, um ein Modell zu prüfen oder zwei Modelle miteinander zu vergleichen.
Geben Sie die entsprechenden Werte für Ihr Google Cloud-Projekt, das AI Platform-Modell und die Version sowie weitere für Ihr Modell geeignete Werte im WitConfigBuilder
ein.
Importieren Sie
witwidget
:import witwidget
Erstellen Sie einen
WitConfigBuilder
, um verschiedene Parameter für das Modell und das AI Platform Prediction-Projekt an das What-If-Tool zu übergeben. Sie können das What-If-Tool verwenden, um ein Modell zu prüfen oder zwei Modelle miteinander zu vergleichen. Geben Sie die entsprechenden Werte für Ihr Google Cloud-Projekt, das AI Platform Prediction-Modell und die Version sowie weitere für Ihr Modell geeignete Werte ein.Modell prüfen
In diesem Config Builder wird gezeigt, wie Sie mit dem What-If-Tool ein Modell prüfen können. Hier finden Sie ein komplettes Beispielnotebook mit einem bereitgestellten XGBoost-Modell.
Weitere Details zu den einzelnen Methoden finden Sie im Code für den
WitConfigBuilder
.PROJECT_ID = 'YOUR_PROJECT_ID' MODEL_NAME = 'YOUR_MODEL_NAME' VERSION_NAME = 'YOUR_VERSION_NAME' TARGET_FEATURE = 'mortgage_status' LABEL_VOCAB = ['denied', 'approved'] config_builder = (WitConfigBuilder(test_examples.tolist(), features.columns.tolist() + ['mortgage_status']) .set_ai_platform_model(PROJECT_ID, MODEL_NAME, VERSION_NAME, adjust_prediction=adjust_prediction) .set_target_feature(TARGET_FEATURE) .set_label_vocab(LABEL_VOCAB))
Modelle vergleichen
In diesem Config Builder wird gezeigt, wie Sie mit dem What-If-Tool zwei Modelle prüfen und miteinander vergleichen können. Hier finden Sie ein komplettes Beispielnotebook mit einem Vergleich von bereitgestellten Keras- und scikit-learn-Modellen.
Weitere Details zu den einzelnen Methoden finden Sie im Code für den
WitConfigBuilder
.PROJECT_ID = 'YOUR_PROJECT_ID' KERAS_MODEL_NAME = 'YOUR_KERAS_MODEL_NAME' KERAS_VERSION_NAME = 'VERSION_NAME_OF_YOUR_KERAS_MODEL' SKLEARN_MODEL_NAME = 'YOUR_SKLEARN_MODEL_NAME' SKLEARN_VERSION_NAME = 'VERSION_NAME_OF_YOUR_SKLEARN_MODEL' TARGET_FEATURE = 'quality' config_builder = (WitConfigBuilder(test_examples.tolist(), features.columns.tolist() + [TARGET_FEATURE]) .set_ai_platform_model(PROJECT_ID, KERAS_MODEL_NAME, KERAS_VERSION_NAME) .set_predict_output_tensor('sequential').set_uses_predict_api(True) .set_target_feature(TARGET_FEATURE) .set_model_type('regression') .set_compare_ai_platform_model(PROJECT_ID, SKLEARN_MODEL_NAME, SKLEARN_VERSION_NAME))
Sie übergeben den Config Builder an WitWidget und legen eine Anzeigehöhe fest. Das What-If-Tool wird als interaktive Visualisierung in Ihrem Notebook angezeigt.
WitWidget(config_builder, height=800)
Nächste Schritte
- Mithilfe der What-If-Tool-Demos und der Schritt-für-Schritt-Anleitung erfahren Sie, wie Modelle untersucht werden.
- Weitere Informationen dazu, wie Sie das What-If-Tool zur Optimierung für AI Fairness in Ihrem Modell verwenden.