Testování modelu

Strojové učení od začátku do konce

Joshua Stapleton

Machine Learning Engineer

Nasazení

  • Další krok v životním cyklu ML
  • Po trénování a vyhodnocení
  • Zpřístupnění modelu k použití

Fáze nasazení v životním cyklu strojového učení

Strojové učení od začátku do konce

Testování

  • Testování:
    • Model nespadne
    • Vrací rozumné výstupy při inferenci
    • Vrací výstupy v přijatelném čase

Fáze nasazení v životním cyklu strojového učení

Strojové učení od začátku do konce

Unittest

  • Testování
    • Označení anomálních / neočekávaných událostí
    • Ověření, že model funguje podle očekávání

 

  • unittest
    • Vestavěná Python knihovna pro psaní testů
    • Testovací případ: pokrývá typ testu
    • Metoda testovacího případu: jeden test pro jeden aspekt
Strojové učení od začátku do konce

Použití Unittest

import unittest


class TestModelInference(unittest.TestCase):
def setUp(self): self.model = fitted_model self.X_test = X_test
def test_prediction_output_shape(self): y_pred = self.model.predict(self.X_test) self.assertEqual(y_pred.shape[0], self.X_test.shape[0])
if __name__ == '__main__': unittest.main()
Strojové učení od začátku do konce

Použití Unittest (pokračování)

 

    def test_input_values(self):
        print("Running test_input_values test case")

        # Get inputs (each row in testing set)
        for input in X_test: 
            for value in input:
                # if value is cholestrol, for example:
                self.assertIn(value, [0, 500])
Strojové učení od začátku do konce

Testování v Pythonu

Strojové učení od začátku do konce

Co při testování dělat a nedělat

Osvědčené postupy

  • NE...
    • Psát příliš mnoho testů
    • Psát redundantní testy
    • Testovat vysoce spolehlivé komponenty

 

  • ANO...
    • Psát testy pro zvýšení spolehlivosti
    • Psát testy pro ověření očekávání
    • Psát testy pro nové funkce
Strojové učení od začátku do konce

Výhody testování

Výhody TDD

  • Jistota při vývoji
    • Stabilní iterace
    • Méně obav z chyb
  • Výkon
    • Spolehlivost
    • Produkční kvalita
Strojové učení od začátku do konce

Lass uns üben!

Strojové učení od začátku do konce

Preparing Video For Download...