Jakie pierwsze kroki powinienem zastosować, aby zrozumieć duże zestawy danych i jakich narzędzi powinienem użyć?


10

Zastrzeżenie: Jestem kompletnym początkującym, jeśli chodzi o uczenie maszynowe, ale chętnie się uczę.

Mam duży zestaw danych i próbuję znaleźć w nim wzorzec. Może istnieć / może nie istnieć korelacja między danymi, albo ze znanymi zmiennymi, albo zmiennymi zawartymi w danych, ale których jeszcze nie zdawałem sobie sprawy, że są to zmienne / istotne.

Domyślam się, że byłby to znany problem w świecie analizy danych, więc mam kilka pytań:

  1. „Srebrną kulą” byłoby wrzucenie tych wszystkich danych do programu do analizy statystyk / danych i zmiażdżenie danych w poszukiwaniu znanych / nieznanych wzorców próbujących znaleźć relacje. Czy SPSS jest odpowiedni, czy istnieją inne aplikacje, które mogą być bardziej odpowiednie.

  2. Czy powinienem nauczyć się języka takiego jak R i dowiedzieć się, jak ręcznie przetwarzać dane. Czy nie zmusiłoby to do znalezienia relacji, ponieważ musiałbym ręcznie określić, co i jak analizować dane?

  3. W jaki sposób profesjonalny eksplorator danych podejmie ten problem i jakie kroki podejmie?

Odpowiedzi:


11

Spróbuję odpowiedzieć na twoje pytania, ale wcześniej chciałbym zauważyć, że użycie terminu „duży zestaw danych” jest mylące, ponieważ „duży” jest pojęciem względnym . Musisz podać więcej szczegółów. Jeśli masz do czynienia z danymi ofert , ten fakt najprawdopodobniej wpłynie na wybór preferowanych narzędzi , podejść i algorytmów do analizy danych . Mam nadzieję, że następujące moje przemyślenia na temat analizy danych dotyczą twoich pytań cząstkowych. Pamiętaj, że numeracja moich punktów nie zgadza się z numeracją twoich pytań cząstkowych. Uważam jednak, że lepiej odzwierciedla ogólny przepływ pracy z analizą danych , przynajmniej sposób, w jaki ją rozumiem.

1) Po pierwsze, uważam, że musisz mieć na myśli przynajmniej jakiś model konceptualny (lub, lepiej, na papierze). Ten model powinien pomóc ci w analizie danych eksploracyjnych (EDA) . Obecność zmiennej zależnej (DV) w modelu oznacza, że ​​w fazie uczenia maszynowego (ML) w dalszej części analizy będziesz mieć do czynienia z tak zwanym nadzorowanym ML, w przeciwieństwie do ML bez nadzoru w przypadku braku zidentyfikowanego DV.

2) Po drugie, EDA jest kluczową częścią. IMHO, EDA powinny obejmować wiele iteracji tworzenia statystyk opisowych i wizualizacji danych , gdy dopracujesz swoje rozumienie danych. Nie tylko ta faza dostarczy cennych informacji na temat twoich zestawów danych, ale będzie również zasilać następną ważną fazę - czyszczenie i transformację danych . Samo wrzucenie surowych danych do pakietu oprogramowania statystycznego niewiele da - w przypadku każdej ważnej analizy statystycznej dane powinny być czyste, poprawne i spójne . Jest to często najbardziej czasochłonna i pracochłonna, ale absolutnie niezbędna część. Aby uzyskać więcej informacji na ten temat, przeczytaj te fajne artykuły:http://vita.had.co.nz/papers/tidy-data.pdf (autor: Hadley Wickham) i http://cran.r-project.org/doc/contrib/de_Jonge+van_der_Loo-Introduction_to_data_cleaning_with_R.pdf (autor: Edwin de Jonge i Mark van der Loo).

3) Teraz, mając nadzieję, że skończyłeś już z EDA, a także czyszczeniem i transformacją danych, jesteś gotowy na rozpoczęcie bardziej statystycznie zaangażowanych faz. Jedną z takich faz jest eksploracyjna analiza czynnikowa (EFA) , która pozwoli Ci wyodrębnić strukturę danych. W przypadku zestawów danych z dużą liczbą zmiennych pozytywnym efektem ubocznym EFA jest zmniejszenie wymiarów . I chociaż w tym sensie EFA jest podobna do analizy głównych składników (PCA)i inne podejścia do zmniejszania wymiarów, myślę, że EFA jest ważniejsza, ponieważ pozwala udoskonalić konceptualny model zjawisk, które „opisują” twoje dane, dzięki czemu sens zestawów danych. Oczywiście, oprócz EFA, można / należy przeprowadzić analizę regresji, a także zastosować techniki uczenia maszynowego , w oparciu o ustalenia z poprzednich faz.

