Najlepsze zestawy danych dla projektów uczenia maszynowego: wszystko, co musisz wiedzieć

Opublikowany: 2020-03-20

Spis treści

Wstęp

Uczenie maszynowe to jedna z najpotężniejszych obecnie używanych technologii. Jest to bardzo ważna gałąź sztucznej inteligencji służąca do ulepszania komputerów – dająca im możliwość uczenia się bez ingerencji człowieka. To sprawia, że ​​uczenie maszynowe jest niezbędnym narzędziem do obsługi danych. Ponieważ dane są używane dosłownie wszędzie, od podejmowania decyzji biznesowych po dbanie o doświadczenia klientów, uczenie maszynowe ułatwia identyfikację wzorców ukrytych w tych ogromnych zestawach danych.

Co najważniejsze, te zestawy danych są sposobem na organizowanie ogromnych porcji surowych danych. Za pomocą tych zestawów danych pisane są programy do tworzenia aplikacji, które ułatwiają operacje biznesowe. W tym artykule poznamy różne zestawy danych do uczenia maszynowego .

Ale zanim do tego przejdziemy, najpierw zrozummy podstawy uczenia maszynowego.

Co to jest uczenie maszynowe?

Uczenie maszynowe odpowiada za zasilanie Twoich ulubionych platform, takich jak Netflix, Facebook, Twitter, YouTube, Spotify, Google i Baidu. Nawet asystenci głosowi, tacy jak Alexa i Siri, wybierają Twoje ulubione utwory, aby korzystać z uczenia maszynowego! Wszystkie te platformy próbują wykorzystywać dane powiązane z Tobą. Obejmuje to wyszukiwania, kliknięcia, poglądy, udostępniane zdjęcia, komentarze, reakcje i posty. Dowiedz się więcej o najlepszych aplikacjach do uczenia maszynowego.

Uczenie maszynowe wykorzystuje te dane, aby poznać Twoje preferencje. Na przykład Netflix używa go do sugerowania serialu telewizyjnego, który może Ci się spodobać, na podstawie tych, które oglądałeś. Nawet platformy takie jak Amazon wykorzystują uczenie maszynowe do sugerowania Twoich produktów na podstawie Twojej historii zakupów.

Najbardziej widocznym segmentem rynku uczenia maszynowego jest głębokie uczenie, które może osiągnąć nawet 1 miliard do 2025 roku.

Wygląda interesująco? Przejdźmy do szczegółów tego tematu.

Kategorie uczenia maszynowego

Uczenie maszynowe dzieli się ogólnie na trzy — uczenie nadzorowane, uczenie nienadzorowane i uczenie ze wzmacnianiem .

Nadzorowana nauka

W tym procesie komputer będzie uczyć się na podstawie zestawu danych zwanego danymi treningowymi . Na tej podstawie będzie podejmować decyzje i przewidywać przyszłe wyniki. Później dowiesz się o trenowaniu zbiorów danych na potrzeby uczenia maszynowego . Tutaj system jest zasilany parami wejścia-wyjścia i pracując z tymi parami, uczy się, jak są one ze sobą mapowane. To tak, jakby mieć zestaw pytań, na które zostały oznaczone prawidłowe odpowiedzi.

Kiedy system lub algorytm nauczy się relacji między parami wejścia-wyjścia, może przewidzieć wyjście, gdy zostanie mu dostarczone nowe wejście. Dowiedz się więcej o rodzajach nadzorowanego uczenia się.

Nauka nienadzorowana

W tym przypadku komputer bez żadnej pomocy przegląda zbiory danych w celu zidentyfikowania ukrytych wzorców. Działa na skomplikowanych zadaniach i samodzielnie odkrywa wyniki. Dowiedz się więcej o uczeniu się bez nadzoru.

Nauka wzmacniania

Ten proces uczenia maszynowego wykorzystuje metodę prób i błędów w celu określenia rozwiązania problemu. Tak więc wynik programu będzie zależeć od bieżących danych wejściowych do niego.

