Jestem programistą, jak dostać się do dziedziny Data Science?


13

Po pierwsze ten termin brzmi tak niejasno.

W każdym razie .. Jestem programistą. Jednym z języków, które mogę kodować, jest Python. Mówiąc o danych, mogę korzystać z SQL i mogę zgrywać dane. To, co do tej pory odkryłem po przeczytaniu tak wielu artykułów, że Data Science jest dobry w:

1- Statystyki

2- Algebra

3- Analiza danych

4- Wizualizacja.

5- Uczenie maszynowe.

Co wiem do tej pory:

1- Programowanie w Pythonie 2- Złomowanie danych w Pythonie

Czy eksperci mogą mnie poprowadzić lub zasugerować mapę drogową, która dopracuje zarówno teorię, jak i praktyczność? Dałem sobie około 8 miesięcy.


Określ konkretnie to, w co chcesz „wejść”. Nie tylko pole, ale także na jakim poziomie. Na przykład - „profesjonalny medyczny eksplorator tekstów” lub „amatorski egzaminator astrofizyczny wszechświata”
Pete

Jestem gotów stać się kimś, kto mógłby pracować jako konsultant lub pracownik, który mógłby być dla firm kontaktem w celu wglądu w swoje dane i uzyskania wglądu w te dane.
Volatil3

(1) Kurs Andrew na temat uczenia maszynowego; (2) kurs Yaser Abu-Mostafa na temat uczenia się na podstawie danych; Oba są dostępne (czas nie jest wliczony) i zapewniają dobry poziom zrozumienia.
Vladislavs Dovgalecs


Pojęcie nauki o danych jest bardzo szerokie. Może mógłbyś pomyśleć o tym, jakie zawody chciałbyś iw jakiej firmie chcesz pracować, zobaczyć ich wymagania i obowiązki. Wtedy będziesz wiedział, czy praca spełnia twoje oczekiwania i lukę w twoich możliwościach. Oto wymagania analityka danych w GOOGLE. ! [Wymagania naukowca od Google ] ( i.stack.imgur.com/5KSN6.png )
Octoparse

Odpowiedzi:


18

Skoncentruj się mniej na zdobywaniu umiejętności, a więcej na zdobywaniu doświadczenia. Spróbuj rozwiązać niektóre problemy i opublikuj swoją pracę na github. Dowiesz się więcej w tym procesie i będziesz w stanie wykazać się wiedzą i doświadczeniem dla pracodawców, co jest o wiele cenniejsze niż pozornie głębokie zrozumienie tematu lub teorii.

Nauka danych jest obecnie dość obciążoną dziedziną, więc nie jestem pewien, jaki rodzaj pracy chcesz konkretnie wykonać, ale zakładając, że uczenie maszynowe jest jej częścią, dobrym pomysłem jest zacząć od kaggle.com. Jeśli chodzi o cele, jeśli jesteś w stanie pracować z danymi w pandach / numpy / scipy, budować modele w sci-kit, uczyć się i robić ładne wykresy w dnie morskim, ggplot, a nawet matplotlib, to nie będziesz miał problemu z uzyskaniem praca z perspektywy umiejętności - szczególnie jeśli masz próbki kodu i przykłady, które pokazują twoje umiejętności. Jeśli utkniesz, wówczas stackexchange będzie miał odpowiedź lub możesz opublikować pytanie, a wkrótce otrzymasz odpowiedź. Kiedy będziesz zarabiał na życie, nauczysz się jeszcze więcej, prawdopodobnie od starszego członka zespołu, który cię mentoruje.

Powodzenia.


7

