Pengujian otomatis di MLOps

MLOps Otomatis Penuh

Arturo Opsetmoen Amador

Senior Consultant - Machine Learning

Apa itu pengujian perangkat lunak?

$$

Proses menilai dan memverifikasi bahwa produk atau aplikasi perangkat lunak bekerja sesuai harapan

$$

Tiga jenis pengujian perangkat lunak paling umum:

  • Unit test
  • Integration test
  • End-to-end test

$$

$$

Sebuah piramida menampilkan unit test di dasar, lalu integration test, dan di puncak end-to-end test.

MLOps Otomatis Penuh

Sifat perangkat lunak ML berbeda

Aplikasi ML tidak diprogram secara eksplisit

$$

Proses yang menggambarkan proses pembelajaran pada sistem ML.

Aplikasi ini bergantung pada:

  • Data
  • Model
MLOps Otomatis Penuh

Pengujian dalam sistem MLOps itu berbeda

Gambar menunjukkan sistem perangkat lunak tradisional diuji dengan unit test dan integration test. Di sisi lain, sistem ML dengan data test, model test, dan pipeline test.

1 https://research.google/pubs/pub46555/
MLOps Otomatis Penuh

Menguji sistem ML

$$

Selain pengujian perangkat lunak tradisional:

  • Data test
  • Model test
  • Pipeline test
MLOps Otomatis Penuh

Menguji data

Pengujian fitur dan data mencakup:

  • Ekspektasi fitur
  • Nilai dari fitur berbasis data sepadan dengan biayanya
  • Kontrol privasi
  • Hindari penggunaan data ilegal

$$

Sekelompok termometer menunjukkan pengukuran berbeda.

MLOps Otomatis Penuh

Menguji model

Pengujian model mencakup:

  • Metrik bisnis & ML saling berkorelasi
  • Semua hyperparameter sudah dituning

  • Overfitting model

  • Model kedaluwarsa (stale)
  • Perbandingan dengan baseline
MLOps Otomatis Penuh

Menguji pipeline ML

Pengujian untuk pipeline ML mencakup:

  • Pelatihan dapat direproduksi
  • Pengujian integrasi pipeline ML

  • Kemudahan debug model

MLOps Otomatis Penuh

Ayo berlatih!

MLOps Otomatis Penuh

Preparing Video For Download...