Co to są dane treningowe? Jak to jest wykorzystywane w uczeniu maszynowym

Opublikowany: 2021-07-30

Modele uczenia maszynowego są tak dobre, jak dane, na których są trenowane.

Bez wysokiej jakości danych treningowych, nawet najbardziej wydajnych   nauczanie maszynowe   algorytmy nie będą działać.

Potrzeba wysokiej jakości, dokładnych, kompletnych i odpowiednich danych zaczyna się już na wczesnym etapie procesu szkoleniowego. Tylko wtedy, gdy algorytm jest zasilany dobrymi danymi treningowymi, może łatwo wychwycić cechy i znaleźć relacje, których potrzebuje, aby przewidywać w dół.

Dokładniej, wysokiej jakości dane szkoleniowe są najważniejszym aspektem uczenia maszynowego (i sztucznej inteligencji) niż jakikolwiek inny. Jeśli wprowadzisz algorytmy uczenia maszynowego (ML) do właściwych danych, skonfigurujesz je pod kątem dokładności i sukcesu.

Dane szkoleniowe są również znane jako zestaw danych uczących, zestaw uczący i zestaw uczący. Jest to niezbędny składnik każdego modelu uczenia maszynowego i pomaga im w dokładnym przewidywaniu lub wykonaniu pożądanego zadania.

Mówiąc najprościej, dane szkoleniowe budują model uczenia maszynowego. Uczy, jak wygląda oczekiwany wynik. Model wielokrotnie analizuje zbiór danych, aby dogłębnie zrozumieć jego cechy i dostosować się w celu uzyskania lepszej wydajności.

W szerszym sensie dane treningowe można podzielić na dwie kategorie: dane oznaczone i dane bez etykiety .

dane oznaczone a dane nieoznaczone

Co to są dane oznaczone etykietą?

Dane oznaczone etykietą to grupa próbek danych oznaczonych co najmniej jedną znaczącą etykietą. Jest również nazywany danymi z adnotacjami, a jego etykiety identyfikują określone cechy, właściwości, klasyfikacje lub zawarte obiekty.

Na przykład obrazy owoców można oznaczyć jako jabłka, banany lub winogrona .

Oznaczone dane treningowe są używane w   Nadzorowana nauka. Umożliwia modelom ML poznanie cech związanych z określonymi etykietami, które można wykorzystać do klasyfikacji nowszych punktów danych. W powyższym przykładzie oznacza to, że model może wykorzystać dane obrazu oznaczonego etykietą, aby zrozumieć cechy konkretnych owoców i wykorzystać te informacje do pogrupowania nowych obrazów.

Etykietowanie danych lub adnotacja to czasochłonny proces, ponieważ ludzie muszą oznaczać lub oznaczać punkty danych. Zbieranie danych oznaczonych etykietami jest trudne i kosztowne. Przechowywanie danych oznaczonych etykietami nie jest łatwe w porównaniu z danymi bez etykiet.

Co to są dane nieoznaczone?

Zgodnie z oczekiwaniami dane bez etykiet są przeciwieństwem danych etykietowanych. Są to nieprzetworzone dane lub dane, które nie są oznaczone żadnymi etykietami służącymi do identyfikacji klasyfikacji, cech lub właściwości. Jest używany w   nienadzorowane uczenie maszynowe, a modele ML muszą znaleźć wzorce lub podobieństwa w danych, aby wyciągnąć wnioski.

Wracając do poprzedniego przykładu jabłek , bananów i winogron , w nieoznakowanych danych treningowych obrazy tych owoców nie będą oznaczone etykietami. Model będzie musiał ocenić każdy obraz, patrząc na jego cechy, takie jak kolor i kształt.

Po przeanalizowaniu znacznej liczby obrazów model będzie w stanie rozróżnić nowe obrazy (nowe dane) na rodzaje owoców: jabłka , banany lub winogrona . Oczywiście modelka nie wiedziałaby, że dany owoc nazywa się jabłkiem. Zamiast tego zna cechy potrzebne do jego identyfikacji.

