Menjalankan tugas pemantauan

Saat Anda menjalankan tugas, Pemantauan Model v2 menggunakan data dari set data target dan dasar pengukuran Anda, menghitung metrik, dan berpotensi menghasilkan pemberitahuan. Model Monitoring v2 menawarkan tugas on-demand untuk pemantauan ad hoc atau tugas terjadwal untuk pemantauan berkelanjutan. Tidak peduli opsi yang Anda pilih, setiap tugas merupakan eksekusi batch tunggal.

Untuk mengetahui informasi selengkapnya tentang tujuan pemantauan dan model yang didukung, baca Ringkasan Pemantauan Model v2 dan Menyiapkan pemantauan model.

Menjalankan tugas sesuai permintaan

Menjalankan tugas pemantauan satu kali. Tetapkan set data target dan dasar pengukuran serta spesifikasi pemantauan untuk tujuan yang akan dipantau. Konfigurasi Anda akan mengganti setelan default apa pun, jika disetel, yang ditentukan oleh monitor model.

Konsol

  1. Di konsol Google Cloud, buka halaman Monitoring.

    Buka Monitoring

  2. Klik monitor model yang tugas pemantauannya ingin Anda jalankan.

  3. Di halaman detail monitor model, klik Run now untuk mengonfigurasi tugas pemantauan.

  4. Konfigurasikan tugas Anda atau gunakan setelan default seperti yang ditentukan dalam monitor model.

  5. Klik Run.

Python SDK

from vertexai.resources.preview import ml_monitoring

FEATURE_THRESHOLDS = {
  "culmen_length_mm": 0.001,
  "body_mass_g": 0.002,
}

FEATURE_DRIFT_SPEC=ml_monitoring.spec.DataDriftSpec(
  categorical_metric_type="l_infinity",
  numeric_metric_type="jensen_shannon_divergence",
  default_categorical_alert_threshold=0.001,
  default_numeric_alert_threshold=0.002,
  feature_alert_thresholds=FEATURE_THRESHOLDS,
)

PREDICTION_OUTPUT_DRIFT_SPEC=ml_monitoring.spec.DataDriftSpec(
  categorical_metric_type="l_infinity",
  numeric_metric_type="jensen_shannon_divergence",
  default_categorical_alert_threshold=0.001,
  default_numeric_alert_threshold=0.001,
)

FEATURE_ATTRIBUTION_SPEC=ml_monitoring.spec.FeatureAttributionSpec(
  default_alert_condition=0.0003,
  feature_alert_conditions={"cnt_ad_reward":0.0001},
)

EXPLANATION_SPEC=ExplanationSpec(
  parameters=ExplanationParameters(
      {"sampled_shapley_attribution": {"path_count": 2}}
  ),
  metadata=ExplanationMetadata(
      inputs={
          "cnt_ad_reward": ExplanationMetadata.InputMetadata({
              "input_tensor_name": "cnt_ad_reward",
              "encoding": "IDENTITY",
              "modality": "numeric"
          }),
          ...
      },
      ...
  )
)

TRAINING_DATASET=ml_monitoring.spec.MonitoringInput(
  gcs_uri=TRAINING_URI,
  data_format="csv"
)

TARGET_DATASET=ml_monitoring.spec.MonitoringInput(
  table_uri=BIGQUERY_URI
)

model_monitoring_job=my_model_monitor.run(
  display_name=JOB_DISPLAY_NAME,
  baseline_dataset=TRAINING_DATASET,
  target_dataset=TARGET_DATASET,
  tabular_objective_spec=ml_monitoring.spec.TabularObjective(
      # Optional: set to monitor input feature drift.
      feature_drift_spec=FEATURE_DRIFT_SPEC,

      # Optional: set to monitor prediction output drift.
      prediction_output_drift_spec=PREDICTION_OUTPUT_DRIFT_SPEC,

      # Optional: set to monitor feature attribution drift.
      feature_attribution_spec=FEATURE_ATTRIBUTION_SPEC
  ),

  # Optional: additional configurations to override default values.
  explanation_config=EXPLANATION_SPEC,
  notification_spec=NOTIFICATION_SPEC,
  output_spec=OUTPUT_SPEC
)

Jadwalkan operasi berkelanjutan

Anda dapat menetapkan satu atau beberapa jadwal berjalan untuk monitor model. Untuk menggunakan pemantauan berkelanjutan dengan spesifikasi waktu, set data Anda harus memiliki kolom stempel waktu agar Model Monitoring v2 dapat mengambil data dari rentang waktu yang ditentukan.

Konsol

  1. Di konsol Google Cloud, buka halaman Monitoring.

    Buka Monitoring

  2. Klik monitor model yang ingin Anda konfigurasi pemantauannya secara berkelanjutan.

  3. Klik Jadwalkan operasi berulang.

  4. Tetapkan set data target dan dasar pengukuran Anda, lalu klik Continue.

  5. Tetapkan tujuan untuk dipantau, nilai minimumnya, serta setelan notifikasi saat pemberitahuan dibuat.

  6. Klik Continue.

  7. Mengonfigurasi jadwal untuk pekerjaan berulang:

    1. Tentukan nama untuk penjadwal.
    2. Untuk Start time, tentukan kapan tugas pertama akan dimulai.
    3. Untuk Frekuensi, gunakan ekspresi cron untuk menetapkan frekuensi, lalu tetapkan zona waktu.
    4. Untuk Ends, tentukan kapan penjadwal berakhir.
  8. Klik Create.

