Zbiór danych to zbiór: przykłady.
Wiele zbiorów danych przechowuje dane w tabelach (grid), na przykład jako (CSV) lub bezpośrednio z arkuszy kalkulacyjnych albo i tabelach w bazie danych. Tabele to intuicyjny format wprowadzania dla maszyn modeli edukacyjnych. Możesz sobie wyobrazić każdy wiersz tabeli jako przykład a każdą kolumnę jako potencjalną funkcję lub etykietę. Zbiory danych mogą też pochodzić z innych formatów, na przykład plików dziennika i buforów protokołów.
Niezależnie od formatu model ML jest tak dobry i danych, na których trenuje. W tej sekcji omawiamy najważniejsze cechy danych.
Typy danych
Zbiór danych może zawierać wiele rodzajów danych, w tym nie tylko:
- danych numerycznych, które są opisane w jednostka
- danych kategorialnych, które są opisane w osobnym jednostka
- języka ludzkiego, w tym pojedynczych słów i zdań, aż po całe dokumenty tekstowe
- multimedia (np. obrazy, filmy i pliki audio);
- dane wyjściowe z innych systemów ML
- wektory dystrybucyjne, omówione w późniejszej części
Poprzednie typy danych można jeszcze bardziej dzielić. Kolejne moduły tego kursu, na przykład Kategoryczny Moduł Dane – szczegóły i podzielić je na kategorie.
Ilość danych
Ogólną zasadą jest to, że model powinien trenować co najmniej na podstawie wielkości (lub dwóch) większej liczby przykładów niż parametrów możliwych do trenowania. Jednak dobrze modele trenują zwykle na znacznie większej liczbie przykładów.
Modele trenowane na dużych zbiorach danych z niewielką funkcje są ogólnie lepsze od modeli trenowanych na małych zbiorach danych wiele funkcji. Firma Google w przeszłości z powodzeniem trenowała proste modele na do dużych zbiorów danych.
Różne zbiory danych dla różnych programów do systemów uczących się mogą wymagać szalonych wymagań. różne liczby przykładów, aby stworzyć przydatny model. Dla niektórych względnie do prostych problemów, wystarczy kilkadziesiąt przykładów. W przypadku innych problemów bilion przykładów to za mało.
Przy niewielkim zbiorze danych można uzyskać dobre wyniki, wytrenowany na dużych ilościach danych ten sam schemat.
Jakość i wiarygodność danych
Wszyscy wolą wysoką jakość od niskiej, ale jakość jest dość niejednoznaczna. można je zdefiniować na wiele różnych sposobów. Tematy w tym kursie to: jakość.
Wysokiej jakości zbiór danych pomaga modelowi osiągnąć jego cel. Zbiór danych o niskiej jakości utrudnia modelowi osiągnięcie celu.
Zbiór danych wysokiej jakości też jest zwykle niezawodny. Wiarygodność określa, w jakim stopniu możesz zaufać swoim danym. Model wytrenowany na niezawodnym zbiorze danych z większym prawdopodobieństwem wygeneruje przydatne niż w przypadku modelu wytrenowanego na niewiarygodnych danych.
W ramach pomiaru rzetelności trzeba określić:
- Jak często występują błędy w etykietach? Jeśli na przykład Twoje dane są ale jak często twoi weryfikatorzy popełniają błędy?
- Czy funkcje są hałaśliwe? Chodzi o to, aby wartości w cechach były zawierają błędy? Myśl realistycznie – nie można trwale usunąć zbioru danych. wszystkich hałasów. Czasami hałas jest normalny. na przykład pomiary GPS dowolnych lokalizacja użytkownika jest zawsze zmienna z tygodnia na tydzień.
- Czy dane są odpowiednio filtrowane w przypadku Twojego problemu? Przykład: Czy zbiór danych powinien zawierać zapytania od botów? Jeśli tworząc system wykrywania spamu, wtedy odpowiedź na to pytanie brzmi „tak”. Jeśli jednak chcesz poprawić wyniki wyszukiwania dla ludzi, nie.
Oto najczęstsze przyczyny nierzetelnych danych w zbiorach danych:
- Pominięte wartości. Jeśli na przykład użytkownik zapomniał wprowadzić wartość dla pola od wieku Twojego domu.
- Zduplikowane przykłady. Na przykład serwer omyłkowo przesłał tę samą wpisy logu.
- Nieprawidłowe wartości cech. Na przykład ktoś wpisał dodatkową cyfrę lub termometr był na słońcu.
- Nieprawidłowe etykiety. Na przykład ktoś omyłkowo oznaczył zdjęcie dąb jako klon.
- Złe sekcje danych. Na przykład pewna funkcja jest bardzo niezawodna, z wyjątkiem tego dnia, w którym sieć ciągle ulegała awarii.
Zalecamy oznaczanie nierzetelnych danych przy użyciu automatyzacji. Przykład: testy jednostkowe, które definiują zewnętrzny, formalny schemat danych, flagi wartości, które wykraczają poza zdefiniowany zakres.
Przykłady pełne i niepełne
W idealnym świecie każdy przykład jest kompletny. czyli każdy przykład zawiera dla każdej cechy.
Niestety, przykłady z życia wzięte są często niepełne, co oznacza, że brak co najmniej jednej wartości cechy.
Nie trenuj modelu na niepełnych przykładach. Zamiast tego popraw lub wyeliminuj niepełnych przykładów, wykonując jedną z tych czynności:
- Usuń niekompletne przykłady.
- Impute brakujące wartości; czyli przekształcenie niepełnego przykładu w pełny przykład przez podanie uzasadnionych założeń dotyczących brakujących wartości.
Jeśli zbiór danych zawiera wystarczającą liczbę kompletnych przykładów, aby wytrenować przydatny model, i rozważ usunięcie niepełnych przykładów. I podobnie, jeśli tylko jednej funkcji brakuje znacznej ilości danych i że jedna funkcja najprawdopodobniej nie pomoże modelowi, rozważ usunięcie tę cechę z danych wejściowych modelu i obserwując, jaką jakość tracisz usunięcia. Jeśli model działa tak samo lub prawie tak samo dobrze bez niego, to świetnie. Jeśli nie masz wystarczającej liczby kompletnych przykładów, aby wytrenować przydatny model, możesz podać brakujące wartości.
Można usuwać bezużyteczne lub zbędne przykłady, ale usuwanie jest niewłaściwe z ważnymi przykładami. Niestety może być trudno rozróżnić, między bezużytecznymi a przydatnymi przykładami. Jeśli nie możesz zdecydować, do usunięcia lub impute, należy rozważyć utworzenie 2 zbiorów danych: jednego utworzonego przez usunięcie niepełnych przykładów, a drugie przez domniemanie. Następnie ustal, który zbiór danych trenuje lepszy model.
Jednym z popularnych algorytmów jest stosowanie średniej lub mediany jako wartości ustalonej. Zatem, aby przedstawić funkcję liczbową przez wyniki Z, a potem podana wartość to zwykle 0 (ponieważ 0 to zazwyczaj średnia wartość Z).
Ćwiczenie: sprawdź swoją wiedzę
Oto 2 kolumny zbioru danych posortowane według kolumny Timestamp
.
Sygnatura czasowa | Temperatura |
---|---|
8 czerwca 2023 r., 09:00 | 12 |
8 czerwca 2023 r., 10:00 | 18 |
8 czerwca 2023 r., 11:00 | brak |
8 czerwca 2023 r., 12:00 | 24 |
8 czerwca 2023 r., 13:00 | 38 |
Która z tych wartości byłaby uzasadniona dla brakującej wartości w kolumnie Temperatura?