Istnieją modele hybrydowe, które wykorzystują kombinację nadzorowanego i nienadzorowanego uczenia maszynowego.

Jak dane szkoleniowe są wykorzystywane w uczeniu maszynowym

W przeciwieństwie do algorytmów uczenia maszynowego, tradycyjne algorytmy programowania postępują zgodnie z zestawem instrukcji, aby akceptować dane wejściowe i dostarczać dane wyjściowe. Nie opierają się na danych historycznych, a każde ich działanie opiera się na regułach. Oznacza to również, że nie poprawiają się z czasem, co nie ma miejsca w przypadku uczenia maszynowego.

W przypadku modeli uczenia maszynowego dane historyczne są paszą. Podobnie jak ludzie polegają na wcześniejszych doświadczeniach, aby podejmować lepsze decyzje, modele ML analizują swój zestaw danych treningowych z wcześniejszymi obserwacjami, aby tworzyć prognozy.

Prognozy mogą obejmować klasyfikację obrazów, jak w przypadku   rozpoznawanie obrazu, czyli rozumienie kontekstu zdania jak w przetwarzaniu języka naturalnego (NLP).

Pomyśl o naukowcu zajmującym się danymi jako nauczycielu, algorytm uczenia maszynowego jako uczniu, a zestaw danych szkoleniowych jako zbiór wszystkich podręczników.

Dążeniem nauczyciela jest, aby uczeń dobrze radził sobie na egzaminach, a także w realnym świecie. W przypadku algorytmów ML testowanie jest jak egzaminy. Podręczniki (zestaw danych szkoleniowych) zawierają kilka przykładów typu pytań, które będą zadawane na egzaminie.

Wskazówka: sprawdź analitykę big data   wiedzieć, w jaki sposób zbierane, porządkowane, czyszczone i analizowane są duże zbiory danych.

Oczywiście nie będzie zawierał wszystkich przykładów pytań, które zostaną zadane na egzaminie, ani wszystkie przykłady zawarte w podręczniku nie zostaną zadane na egzaminie. Podręczniki mogą pomóc w przygotowaniu uczniów, ucząc ich, czego oczekiwać i jak reagować.

Żaden podręcznik nie może być w pełni kompletny. W miarę upływu czasu zmienia się rodzaj zadawanych pytań, a więc informacje zawarte w podręcznikach muszą ulec zmianie. W przypadku algorytmów ML zestaw uczący powinien być okresowo aktualizowany o nowe informacje.

Krótko mówiąc, dane szkoleniowe to podręcznik, który pomaga analitykom danych dać algorytmom ML wyobrażenie o tym, czego się spodziewać. Chociaż treningowy zestaw danych nie zawiera wszystkich możliwych przykładów, dzięki temu algorytmy będą zdolne do przewidywania.

Dane treningowe a dane testowe a dane walidacyjne

Dane uczące są używane w uczeniu modelu, czyli innymi słowy, są to dane używane do dopasowania modelu. Wręcz przeciwnie, dane testowe służą do oceny wydajności lub dokładności modelu. Jest to próbka danych używana do bezstronnej oceny ostatecznego dopasowania modelu do danych uczących.

Treningowy zestaw danych to początkowy zestaw danych, który uczy modele ML identyfikowania pożądanych wzorców lub wykonywania określonego zadania. Testowy zestaw danych służy do oceny skuteczności szkolenia lub dokładności modelu.

Gdy algorytm ML zostanie przeszkolony na określonym zestawie danych i jeśli przetestujesz go na tym samym zestawie danych, jest bardziej prawdopodobne, że będzie miał wysoką dokładność, ponieważ model wie, czego się spodziewać. Jeśli treningowy zestaw danych zawiera wszystkie możliwe wartości, jakie model może napotkać w przyszłości, wszystko dobrze.

