Debugowanie danych i funkcji

Niska jakość danych może w znacznym stopniu wpłynąć na wydajność modelu. Znacznie łatwiej jest rozpoznać dane niskiej jakości, zamiast odgadywać, czy istnieją, po tym, jak model się nie zgadza. Monitoruj dane zgodnie z wytycznymi w tej sekcji.

Weryfikowanie danych wejściowych za pomocą schematu danych

Aby monitorować dane, musisz je stale sprawdzać pod kątem oczekiwanych wartości statystycznych. Aby to zrobić, napisz reguły, które dane muszą spełniać. Ten zbiór reguł jest nazywany schematem danych. Zdefiniuj schemat danych, wykonując te czynności:

  1. W przypadku danych cech poznasz zakres i rozkład. Omówienie możliwych wartości kategorii cech.
  2. Zakoduj swoją wiedzę za pomocą reguł zdefiniowanych w schemacie. Przykłady reguł:

    • Upewnij się, że oceny wystawione przez użytkowników są zawsze z zakresu od 1 do 5.
    • Sprawdź, czy słowo „the” występuje najczęściej (w przypadku funkcji tekstu w języku angielskim).
    • Sprawdź, czy funkcje kategorii mają wartości ze stałego zestawu.
  3. przetestować dane według schematu danych, Schemat powinien wykrywać błędy danych, na przykład:

    • anomalie
    • nieoczekiwane wartości zmiennych kategorialnych
    • nieoczekiwane rozkłady danych

Upewnij się, że podziały są dobrej jakości

Podziały testowe i treningowe muszą być równoważne z danymi wejściowymi. Jeśli różnice między testem a treningiem różnią się statystycznie, dane treningowe nie pomogą przewidzieć tych danych. Aby dowiedzieć się, jak próbkować i dzielić dane, przeczytaj sekcję na temat przygotowywania i dzielenia danych w ramach kursu Przygotowywanie i edukowanie funkcji w systemie uczących się.

Monitoruj właściwości statystyczne podziałów. Jeśli miejsca się różnią, podnieś flagę. Warto też sprawdzić, czy współczynnik przykładów w poszczególnych podziałach pozostaje bez zmian. Jeśli na przykład dane są podzielone w stosunku 80:20, ten współczynnik nie powinien się zmieniać.

Testowanie danych automatycznych

Nieprzetworzone dane mogą być prawidłowe, ale model widzi tylko dane pochodzące z inżynierii. Wymyślone dane znacznie różnią się od nieprzetworzonych danych wejściowych, musisz więc sprawdzać je osobno. Biorąc pod uwagę Twoje zinterpretowane dane, napisz testy jednostkowe. Możesz na przykład napisać testy jednostkowe, które pozwolą sprawdzić, czy spełnione są te warunki:

  • Skalowane są wszystkie funkcje liczbowe, na przykład od 0 do 1.
  • Wektory z kodowaniem 1 gorącym zawierają tylko 1 zer.
  • Brakujące dane są zastępowane wartościami średnimi lub domyślnymi.
  • Rozkład danych po transformacji jest zgodny z oczekiwaniami. Jeśli na przykład normalizujesz wyniki przy użyciu wyników z-, średnia wyników wynosi 0.
  • Wyniki odstające, takie jak skalowanie lub przycinanie, są obsługiwane.