Teraz, gdy masz podstawową wiedzę na temat uczenia maszynowego, przejdźmy do zestawów danych.

Czym są zbiory danych do uczenia maszynowego?

Zbiór danych, jak sama nazwa wskazuje, to zbiór danych . Mogą to być dane pojedynczej bazy danych, w której do reprezentowania kolumn używana jest zmienna. Wiersze tej tabeli mogą być reprezentowane przez członka tego konkretnego zestawu danych.

Przygotowanie zbiorów danych do uczenia maszynowego jest ważne. Dzieje się tak, ponieważ algorytmy nie mogą działać poprawnie na danych surowych lub nieustrukturyzowanych. Do rozwiązania problemów i podjęcia decyzji potrzebny jest odpowiedni zestaw danych. Na przykład aplikacja pogodowa może nie mieć odpowiedniego zestawu danych zawierającego dane klimatyczne z ostatnich kilku dni lub tygodni. Dlatego nie będzie w stanie dostarczyć dokładnych prognoz pogody na nadchodzący tydzień.

W związku z tym bez odpowiednich zestawów danych do uczenia maszynowego projekt uczenia maszynowego nie odniesie sukcesu nawet z przeszkolonymi analitykami danych.

Zbiory danych na potrzeby uczenia maszynowego służą do tworzenia modeli uczenia maszynowego . Modele te reprezentują rzeczywisty problem za pomocą wyrażenia matematycznego. Aby wygenerować taki model, musisz dostarczyć mu zestaw danych do nauki i pracy.

Typy zestawów danych, które są używane w uczeniu maszynowym, są następujące:

1. Zestaw danych treningowych

Jest to prawdopodobnie najważniejszy spośród zestawów danych do uczenia maszynowego. Jest podawany do algorytmu uczenia maszynowego w celu stworzenia modelu. Algorytm szuka wzorców danych w celu zidentyfikowania zmiennych wejściowych. Pomoże mu to osiągnąć ostateczny cel lub pożądany wynik. Dane wyjściowe tego zestawu danych to model uczenia maszynowego, którego można użyć do przewidywania wyników.

Około 60% zbioru danych zajmuje zbiór danych uczących.

2. Zestaw danych walidacyjnych

Zbiór danych walidacyjnych jest wykorzystywany na etapie walidacji, podczas tworzenia projektu uczenia maszynowego. Ten etap następuje zaraz po treningu. Ten zestaw danych jest ważny przy ocenie modelu uczenia maszynowego. Inżynierowie zajmujący się uczeniem maszynowym używają tego zestawu do dostosowywania i dostosowywania hiperparametrów modelu. Te hiperparametry to parametry, które mają wartości ustawione przed rozpoczęciem uczenia się programu.

Ich wartości nie można oszacować na podstawie danych. Na przykład hiperparametry mogą obejmować głębokość drzewa lub liczbę niewykrytych warstw w sieci neuronowej.

Według znanych pisarzy Maxa Kuhna i Kjella Johnsona „model danych musi być oceniany przy użyciu próbek, które nie zostały użyte do jego tworzenia lub dostosowywania. Daje to obiektywny wynik skuteczności modelu. Podczas pracy z ogromną ilością danych najlepiej jest odłożyć kilka próbek danych do oceny. Zbiór uczący jest próbką używaną do budowy modelu, natomiast próbki walidacyjne i testowe służą do analizy jego wydajności.”

3. Testuj zestaw danych

Testowe zestawy danych do uczenia maszynowego służą do zrozumienia, jak model uczenia maszynowego będzie działał w przyszłości. Korzystając z tego zestawu danych, będziesz w stanie zrozumieć, jak dokładny jest Twój model danych. Mówiąc prościej, ten zestaw danych powie Ci, ile Twój model danych nauczył się z zestawu szkoleniowego.