Ale tak nie jest. Treningowy zestaw danych nigdy nie może być kompleksowy i nie może nauczyć wszystkiego, co model może napotkać w świecie rzeczywistym. Dlatego do oceny dokładności modelu wykorzystywany jest testowy zestaw danych, zawierający niewidoczne punkty danych.

dane treningowe vs. walidacyjne vs. testowe

Potem są dane walidacyjne . Jest to zbiór danych używany do częstej oceny w fazie szkolenia. Chociaż model widzi ten zestaw danych od czasu do czasu, nie uczy się z niego. Zestaw walidacyjny jest również nazywany zestawem deweloperskim lub zestawem deweloperskim. Pomaga chronić modele przed nadmiernym i niedopasowanym dopasowaniem.

Chociaż dane walidacyjne są oddzielone od danych uczących, analitycy danych mogą zarezerwować część danych uczących do walidacji. Ale oczywiście oznacza to automatycznie, że dane walidacyjne były trzymane z dala podczas szkolenia.

Porada: Jeśli masz ograniczoną ilość danych, do oszacowania wydajności modelu można użyć techniki zwanej walidacją krzyżową. Ta metoda polega na losowym podziale danych uczących na wiele podzbiorów i zarezerwowaniu jednego do oceny.

Wielu używa zamiennie terminów „dane testowe” i „dane walidacyjne”. Główna różnica między nimi polega na tym, że dane walidacyjne służą do walidacji modelu podczas szkolenia, podczas gdy zestaw testowy służy do testowania modelu po zakończeniu szkolenia.

Zestaw danych walidacyjnych daje modelowi pierwszy smak niewidocznych danych. Jednak nie wszyscy analitycy danych przeprowadzają wstępne sprawdzenie przy użyciu danych walidacyjnych. Mogą pominąć tę część i przejść bezpośrednio do danych testowych.

Czym jest człowiek w pętli?

Człowiek w pętli odnosi się do osób zaangażowanych w zbieranie i przygotowywanie danych treningowych.

Surowe dane są zbierane z wielu źródeł, w tym urządzeń IoT, platform mediów społecznościowych, stron internetowych i opinii klientów. Po zebraniu osoby zaangażowane w proces określałyby kluczowe atrybuty danych, które są dobrymi wskaźnikami wyniku, który ma przewidywać model.

Dane są przygotowywane poprzez ich czyszczenie, uwzględnianie brakujących wartości, usuwanie wartości odstających, oznaczanie punktów danych i ładowanie ich w odpowiednie miejsca do uczenia algorytmów ML. Odbędzie się również kilka rund kontroli jakości; jak wiadomo, nieprawidłowe etykiety mogą znacząco wpłynąć na dokładność modelu.

Co sprawia, że ​​dane treningowe są dobre?

Wysokiej jakości dane przekładają się na dokładne modele uczenia maszynowego.

Dane niskiej jakości mogą znacząco wpłynąć na dokładność modeli, co może prowadzić do poważnych strat finansowych. To prawie tak, jakby dać uczniowi podręcznik zawierający nieprawdziwe informacje i oczekiwać, że odniesie sukces na egzaminie.

Poniżej przedstawiono cztery podstawowe cechy jakości danych treningowych.

Istotnych

Dane muszą być adekwatne do wykonywanego zadania. Na przykład, jeśli chcesz trenować   wizja komputerowa   algorytm dla pojazdów autonomicznych, prawdopodobnie nie będziesz potrzebować zdjęć owoców i warzyw. Zamiast tego potrzebny byłby zestaw danych treningowych zawierający zdjęcia dróg, chodników, pieszych i pojazdów.

Przedstawiciel

Dane treningowe AI muszą zawierać punkty danych lub funkcje, które aplikacja ma przewidywać lub klasyfikować. Oczywiście zbiór danych nigdy nie może być bezwzględny, ale musi zawierać przynajmniej atrybuty, które aplikacja AI ma rozpoznawać.