Podoba mi się kurs Berkeley na temat Data Science, daje dobre podstawy i smak Data Science, Po przejściu na udacity i coursera i wiele innych zasobów. Więc jeśli masz umiejętności programowania, będziesz potrzebował matematyki i statystyk oraz dużo wizualizacji. Świetnie będzie też przyzwyczaić się do IPython, ponieważ jest to niezbędne, aby zobaczyć każdy krok (wizualizować), jak to działa, zamiast pisać cały skrypt i testować później (anakonda jest łatwa w instalacji i obsłudze). Kurs jest wymieniony poniżej: bcourses.berkeley.edu/courses/1267848/wiki również stat znajduję dobry bezpłatny kurs z SAS: Statystyka 1: Wprowadzenie do ANOVA, Regresja i regresja logistyczna support.sas.com/edu/schedules.html ? ctry = us & id = 1979

Począwszy od ML polecam: www.kaggle.com/c/titanic/details/getting-started-with-python

po lewej stronie znajduje się również Excel korzystający z tabel przestawnych, a R. DataCamp wydał samouczek korzystania z R. Po wykonaniu tych kroków więcej kibiców w zdobywaniu doświadczenia jest w kaggle (niedawno wydana jedna dla San Francisco Crime Classification) i ostatecznie niesamowite samouczki wideo z www.dataschool.io

mam nadzieję, że to pomoże ...


Dziękuję za odpowiedź. Jak się nauczyłeś?
Volatil3

1
Książki, samouczki online i mnóstwo praktycznego kodu do zabawy z danymi. Wypróbuj kaggle.com i wypróbuj konkursy. Świetnie jest zacząć naukę ML.
n1tk

i ostatecznie staramy się znaleźć społeczność naukowców zajmujących się danymi i brać udział w projektach, zyskasz tyle doświadczenia w tych projektach, czego nie uczy żadna książka.
n1tk

Ale nie jestem dobry w teorii, takich jak statystyki, matematyka itp. Studiowałem je w dni uniwersyteckie
Volatil3,

W moim szczególnym przypadku zastanawiałem się nad powrotem do szkoły i przejściem na doktorat z zakresu analityki i nauki o danych ... wymagając rachunku różniczkowego 1,2, algebry liniowej, numerycznej algebry liniowej, SAS, R, matematyki dla dużych zbiorów danych, teoria grafów i wiele więcej ...
n1tk

5

Nie zgadzaj się z Davidem, prawdziwy naukowiec danych jest statystycznym stosowanym, który koduje i wie, jak korzystać z algorytmów uczenia maszynowego z właściwych powodów. Statystyka jest podstawą wszystkich analiz danych. Jest to „ciasto” per se. Cała reszta to tylko lukier.

Pytanie brzmi: jakim naukowcem chcesz być? Czy chcesz być mistrzem przedmiotu (wiedza o tym, jak, dlaczego, kiedy i kiedy nie należy stosować algorytmu lub techniki) lub Kaggle Script Kiddie używający Scipy'ego i myślący, że jest naukowcem danych?

1 - Statystyki

2- Wszystko inne


2
Nie jestem pewien, czy rozumiem, co mówisz. Nigdy nie powiedziałem, że znajomość „statystyki stosowanej” nie jest ważna - po prostu wyróżniłem, że zdobycie doświadczenia w stosowaniu metod jest ważniejsze niż zdobycie wiedzy teoretycznej na temat samych metod.
David

1
David, to był dokładnie mój punkt sporny. Bez wiedzy teoretycznej na temat samych metod jesteśmy po prostu dzieciakami skryptowymi. Doświadczenie jest ważne, ale jest produktem ubocznym wiedzy teoretycznej, a nie na odwrót.
Ukryty model Markowa

2
Nie, nie jest. Istnieje ogromna różnica między stosowanym doświadczeniem a wiedzą teoretyczną, często jest to różnica między tym, co zyskuje się w przemyśle a w klasie. Na przykład bardziej cenna jest wiedza na temat skutecznego sprawdzania, czy model nie jest nadmierny przy użyciu stosowanej metody, takiej jak walidacja krzyżowa, niż znajomość teoretycznych podstaw legalizacji. Przestańmy też wspominać o „skrypciach” - nikt nie opowiada się za nową i okropną funkcjonalnością Kaggle za jednym kliknięciem.
David