Te zestawy zajmują 20% danych. Zestaw będzie zawierał zmienne wejściowe wraz ze zweryfikowanymi wynikami. Jednak w projektach uczenia maszynowego generalnie nie używamy zestawu danych szkoleniowych na etapie testowania. Dzieje się tak, ponieważ algorytm będzie świadomy oczekiwanego wyniku, jak nauczył się wcześniej z tego zestawu danych.

Po fazie testowania model danych zwykle nie jest już dostosowywany. Dzieje się tak, ponieważ dalsza regulacja może prowadzić do nadmiernego dopasowania . Nadmierne dopasowanie występuje, gdy model danych jest szkolony ze zbyt dużą ilością danych. W takim przypadku model zaczyna uczyć się na podstawie niedokładnych wpisów danych w danym zestawie danych. W rezultacie nie działa poprawnie na nowych zestawach danych. To jak próba dopasowania się do dżinsów oversize, kiedy nie możesz!

Aby jednak model uczenia maszynowego działał pomyślnie, musisz zapewnić mu dobry zestaw danych. Bez zbiorów danych do uczenia maszynowego algorytm nie będzie w stanie uczyć się i rozwiązywać problemów. Na przykład, jeśli nie masz odpowiednich książek i zasobów, nie możesz zdać egzaminu, który chcesz.

Przygotowywanie zbiorów danych do uczenia maszynowego

Dowiedzmy się, jakie kroki należy wykonać, aby utworzyć zbiory danych na potrzeby uczenia maszynowego .

Zbieranie danych

Pierwszym krokiem jest zebranie wszystkich odpowiednich danych, których możesz potrzebować w swoim modelu uczenia maszynowego. Ilość danych będzie zależeć od złożoności projektu uczenia maszynowego . Prosty projekt będzie wymagał mniej danych niż skomplikowany. Musisz więc określić wszystko, czego naprawdę potrzebujesz, aby rozwiązać dany problem.

Dane można łatwo zebrać, odpowiadając na następujące pytania:

  • Jakie dane są dla Ciebie dostępne dla projektu?
  • Jakich danych nie potrzebujesz do projektu? – Może to obejmować określone bazy danych lub dane przechowywane w systemach chmurowych. Może być konieczne pozyskanie tych danych.
  • Jakie dane możesz usunąć z istniejących danych? Oznacza to usunięcie niechcianych danych, które są nieistotne dla Twojego projektu.

Mając odpowiedzi na wszystkie te pytania, możesz zacząć zbierać dane z różnych źródeł. Mogą to być pliki tekstowe, pliki .csv, przeglądanie zagnieżdżonych struktur danych w plikach JSON i XML oraz repozytoriach danych.

Teraz możesz przejść do następnego kroku w tworzeniu zbiorów danych na potrzeby uczenia maszynowego .

Wstępne przetwarzanie danych

Teraz, gdy masz już wszystkie potrzebne dane, musisz je odpowiednio przetworzyć dla swojego modelu. Metoda przetwarzania wstępnego polega na przekształceniu surowych zestawów danych w znaczące zestawy, które można wykorzystać. Proces składa się z trzech poniższych kroków:

Formatowanie

Wiele zebranych nieprzetworzonych danych nie ma formatu odpowiedniego dla Twojego modelu uczenia maszynowego. Może znajdować się w pliku JSON lub relacyjnej bazie danych. Musisz przekonwertować te dane na plik tekstowy lub plik .csv według własnego uznania.

Czyszczenie

Jest to proces, w którym naprawiasz i usuwasz brakujące i niechciane dane ze swojego zestawu danych. Te przypadki danych mogą nie pomóc w rozwiązaniu problemu. Ponadto niektóre atrybuty mogą zawierać poufne informacje, które należy ukryć lub całkowicie usunąć. Dzięki temu Twoje zbiory danych do uczenia maszynowego są bardziej znaczące.

Próbowanie

Być może zebrałeś znacznie więcej danych, niż faktycznie potrzebujesz do projektu. Duże zestawy danych zajmują dużo miejsca w pamięci. Powodują również dłuższe czasy działania i znacznie więcej obliczeń, gdy są podawane do algorytmu uczenia maszynowego. Aby uniknąć tych problemów, musisz wykonać mniejsze próbki wybranych danych, które Twój model może łatwo wykorzystać. Ten proces nazywa się próbkowaniem .

