man, writing, laptop-2562325.jpg

A/B testy modelu ML (część 3). 4 typowe błędy w A/B testach.


Ten wpis to trzeci i ostatni z serii wpisów o A/B testach. Pozostałe to:

Tutaj przedstawię Ci typowe błędy, z jakimi zmagają się nie tylko niedoświadczeni, ale nawet zaawansowani inżynierowie ML.

Zazwyczaj w przeprowadzenie A/B testów zaangażowanych jest więcej osób. ML inżynierowie / analitycy danych, ale także osoby odpowiadające za wdrożenie lub działanie danego elementu po stronie klienta. Czasem również ludzie, którzy współpracują z modelem. Większość z tych osób może nie znać w szczegółach metodologii, jaka stoi za A/B testami.

Dlatego nawet dla doświadczonego inżyniera rzetelne przeprowadzenie A/B testów może być dużym wyzwaniem. Pamiętaj, że to Ty jesteś osobą najbardziej odpowiedzialną za poprawną metodologię i interpretację A/B testów i musisz być wyczulonym na możliwe błędy:

1. Brak ustalonej hipotezy lub czasu i zakresu eksperymentu

Pamiętaj, że cały eksperyment opiera się na postawionej hipotezie. Nie możesz uruchomić A/B testu, żeby “zobaczyć co się stanie” lub dopiero po uruchomieniu zastanawiać się, w jaki sposób sprawdzisz wyniki algorytmu. Powinieneś mieć jasne oczekiwanie, jaką metrykę chcesz sprawdzić i jak długo będzie trwał eksperyment.

2. Jednoczesne testowanie wielu rzeczy

Problem może się pojawić, jeśli w jednym eksperymencie testujesz wiele różnych optymalizacji (np. wdrożone kilka modeli na raz do różnych zastosowań) , ale też jeśli np. używasz wielu metryk. Kiedy testujesz zbyt wiele rzeczy naraz, trudno jest określić, która z nich spowodowała sukces lub porażkę. W rezultacie ustalanie priorytetów testów ma kluczowe znaczenie dla powodzenia testów A/B.

Aby rozwiązać ten problem, możesz albo ograniczyć się do najważniejszych aspektów na początku, bądź też pomyśleć o A/B/C testach, gdzie testujesz dwa aspekty, z których każda para grup ma jeden element wspólny.

3. Ignorowanie istotności statystycznej

Czasem możemy zbyt łatwo uwierzyć w sukces lub porażkę naszego eksperymentu, nie czekając aż dobiegnie do końca, zgodnie z ustalonym zakresem. To duży błąd.

Pamiętaj, że losowość jest nieodłącznym elementem większości zjawisk, dlatego jeśli Twój test nie jest istotny statystycznie, nie ma znaczenia wielkość uzyskanych metryk. Nie pozwól, aby bez istotności statystycznej były podejmowane kluczowe decyzje dotyczące Twojego modelu.

4. Nieupewnienie się co do poprawności eksperymentu

W poprzednim artykule wskazałem na różne problemy w A/B testach. Warto, byś był w stanie je wykluczyć przed rozpoczęciem eksperymentu (np. fakt, że jedna grupa nie ingeruje w drugą). Trzeba również się upewnić co do poprawności działania modelu, poprawności zbierania wyników itp.

Może wspominam o tym dość pobieżnie, ale uwierz mi, że to jest bardzo częsty problem i prawdopodobnie większość nieudanych A/B testów (przynajmniej w pierwszej iteracji) wynika z różnych problemów z niedziałającym modelem, nieprawidłowo dostarczanymi predykcjami, nieuwzględnianiem ich czy źle odkładanymi wynikami, a nie z tego, że nasz model jest słaby.

Praktyczna porada 💡

Jeśli chcesz upewnić się, czy Twoje środowisko do A/B testów jest prawidłowo skonfigurowane i czy dwie grupy faktycznie są identyczne, możesz w obu grupach uruchomić ten sam model (lub nawet zbierać wyniki przez jakiś czas bez modelu) i patrzeć, czy wyniki obu grup będą zbiegać. Jeśli nie będą zbiegać, to małe szanse są na to, że z A/B testów różnych modeli cokolwiek wywnioskujesz.

Podsumowanie

Przedstawiłem Ci najczęstsze błędy, z jakimi zetknąłem się w mojej pracy. Myślę, że niestety są bardzo rozpowszechnione. Mam nadzieję, że ten wpis pomoże w ograniczeniu ich. A może Ty masz inne doświadczenie? Czy spotkałeś się z innymi błędami?