MLOps'ta otomatik test

Tam Otomatik MLOps

Arturo Opsetmoen Amador

Senior Consultant - Machine Learning

Yazılım testi nedir?

$$

Bir yazılım ürünü ya da uygulamanın beklendiği gibi çalıştığını değerlendirme ve doğrulama süreci

$$

En yaygın üç yazılım testi:

  • Birim testleri
  • Entegrasyon testleri
  • Uçtan uca testler

$$

$$

Tabanda birim testleri, onun üstünde entegrasyon testleri ve en üstte uçtan uca testlerin yer aldığı bir piramit.

Tam Otomatik MLOps

ML yazılımının doğası farklıdır

ML uygulamaları açıkça programlanmaz

$$

ML sistemlerinde öğrenme sürecini gösteren bir süreç.

Şunlara bağlıdır:

  • Veri
  • Modeller
Tam Otomatik MLOps

Bir MLOps sisteminde test farklıdır

Bir tarafta birim ve entegrasyon testleriyle test edilen geleneksel yazılım; diğer tarafta veri testleri, model testleri ve boru hattı testleri olan bir ML sistemi.

1 https://research.google/pubs/pub46555/
Tam Otomatik MLOps

ML sistemlerini test etme

$$

Geleneksel yazılım testlerine ek olarak:

  • Veri testleri
  • Model testleri
  • Boru hattı testleri
Tam Otomatik MLOps

Veriyi test etme

Özellikler ve veri için testler şunları içerir:

  • Özellik beklentileri
  • Bir veri özelliğinin değeri maliyetini karşılıyor mu
  • Gizlilik kontrolü
  • Yasadışı verinin kullanılmasından kaçınma

$$

Farklı ölçümler gösteren bir dizi termometre.

Tam Otomatik MLOps

Modelleri test etme

Modeller için testler şunları içerir:

  • İş ve ML metrikleri korele
  • Tüm hiperparametreler ayarlandı

  • Aşırı öğrenme

  • Model bayatlaması
  • Temel seviye ile karşılaştırma
Tam Otomatik MLOps

ML boru hatlarını test etme

ML boru hatları için testler şunları içerir:

  • Eğitimin tekrarlanabilirliği
  • ML boru hattının entegrasyon testi

  • Modelin hata ayıklanabilirliği

Tam Otomatik MLOps

Hadi pratik yapalım!

Tam Otomatik MLOps

Preparing Video For Download...