Vertex AI Model Monitoring untuk prediksi batch

Halaman ini menjelaskan cara mengonfigurasi permintaan tugas prediksi batch untuk menyertakan analisis Model Monitoring satu kali. Untuk prediksi batch, Model Monitoring mendukung deteksi skew (kemiringan) fitur untuk fitur input kategori dan numerik.

Untuk membuat tugas prediksi batch dengan analisis skew Model Monitoring, Anda harus menyertakan data input prediksi batch dan data pelatihan asli untuk model Anda ke dalam permintaan. Anda hanya dapat menambahkan analisis Model Monitoring saat membuat tugas prediksi batch baru.

Untuk mengetahui informasi selengkapnya tentang skew, lihat Pengantar Model Monitoring.

Untuk mengetahui petunjuk cara menyiapkan Model Monitoring untuk prediksi online (real-time), lihat Menggunakan Model Monitoring.

Prasyarat

Untuk menggunakan Model Monitoring dengan prediksi batch, selesaikan langkah-langkah berikut:

  1. Siapkan model di Vertex AI Model Registry berupa AutoML tabular atau jenis pelatihan kustom tabular.

  2. Upload data pelatihan Anda ke Cloud Storage atau BigQuery dan dapatkan link URI ke data tersebut.

    • Untuk model yang dilatih dengan AutoML, Anda dapat menggunakan ID set data untuk set data pelatihan.
  3. Model Monitoring membandingkan data pelatihan dengan output prediksi batch. Pastikan Anda menggunakan format file yang didukung untuk data pelatihan dan output prediksi batch:

    Jenis model Data pelatihan Output prediksi batch
    Dilatih secara khusus CSV, JSONL, BigQuery, TfRecord(tf.train.Example) JSONL
    AutoML tabular CSV, JSONL, BigQuery, TfRecord(tf.train.Example) CSV, JSONL, BigQuery, TfRecord(Protobuf.Value)
  4. Opsional: Untuk model yang dilatih secara khusus, upload skema untuk model Anda ke Cloud Storage. Model Monitoring memerlukan skema untuk menghitung distribusi dasar pengukuran untuk deteksi skew.

Meminta prediksi batch

Anda dapat menggunakan metode berikut untuk menambahkan konfigurasi Model Monitoring ke tugas prediksi batch:

Konsol

Ikuti petunjuk untuk membuat permintaan prediksi batch dengan Model Monitoring yang diaktifkan:

REST API

Ikuti petunjuk untuk membuat permintaan prediksi batch menggunakan REST API:

Saat Anda membuat permintaan prediksi batch, tambahkan konfigurasi Model Monitoring berikut ke isi JSON permintaan:

"modelMonitoringConfig": {
 "alertConfig": {
   "emailAlertConfig": {
     "userEmails": "EMAIL_ADDRESS"
   },
  "notificationChannels": [NOTIFICATION_CHANNELS]
 },
 "objectiveConfigs": [
   {
     "trainingDataset": {
       "dataFormat": "csv",
       "gcsSource": {
         "uris": [
           "TRAINING_DATASET"
         ]
       }
     },
     "trainingPredictionSkewDetectionConfig": {
       "skewThresholds": {
         "FEATURE_1": {
           "value": VALUE_1
         },
         "FEATURE_2": {
           "value": VALUE_2
         }
       }
     }
   }
 ]
}

dengan:

  • EMAIL_ADDRESS adalah alamat email untuk menerima pemberitahuan dari Model Monitoring. Contoh, example@example.com.

  • NOTIFICATION_CHANNELS: daftar saluran notifikasi Cloud Monitoring tempat Anda ingin menerima pemberitahuan dari Model Monitoring. Gunakan nama resource untuk saluran notifikasi, yang dapat Anda ambil dengan mencantumkan saluran notifikasi dalam project Anda. Contoh, "projects/my-project/notificationChannels/1355376463305411567", "projects/my-project/notificationChannels/1355376463305411568"

  • TRAINING_DATASET adalah link ke set data pelatihan yang disimpan di Cloud Storage.

    • Untuk menggunakan link ke set data pelatihan BigQuery, ganti kolom gcsSource dengan:
    "bigquerySource": {
        {
          "inputUri": "TRAINING_DATASET"
        }
     }
    
    • Untuk menggunakan link ke model AutoML, ganti kolom gcsSource dengan:
    "dataset": "TRAINING_DATASET"
  • FEATURE_1:VALUE_1 dan FEATURE_2:VALUE_2 adalah nilai minimum pemberitahuan untuk setiap fitur yang ingin Anda pantau. Misalnya, jika Anda menentukan Age=0.4, Model Monitoring akan mencatat pemberitahuan saat jarak statistik antara distribusi input dan dasar pengukuran untuk fitur Age melebihi 0,4. Secara default, setiap fitur kategoris dan numerik dipantau dengan nilai minimum 0,3.