Na przykład, jeśli model ma rozpoznawać twarze na obrazach, musi być zasilany różnymi danymi zawierającymi twarze ludzi z różnych grup etnicznych. Zmniejszy to problem stronniczości AI, a model nie będzie uprzedzony do określonej rasy, płci lub grupy wiekowej.

Mundur

Wszystkie dane powinny mieć ten sam atrybut i muszą pochodzić z tego samego źródła.

Załóżmy, że Twój projekt uczenia maszynowego ma na celu przewidywanie współczynnika rezygnacji, analizując informacje o klientach. W tym celu będziesz mieć bazę danych o klientach, która zawiera nazwę klienta, adres, liczbę zamówień, częstotliwość zamówień i inne istotne informacje. Są to dane historyczne i mogą być używane jako dane treningowe.

Jedna część danych nie może zawierać dodatkowych informacji, takich jak wiek czy płeć. Spowoduje to, że dane szkoleniowe będą niekompletne, a model niedokładny. Krótko mówiąc, jednolitość jest krytycznym aspektem jakości danych szkoleniowych.

Wyczerpujący

Ponownie, dane treningowe nigdy nie mogą być bezwzględne. Ale powinien to być duży zestaw danych, który reprezentuje większość przypadków użycia modelu. Dane szkoleniowe muszą zawierać wystarczającą liczbę przykładów, które pozwolą modelowi na odpowiednie uczenie się. Musi zawierać próbki danych ze świata rzeczywistego, ponieważ pomoże wytrenować model, aby zrozumieć, czego się spodziewać.

Jeśli myślisz o uczeniu danych jako wartościach umieszczonych w dużej liczbie wierszy i kolumn, przepraszam, mylisz się. Może to być dowolny typ danych, taki jak tekst, obrazy, dźwięk lub wideo.

Co wpływa na jakość danych treningowych?

Ludzie są bardzo społecznymi stworzeniami, ale istnieją pewne uprzedzenia, które mogliśmy wybrać jako dzieci i których pozbycie się wymaga ciągłego świadomego wysiłku. Takie uprzedzenia, choć niekorzystne, mogą wpłynąć na nasze kreacje, a aplikacje do uczenia maszynowego nie różnią się od nich.

W przypadku modeli ML dane uczące są jedyną książką, którą czytają. Ich wydajność lub dokładność będzie zależeć od tego, jak obszerna, istotna i reprezentatywna jest sama książka.

Biorąc to pod uwagę, trzy czynniki wpływają na jakość danych treningowych:

  1. Ludzie: ludzie, którzy trenują model, mają znaczący wpływ na jego dokładność lub wydajność. Jeśli są stronnicze, w naturalny sposób wpłynie to na sposób tagowania danych i ostatecznie na działanie modelu ML.

  2. Procesy: Proces etykietowania danych musi obejmować ścisłą kontrolę jakości. To znacznie podniesie jakość danych treningowych.

  3. Narzędzia: Niekompatybilne lub przestarzałe narzędzia mogą negatywnie wpłynąć na jakość danych. Korzystanie z solidnego oprogramowania do etykietowania danych może obniżyć koszty i czas związany z procesem.

Skąd wziąć dane treningowe

Istnieje kilka sposobów na uzyskanie danych treningowych. Wybór źródeł może się różnić w zależności od skali projektu uczenia maszynowego, budżetu i dostępnego czasu. Poniżej przedstawiono trzy podstawowe źródła gromadzenia danych.

Dane szkoleniowe typu open source

Większość amatorskich programistów ML i małych firm, których nie stać na zbieranie danych lub oznaczanie ich etykietami, polega na danych treningowych o otwartym kodzie źródłowym. To łatwy wybór, ponieważ jest już zebrany i bezpłatny. Jednak najprawdopodobniej będziesz musiał dostosować lub ponownie dodać adnotacje do takich zestawów danych, aby dopasować je do swoich potrzeb szkoleniowych. ImageNet, Kaggle i Google Dataset Search to kilka przykładów zbiorów danych typu open source.

