Automatizované testování v MLOps

Plně automatizované MLOps

Arturo Opsetmoen Amador

Senior Consultant - Machine Learning

Co je testování softwaru?

$$

Proces hodnocení a ověřování, že softwarový produkt nebo aplikace funguje podle očekávání

$$

Tři nejběžnější typy testování softwaru:

  • Jednotkové testy
  • Integrační testy
  • End-to-end testy

$$

$$

Pyramida zobrazující jednotkové testy v základně, integrační testy uprostřed a end-to-end testy na vrcholu.

Plně automatizované MLOps

ML software má odlišnou povahu

ML aplikace nejsou explicitně naprogramovány

$$

Schéma znázorňující proces učení v ML systémech.

Závisí na:

  • Datech
  • Modelech
Plně automatizované MLOps

Testování v systému MLOps je odlišné

Schéma srovnávající tradiční softwarový systém testovaný jednotkovými a integračními testy s ML systémem testovaným datovými testy, testy modelů a testy pipeline.

1 https://research.google/pubs/pub46555/
Plně automatizované MLOps

Testování ML systémů

$$

Navíc k tradičnímu testování softwaru:

  • Datové testy
  • Testy modelů
  • Testy pipeline
Plně automatizované MLOps

Testování dat

Testy pro příznaky a data zahrnují:

  • Očekávání příznaků
  • Přínos datových příznaků ospravedlňuje náklady
  • Ochrana soukromí
  • Zamezení použití nezákonných dat

$$

Sada teploměrů zobrazující různá měření.

Plně automatizované MLOps

Testování modelů

Testy pro modely zahrnují:

  • Korelace obchodních a ML metrik
  • Vyladění všech hyperparametrů

  • Přeučení modelu

  • Zastaralost modelu
  • Srovnání se základní linií
Plně automatizované MLOps

Testování ML pipeline

Testy pro ML pipeline zahrnují:

  • Reprodukovatelnost tréninku
  • Integrační testování ML pipeline

  • Laditelnost modelu

Plně automatizované MLOps

Pojďme procvičovat!

Plně automatizované MLOps

Preparing Video For Download...