Python SDK

Untuk menetapkan frekuensi tugas pemantauan, gunakan ekspresi cron.

my_model_monitoring_schedule=my_model_monitor.create_schedule(
  display_name=SCHEDULE_DISPLAY_NAME,
  # Every day at 0:00(midnight)
  cron='"0 * * * *"',
  baseline_dataset=ml_monitoring.spec.MonitoringInput(
      endpoints=[ENDPOINT_RESOURCE_NAME],
      offset="24h",
      window="24h",
  ),
  target_dataset=ml_monitoring.spec.MonitoringInput(
      endpoints=[ENDPOINT_RESOURCE_NAME],
      window="24h"
  ),
  tabular_objective_spec=ml_monitoring.spec.TabularObjective(
      feature_drift_spec=FEATURE_DRIFT_SPEC
  ),
  output_spec=OUTPUT_SPEC,
  notification_spec=NOTIFICATION_SPEC,
)

Menjeda atau melanjutkan jadwal

Anda dapat menjeda dan melanjutkan jadwal untuk melewati atau menghentikan sementara pemantauan tugas yang berjalan.

Konsol

  1. Di konsol Google Cloud, buka halaman Monitoring.

    Buka Monitoring

  2. Klik monitor model yang berisi jadwal yang akan diubah.

  3. Di halaman detail, buka tab Jadwal.

  4. Klik jadwal yang akan diubah.

  5. Klik Jeda atau Lanjutkan untuk menjeda atau melanjutkan jadwal.

Python SDK

# Pause schedule
my_model_monitor.pause_schedule(my_monitoring_schedule.name)

# Resume schedule
my_model_monitor.resume_schedule(my_monitoring_schedule.name)

Hapus jadwal

Hapus jadwal jika Anda tidak menggunakannya. Data yang ada akan tetap ada serta tugas yang telah dibuat sebelumnya.

Konsol

  1. Di konsol Google Cloud, buka halaman Monitoring.

    Buka Monitoring

  2. Klik monitor model yang berisi jadwal yang akan diubah.

  3. Di halaman detail, buka tab Jadwal.

  4. Klik jadwal yang akan diubah.

  5. Klik Hapus dan Hapus lagi untuk mengonfirmasi.

Python SDK

my_model_monitor.delete_schedule(my_monitoring_schedule.name)

Menganalisis hasil tugas pemantauan

Anda dapat menggunakan Konsol Google Cloud untuk memvisualisasikan distribusi data untuk setiap tujuan pemantauan dan mempelajari perubahan mana yang menyebabkan penyimpangan dari waktu ke waktu.

Visualisasi menunjukkan histogram yang membandingkan distribusi data antara target dan data dasar pengukuran. Berdasarkan tingkat toleransi, Anda dapat, misalnya, memutuskan untuk menyesuaikan pipeline pembuatan fitur atau melatih ulang model.

Melihat detail tugas

Lihat detail tentang tugas pemantauan yang dijalankan, seperti daftar fitur yang dipantau dan fitur apa saja yang membuat pemberitahuan.

Konsol

  1. Di konsol Google Cloud, buka halaman Monitoring.

    Buka Monitoring

  2. Klik monitor model yang berisi tugas yang akan dianalisis.

  3. Di halaman Monitor details, klik tab Runs.

  4. Dari daftar operasi, klik proses untuk melihat detailnya, seperti semua fitur yang disertakan dalam proses.

    Contoh berikut menunjukkan perbandingan distribusi untuk fitur country dari tugas prediksi batch. Konsol Google Cloud juga memberikan detail tentang perbandingan bergantung pada metrik, seperti jumlah nilai unik, nilai rata-rata, dan simpangan baku.

    Histogram yang menunjukkan contoh distribusi fitur untuk set data target dan set data dasar pengukuran.

Melihat detail fitur

Lihat informasi tentang fitur dan daftar tugas pemantauan yang menyertakan fitur tersebut.

Konsol

  1. Di konsol Google Cloud, buka halaman Monitoring.

    Buka Monitoring

  2. Klik monitor model yang berisi tugas yang akan dianalisis.

  3. Di tab Overview, Anda dapat melihat ringkasan, yang mencakup tren penyimpangan untuk semua tujuan yang dipantau jika Anda telah menyiapkan pemantauan berkelanjutan. Anda juga dapat mempelajari tujuan tertentu lebih mendalam untuk melihat detail seperti nama fitur yang dipantau dan daftar operasi pemantauan.

    Contoh berikut menunjukkan perbandingan distribusi untuk fitur country. Setelah histogram, Anda dapat melihat operasi mana yang menghasilkan pemberitahuan atau memilih tugas pemantauan lain yang menyertakan data pemantauan untuk fitur ini.

    Histogram yang menunjukkan contoh distribusi data input untuk set data target dan set data dasar pengukuran.