Internet i IoT

Większość średnich firm zbiera dane za pomocą Internetu i urządzeń IoT. Kamery, czujniki i inne inteligentne urządzenia pomagają zbierać surowe dane, które później zostaną oczyszczone i opatrzone adnotacjami. Ta metoda zbierania danych zostanie specjalnie dostosowana do wymagań projektu uczenia maszynowego, w przeciwieństwie do zestawów danych typu open source. Jednak czyszczenie, standaryzacja i etykietowanie danych jest procesem czasochłonnym i zasobożernym.

Sztuczne dane treningowe

Jak sama nazwa wskazuje, sztuczne dane treningowe to sztucznie tworzone dane przy użyciu modeli uczenia maszynowego. Nazywa się to również danymi syntetycznymi i jest doskonałym wyborem, jeśli potrzebujesz danych treningowych dobrej jakości z określonymi funkcjami do trenowania algorytmu. Oczywiście ta metoda będzie wymagała dużej ilości zasobów obliczeniowych i dużo czasu.

Ile danych treningowych wystarczy?

Nie ma konkretnej odpowiedzi na to, ile danych treningowych jest wystarczającą ilością danych treningowych. Zależy to od algorytmu, którego uczysz – jego oczekiwany wynik, zastosowanie, złożoność i wiele innych czynników.

Załóżmy, że chcesz wytrenować klasyfikator tekstu, który kategoryzuje zdania na podstawie występowania terminów „kot” i „pies” oraz ich synonimów, takich jak „kotek”, „kotek”, „cipka”, „szczeniak” lub „piesek”. . Może to nie wymagać dużego zestawu danych, ponieważ istnieje tylko kilka terminów do dopasowania i sortowania.

Ale gdyby był to klasyfikator obrazów, który kategoryzuje obrazy jako „koty” i „psy”, liczba punktów danych potrzebnych w zestawie danych treningowych znacznie wzrosłaby. Krótko mówiąc, wiele czynników decyduje o tym, jakie dane treningowe są wystarczające.

Ilość wymaganych danych będzie się zmieniać w zależności od zastosowanego algorytmu.

Dla kontekstu   głębokie uczenie, podzbiór uczenia maszynowego, wymaga milionów punktów danych do trenowania sztucznych sieci neuronowych (ANN). Natomiast algorytmy uczenia maszynowego wymagają tylko tysięcy punktów danych. Ale oczywiście jest to daleko idące uogólnienie, ponieważ ilość potrzebnych danych różni się w zależności od aplikacji.

Im więcej trenujesz modelu, tym bardziej staje się on dokładny. Dlatego zawsze lepiej mieć dużą ilość danych jako dane treningowe.

Syf na wejściu, syf na wyjściu

Wyrażenie „śmieci wchodzą, śmieci wychodzą” jest jednym z najstarszych i najczęściej używanych zwrotów w nauce o danych. Nawet jeśli tempo generowania danych rośnie wykładniczo, nadal jest to prawdą.

Kluczem jest dostarczanie wysokiej jakości reprezentatywnych danych do algorytmów uczenia maszynowego. Może to znacznie zwiększyć dokładność modeli. Dobrej jakości dane szkoleniowe mają również kluczowe znaczenie dla tworzenia bezstronnych aplikacji do uczenia maszynowego.

Czy zastanawiałeś się kiedyś, do czego zdolne byłyby komputery z ludzką inteligencją? Komputerowy odpowiednik ludzkiej inteligencji jest znany jako sztuczna inteligencja ogólna i jeszcze nie wiemy, czy będzie to największy, czy najniebezpieczniejszy wynalazek w historii.