Inżynieria funkcji

Tutaj zestaw danych jest analizowany w celu określenia najlepszych cech i wzorców, które pomogą w rozwiązaniu problemu i prognozowaniu. Tak więc w tym procesie niektóre dane mogą zostać usunięte z dużego zestawu danych. Nacisk kładziony jest na najważniejsze cechy, które pasują do modelu.

Dane można rozłożyć na małe części, aby zidentyfikować kluczowe cechy. Na przykład dane sprzedażowe z danego roku można rozbić na miesiące i dni tygodnia. W ten sposób analiza wyników sprzedaży jest łatwiejsza i szybsza. Pomaga to również algorytmowi uczenia maszynowego szybciej wykonywać obliczenia.

Dzielenie danych

Teraz dane muszą zostać podzielone na trzy zestawy – uczenie, testowanie i walidację. Musisz podzielić to odpowiednio na 70%, 20% i 10% dla zestawów. Aby przeprowadzić prawidłowe testowanie, upewnij się, że wybierasz tylko nienakładające się podzbiory danych. Prawidłowe dzielenie zestawów danych, aby umożliwić modelowi uczenia maszynowego szybsze osiągnięcie pożądanych wyników. Później możesz udoskonalić model danych.

Cóż, teraz nauczyłeś się, jak wybrać zestaw danych dla algorytmu uczenia maszynowego. Ale co, jeśli masz nadchodzący projekt i nie masz czasu na zbudowanie własnego zestawu danych? Dzięki internetowi masz do wyboru wiele gotowych do użycia zbiorów danych.

Zestawy danych uczenia maszynowego online

Oto najbardziej przydatne zbiory danych do uczenia maszynowego w sieci:

  • Zbiór danych mieszkaniowych w Bostonie

Popularny wybór wśród zestawów danych do uczenia maszynowego . Służy do rozpoznawania wzorców. Zawiera informacje o różnych domach w Bostonie, w tym dane, takie jak liczba pokoi, stawka podatkowa i przestępczość w okolicy. Zestaw danych składający się z 506 wierszy i 14 zmiennych w kolumnach danych jest dobry do przewidywania cen mieszkań.

  • Zestaw danych dotyczących choroby Parkinsona

Ten zestaw danych składa się z 195 rekordów pacjentów wraz z 23 różnymi atrybutami, które mają pomiary biomedyczne. Zestawu danych można użyć do oddzielenia zdrowych pacjentów od pacjentów z chorobą Parkinsona.

  • IMDB

Zbiór danych składający się z 25 000 recenzji filmów. Służy do klasyfikacji nastrojów binarnych.

  • MIMIC-III

Jest to publicznie dostępny zestaw danych, który został stworzony przez MIT Lab for Computational Physiology. Zawiera dane dotyczące zdrowia około 40 000 pacjentów wymagających intensywnej opieki medycznej. Zawiera informacje, takie jak leki, testy laboratoryjne, parametry życiowe i dane demograficzne.

  • Berkeley DeepDrive BDD100k

Berkeley DeepDrive BDD100k to obecnie największy zestaw danych używany do opracowywania programów uczenia maszynowego dla samochodów autonomicznych. Zawiera ponad 100 000 filmów poruszających się o różnych porach dnia w różnych warunkach klimatycznych. Dane oparte są na miastach Nowy Jork i San Francisco.

  • Zbiór danych Odbiorów Uber

Ten zestaw danych zawiera informacje o odbiorach klientów Uber w okresie od kwietnia do września 2014 r. w Nowym Jorku. Istnieje około 4,5 miliona danych klientów tego typu i 14 milionów więcej od stycznia do czerwca 2015 r. Możesz przeprowadzić analizę danych przy użyciu tego zestawu danych, aby zebrać więcej informacji o klientach. Może to pomóc firmom znacznie usprawnić ich działalność.

  • Zbiór danych klientów centrum handlowego