1
Jeśli to, co mówisz, jest prawdą, to dlaczego firmy wolą doktoraty i osoby z dyplomami magisterskimi od osób z licencjatami? Jest tak, ponieważ mają teoretyczną wiedzę na temat technik sterujących algorytmami. Są konstruktorami silników jako takich. Wiedza teoretyczna to wiedza głębsza. Kaggle to czołg trzymający dla dzieciaków ze scenariusza.
Ukryty model Markowa

1
Chociaż widzę punkty, które oboje staracie się przedstawić, myślę, że być może nie jest to kontekst. Pierwotne pytanie brzmiało: „jak programista może przejść do pracy w informatyce?”. Jeśli odpowiedź brzmi: „rzuć wszystko, poświęć kilka lat na uzyskanie doktoratu w statystykach, a następnie zrób kilka projektów samodzielnie, a następnie zacznij aplikować”, jest to dość uciążliwa przeszkoda i równie dobrze możesz powiedzieć im, aby nie zawracali sobie głowy praktycznym sens. I odwrotnie, biorąc pod uwagę liczbę statystyk doktorantów (lub nawet magisterskich) i liczbę osób poszukujących, pracodawcy mogą rozważyć osoby, które mogą wykazać się doświadczeniem bez dyplomu.
chrisfs,

4

Jeśli chcesz być praktycznym człowiekiem z prawdziwą wiedzą, zacznij od matematyki (rachunek różniczkowy, prawdopodobieństwo + stat, algebra liniowa). Na każdym kroku spróbuj zaimplementować wszystko za pomocą programowania, python jest do tego miły. Kiedy zdobędziesz dobry grunt, baw się prawdziwymi danymi i rozwiązuj problemy

Kursy Algebra liniowa - edx Laff lub kodowanie macierzy Stat - edx stat 2x Rachunek Barkleya - czytaj ... to proste


2

David ma rację. Sugeruję, abyś skupił się na tym, co napędza twoje zainteresowanie. To jedyny sposób na sukces przy każdym wysiłku. Jeśli chcesz zbudować coś fajnego, zacznij od tego. Jeśli chcesz przeczytać książkę, która też jest dobra. Punkt początkowy nie ma znaczenia. Za kilka dni będziesz lepiej rozumieć, co chcesz i co powinieneś zrobić dalej.


1

Analiza danych jest tak szeroka, że ​​istnieje wiele różnych ścieżek, aby się do niej dostać. Zwykle dzieli się na 4 lub 5 różnych typów, na przykład:

wprowadź opis zdjęcia tutaj

Z innych postów w tym temacie można było zobaczyć osoby wywodzące się z tła statystyki stosowanej (zastosowanie odpowiedniego algorytmu), tła programowania (uczestnictwo w Kaggle) i innych osób stosujących go w środowisku biznesowym

Doświadczone firmy mogą nazywać osobę wypaczoną programistą „inżynierem danych”. Duże firmy również używają każdego typu w swoim zespole danych, więc dobrze byłoby wykazać się umiejętnościami w kształcie litery T.


0

Jeśli jesteś programistą, możesz zacząć od klasyfikatora drzewa decyzyjnego, skupić się na zrozumieniu matematyki Entropy i zdobywania informacji. Ważne jest, aby zrozumieć, że w ML chodzi tylko o kompresję danych.

Bardzo nie zgadzam się z niektórymi innymi odpowiedziami na temat wartości kursów praktycznych. Najbardziej wartościowa dla ML jest matematyka: teoria liczb, algebra liniowa i teoria prawdopodobieństwa.

Jeśli nie skupiasz się na matematyce, jedyne, czego się nauczysz, to jak korzystać z biblioteki do robienia magii, to nie jest uczenie maszynowe ani nauka.

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.