Menggunakan {i>What-If Tool

Anda dapat menggunakan What-If Tool (WIT) dalam lingkungan notebook untuk memeriksa model Prediksi AI Platform melalui dasbor interaktif. What-If Tool terintegrasi dengan TensorBoard, notebook Jupyter, notebook Colab, dan JupyterHub. Library ini juga telah diinstal sebelumnya di instance TensorFlow yang dikelola pengguna Vertex AI Workbench.

Halaman ini menjelaskan cara menggunakan What-If Tool dengan model terlatih yang sudah di-deploy di AI Platform. Pelajari cara men-deploy model.

Menginstal Alat What-If

Contoh ini menunjukkan cara menginstal witwidget di berbagai lingkungan notebook:

Notebook yang dikelola pengguna

witwidget sudah diinstal di instance notebook yang dikelola pengguna.

Anda dapat memuat tutorial What-If Tool ke instance notebook dengan meng-clone repo tutorial WIT ke instance. Lihat cara meng-clone repo GitHub ke instance notebook yang dikelola pengguna.

{b>Jupyter Notebook (Buku Catatan Jupyter):<b}

Instal dan aktifkan WIT untuk Jupyter melalui perintah berikut:

pip install witwidget
jupyter nbextension install --py --symlink --sys-prefix witwidget
jupyter nbextension enable --py --sys-prefix witwidget

Untuk menggunakan TensorFlow dengan dukungan GPU (tensorflow-gpu), instal versi witwidget yang kompatibel dengan GPU:

pip install witwidget-gpu
jupyter nbextension install --py --symlink --sys-prefix witwidget
jupyter nbextension enable --py --sys-prefix witwidget

Anda hanya perlu menjalankan perintah penginstalan ini sekali di lingkungan Jupyter. Selanjutnya, setiap kali Anda memunculkan {i>kernel<i} Jupyter, Alat {i>What-If<i} akan tersedia.

notebook Colab

Instal widget ke runtime kernel notebook dengan menjalankan sel yang berisi:

!pip install witwidget

Untuk menggunakan TensorFlow dengan dukungan GPU (tensorflow-gpu), instal versi witwidget yang kompatibel dengan GPU:

!pip install witwidget-gpu

JupyterLab

Ikuti petunjuk ini untuk JupyterLab di luar notebook yang dikelola pengguna.

Instal dan aktifkan WIT untuk JupyterLab dengan menjalankan sel yang berisi:

!pip install witwidget
!jupyter labextension install wit-widget
!jupyter labextension install @jupyter-widgets/jupyterlab-manager

Untuk dukungan GPU TensorFlow, gunakan paket witwidget-gpu:

!pip install witwidget-gpu
!jupyter labextension install wit-widget
!jupyter labextension install @jupyter-widgets/jupyterlab-manager

Perhatikan bahwa Anda mungkin perlu menjalankan perintah !sudo jupyter labextension ... bergantung pada penyiapan notebook Anda.

Menyesuaikan output prediksi untuk Alat What-If

Untuk model apa pun yang output-nya tidak cocok dengan yang diperlukan What-If Tool, Anda harus menentukan fungsi penyesuaian prediksi dalam kode Anda.

What-If Tool memerlukan format input berikut:

  • Model klasifikasi: Daftar skor kelas
  • Model regresi: Skor regresi

Misalnya, model klasifikasi biner XGBoost hanya menampilkan skor untuk kelas positif. Karena What-If Tool mengharapkan skor untuk setiap kelas, Anda perlu menggunakan fungsi penyesuaian prediksi berikut untuk mendapatkan daftar dengan skor negatif dan positif:

def adjust_prediction(pred):
  return [1 - pred, pred]

Tentukan fungsi penyesuaian prediksi dalam sel kode notebook sebelum mengonfigurasi What-If Tool.

Mengonfigurasi What-If Tool

Anda dapat menggunakan What-If Tool untuk memeriksa satu model, atau untuk membandingkan dua model. Di bagian WitConfigBuilder, isi nilai yang sesuai untuk project Google Cloud Anda, model dan versi Prediction AI Platform, serta nilai lain yang sesuai untuk model Anda.

  1. Impor witwidget:

    import witwidget
    
  2. Buat WitConfigBuilder untuk meneruskan berbagai parameter tentang model Anda dan project AI Platform Prediction Anda ke What-If Tool. Anda dapat menggunakan What-If Tool untuk memeriksa satu model, atau untuk membandingkan dua model. Isi nilai yang sesuai untuk project Google Cloud Anda, model dan versi Prediction AI Platform Anda, serta nilai lain yang sesuai dengan model Anda.

    Memeriksa model

    Builder konfigurasi ini menunjukkan cara menggunakan What-If Tool untuk memeriksa satu model. Lihat contoh lengkap notebook dengan model XGBoost yang di-deploy.

    Lihat kode untuk WitConfigBuilder guna mengetahui detail selengkapnya tentang setiap metode.

    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))
    

    Membandingkan model

    Builder konfigurasi ini menunjukkan cara menggunakan What-If Tool untuk memeriksa dan membandingkan dua model. Lihat contoh lengkap notebook yang membandingkan model Keras dan scikit-learn yang di-deploy.

    Lihat kode untuk WitConfigBuilder guna mengetahui detail selengkapnya tentang setiap metode.

    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))
    
  3. Teruskan builder konfigurasi ke WitWidget, dan setel tinggi tampilan. What-If Tool ditampilkan sebagai visualisasi interaktif di dalam notebook Anda.

    WitWidget(config_builder, height=800)
    

Langkah selanjutnya