Untuk mengetahui informasi selengkapnya tentang konfigurasi Model Monitoring, lihat Referensi tugas Monitoring.

Python

Lihat contoh notebook untuk menjalankan tugas prediksi batch dengan Model Monitoring untuk model tabular khusus.

Model Monitoring secara otomatis memberi tahu Anda tentang pembaruan dan pemberitahuan tugas melalui email.

Mengakses metrik skew

Anda dapat menggunakan metode berikut untuk mengakses metrik skew untuk tugas prediksi batch:

Konsol (Histogram)

Gunakan konsol Google Cloud untuk melihat histogram distribusi fitur untuk setiap fitur yang dipantau dan mempelajari perubahan mana yang menyebabkan skew dari waktu ke waktu:

  1. Buka halaman Prediksi batch:

    Buka Prediksi batch

  2. Di halaman Prediksi batch, klik tugas prediksi batch yang ingin Anda analisis.

  3. Klik tab Pemberitahuan Model Monitoring untuk melihat daftar fitur input model, beserta informasi terkait, seperti nilai minimum pemberitahuan untuk setiap fitur.

  4. Untuk menganalisis fitur, klik nama fitur tersebut. Halaman menampilkan histogram distribusi fitur untuk fitur tersebut.

    Memvisualisasikan distribusi data sebagai histogram memungkinkan Anda dengan cepat berfokus pada perubahan yang terjadi dalam data. Setelah itu, Anda dapat memutuskan untuk menyesuaikan pipeline pembuatan fitur atau melatih kembali model.

    Histogram menunjukkan contoh distribusi data input dan distribusi data pelatihan
          untuk deteksi skew.

Konsol (file JSON)

Gunakan konsol Google Cloud untuk mengakses metrik dalam format JSON:

  1. Buka halaman Prediksi batch:

    Buka Prediksi batch

  2. Klik nama tugas pemantauan prediksi batch.

  3. Klik tab Properti Monitoring.

  4. Klik link Direktori output Monitoring, yang akan mengarahkan Anda ke bucket Cloud Storage.

  5. Klik folder metrics/.

  6. Klik folder skew/.

  7. Klik file feature_skew.json, yang akan mengarahkan Anda ke halaman Detail objek.

  8. Buka file JSON menggunakan salah satu opsi:

  • Klik Download dan buka file di editor teks lokal.

  • Gunakan jalur file gsutil URI untuk menjalankan gsutil cat GSUTIL_URI di Cloud Shell atau terminal lokal Anda.

File feature_skew.json menyertakan kamus, dengan kuncinya adalah nama fitur dan nilainya adalah skew dari fitur. Contoh:

{
  "cnt_ad_reward": 0.670936,
  "cnt_challenge_a_friend": 0.737924,
  "cnt_completed_5_levels": 0.549467,
  "month": 0.293332,
  "operating_system": 0.05758,
  "user_pseudo_id": 0.1
}

Python

Lihat contoh notebook untuk mengakses metrik skew untuk model tabular khusus setelah menjalankan tugas prediksi batch dengan Model Monitoring.

Men-debug kegagalan pemantauan prediksi batch

Jika tugas pemantauan prediksi batch gagal, Anda dapat menemukan log proses debug di konsol Google Cloud:

  1. Buka halaman Prediksi batch.

    Buka Prediksi batch

  2. Klik nama tugas pemantauan prediksi batch yang gagal.

  3. Klik tab Properti Monitoring.

  4. Klik link Direktori output Monitoring, yang akan mengarahkan Anda ke bucket Cloud Storage.

  5. Klik folder logs/.

  6. Klik salah satu file .INFO, yang akan mengarahkan Anda ke halaman Detail objek.

  7. Buka file log menggunakan salah satu opsi:

    • Klik Download dan buka file di editor teks lokal.

    • Gunakan jalur file gsutil URI untuk menjalankan gsutil cat GSUTIL_URI di Cloud Shell atau terminal lokal Anda.

Tutorial notebook

Pelajari lebih lanjut cara menggunakan Vertex AI Model Monitoring untuk mendapatkan visualisasi dan statistik untuk model dengan tutorial menyeluruh ini.

AutoML

Khusus

Model XGBoost

Atribusi Fitur Explainable AI

Prediksi batch

Penyiapan untuk model tabular

Langkah selanjutnya