Zawiera informacje o osobach odwiedzających centra handlowe. Zestaw danych zawiera takie szczegóły, jak płeć, wiek, identyfikator klienta, wynik wydatków i wiele innych. Może to być bardzo przydatne w marketingu docelowym. Na podstawie danych, takich jak wiek i wynik wydatków, firmy mogą podzielić klientów na grupy. Mogą tworzyć unikalne doświadczenia klientów dla tych grup.

Wniosek

Tak jak odpowiednie słowa i frazy sprawiają, że wiersz zostaje z tobą na długi czas, odpowiedni zestaw danych jest potrzebny do udanego projektu. Dlatego wiele najlepszych firm rekrutuje inżynierów danych do zadania stworzenia najlepszego zestawu danych dla konkretnego systemu uczenia maszynowego. Dlatego nie spiesz się podczas przygotowywania zbiorów danych do uczenia maszynowego .

Jeśli chcesz dowiedzieć się więcej o uczeniu maszynowym, sprawdź dyplom IIIT-B i upGrad's PG Diploma in Machine Learning & AI, który jest przeznaczony dla pracujących profesjonalistów i oferuje ponad 450 godzin rygorystycznego szkolenia, ponad 30 studiów przypadków i zadań, IIIT- Status absolwenta B, ponad 5 praktycznych, praktycznych projektów zwieńczenia i pomoc w pracy z najlepszymi firmami.

Czym jest zbiór danych do uczenia maszynowego?

Dane są najważniejszym elementem uczenia maszynowego. Zbiór danych to zbiór informacji służący do uczenia się. Zestaw danych zwykle pochodzi ze źródła innego niż dane szkoleniowe. Te dane służą do oceny, jak dobrze działa model. Na przykład, aby wytrenować klasyfikator obrazu, użyjesz obrazów z kolekcji ImageNet. Warto zauważyć, że obraz może być obecny zarówno w uczącym, jak i testowym zbiorze danych, ale musi należeć do odrębnych kategorii. Innym popularnym zastosowaniem zestawów danych jest trenowanie algorytmu rozpoznawania obrazów. Aby wytrenować algorytm, będziesz musiał mieć dziesięć tysięcy obrazów kotów i dziesięć tysięcy obrazów psów. ImageNet to jeden z najczęściej używanych zestawów danych w branży.

Czym jest zbiór danych walidacji w uczeniu maszynowym?

W nadzorowanym uczeniu maszynowym mamy treningowy zestaw danych, który składa się z próbek danych wejściowych i ich pożądanych wyników. Zestaw danych walidacyjnych to drugi zestaw danych, na którym nie są trenowane parametry modelu/modelu. Parametry modelu/modelu są szacowane na uczącym zbiorze danych. Zbiór danych walidacyjnych służy do oszacowania oczekiwanej dokładności nadzorowanego modelu uczenia się na niewidocznych próbkach, tj. próbkach testowych. Zestaw danych walidacyjnych służy do pomiaru lub oszacowania błędu uogólnienia modelu nadzorowanego uczenia się.

Jakie są popularne zbiory danych używane w uczeniu maszynowym?

Istnieje kilka zestawów danych, których możemy użyć, aby udoskonalić uczenie maszynowe. Niektóre z nich to: Dochody gospodarstw domowych i dane z badań demograficznych, Ankieta US Census Bureau of Business Owners, Stock Market Price, Age and Płeć obywateli USA, Zużycie energii w stanach USA, Procent domów kupionych, sprzedanych i wynajmowanych, Twitter hashtagi, Facebook polubienia i inne aktywności ludzi na Facebooku, zbiory danych ImageNet Large Scale Visual Recognition Challenge (ILSVRC), miesięczny wolumen przesyłek z głównych portów w USA itp. Istnieje wiele innych zbiorów danych, które możemy wykorzystać do uczenia maszynowego.