Na koniec uwaga na temat narzędzi programowych . Moim zdaniem obecny stan pakietów oprogramowania statystycznego jest na takim poziomie, że praktycznie każdy większy pakiet oprogramowania ma porównywalną ofertę pod względem funkcji. Jeśli studiujesz lub pracujesz w organizacji, która ma określone zasady i preferencje w zakresie narzędzi programowych, jesteś przez nich ograniczony . Jeśli jednak tak nie jest, serdecznie polecam oprogramowanie statystyczne o otwartym kodzie źródłowym , oparte na twoim komforcie z jego specyficznym językiem programowania , krzywą uczenia się i twoimi perspektywami kariery . Moją obecną platformą z wyboru jest R Project, który oferuje dojrzałe, wydajne, elastyczne, rozbudowane i otwarte oprogramowanie statystyczne, a także niesamowity ekosystem pakietów, ekspertów i entuzjastów. Inne fajne opcje obejmują Python , Julia i specjalne oprogramowanie open source do przetwarzania dużych danych , takie jak Hadoop , Spark , bazy danych NoSQL , WEKA . Więcej przykładów oprogramowania typu open source do eksploracji danych , które obejmuje ogólne i szczegółowe oprogramowanie statystyczne i ML, znajduje się w tej części strony Wikipedii: http://en.wikipedia.org/wiki/Data_mining#Free_open-source_data_mining_software_and_applications .

AKTUALIZACJA: Zapomniałem wspomnieć o Rattle ( http://rattle.togaware.com ), który jest również bardzo popularnym oprogramowaniem GUI typu open source do eksploracji danych.


1
Po powrocie do tego pytania ponad rok później z pewnością mogę powtórzyć, że znajomość twoich danych jest kluczowa i musisz mieć na uwadze, co to są „dobre” dane a „złe” dane. Próbowałem użyć magicznych rozwiązań, takich jak sieci neuronowe itp., Ale proces czyszczenia danych nie był łatwy. (Ukryte modele Markowa wydawały się najlepiej reagować na brudne dane wejściowe i były w stanie najlepiej przewidzieć wyniki). Było to w rzeczywistości po prostu przelanie danych przez wiele tygodni po awarii ML i po wykonaniu wielu wykresów (wizualne przedstawienie danych jest bardzo ważne), że udało mi się znaleźć rozwiązania moich problemów!
user3791372,

@ user3791372 Miło cię słyszeć! Wygląda na to, że rok był dla Ciebie produktywny w zakresie lepszego zrozumienia różnych aspektów nauki o danych. Chciałbym mieć więcej okazji, aby dowiedzieć się więcej, ale z drugiej strony nie mogę narzekać, ponieważ dużo się nauczyłem (nie zawsze związane z nauką danych, ale być może jest jeszcze lepiej). Tak trzymaj!
Aleksandr Blekh

3
  1. SPSS jest świetnym narzędziem, ale możesz osiągnąć wiele dzięki zasobom, które już masz na komputerze, takim jak Excel, lub które są bezpłatne, takie jak R-project. Mimo że narzędzia te są potężne i mogą pomóc w identyfikacji wzorców, przed uruchomieniem analiz musisz dobrze uchwycić dane (zaleciłbym przeprowadzenie statystyk opisowych danych i zbadanie danych za pomocą wykresów, aby upewnić się, że wszystko wygląda normalnie). Innymi słowy, narzędzie, którego używasz, nie będzie oferowało „srebrnej kuli”, ponieważ dane wyjściowe będą tak samo wartościowe jak dane wejściowe (znasz powiedzenie ... „śmieci do, śmieci do”). Wiele z tego, co mówię, zostało już powiedziane w odpowiedzi Aleksandra - spot on.

  2. R może stanowić wyzwanie dla tych z nas, którzy nie są zaznajomieni z kodowaniem, ale wolne zasoby związane z R i jego pakietami są obfite. Jeśli ćwiczysz naukę programu, szybko zyskasz przyczepność. Ponownie musisz zapoznać się ze swoimi danymi i analizami, które i tak chcesz przeprowadzić, i fakt ten pozostaje niezaleŜny od wykorzystywanych narzędzi statystycznych.

  3. Zacznę od zapoznania się z moimi danymi (na początek wykonaj czynności opisane w odpowiedzi Aleksandra). Możesz wziąć pod uwagę książkę Johna Foremana zatytułowaną Data Smart. Jest to praktyczna książka, ponieważ John zapewnia zestawy danych, a Ty wraz z jego przykładami (używając Excela) uczysz się różnych sposobów nawigacji i eksploracji danych. Dla początkujących jest to świetny zasób.


2

Aleksandr udzielił bardzo dokładnego wyjaśnienia, ale w skrócie są to następujące kroki:

Wyodrębnianie danych

Dane do czyszczenia

Ekstrakcja funkcji

Budowanie modeli

Wnioskowanie wyników

Publikowanie wyników

Powtarzaj kroki 3, 4, 5 w pętli, aż uzyskasz odpowiednią dokładność.


0

R ma GUI dialogu pnc, takie jak SPSS. Drukują kod R, dzięki czemu można się uczyć i łączyć ich wysiłki. Polecam BlueSky za dialogi do wszystkiego i grzechotki. Chociaż te programy są świetne do EDA, statystyk i wizualizacji, uczenie maszynowe nie radzi sobie dobrze.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.