Wydaje się, że eksploracja danych i uczenie maszynowe stały się tak popularne, że teraz prawie każdy student CS wie o klasyfikatorach, klastrowaniu, statystycznym NLP ... itd. Wygląda więc na to, że znalezienie eksploratorów danych nie jest obecnie trudną sprawą.
Moje pytanie brzmi: jakie umiejętności mógłby nauczyć się eksplorator danych, co uczyniłoby go innym od innych? Zrobić z niego osobę, która nie jest taka łatwa do znalezienia.
machine-learning
data-mining
Jack Twain
źródło
źródło
Odpowiedzi:
Wielokrotnie widziałem programistów stosujących techniki ML. To jest zwykły wzór:
Prosta odpowiedź brzmi: (większość) inżynierów oprogramowania ma bardzo słabe statystyki i matematykę. Jest to zaleta każdego, kto chce z nimi konkurować. Oczywiście statystyki nie są w strefie komfortu, jeśli trzeba napisać kod produkcyjny. Rolą, która staje się naprawdę rzadka, jest rola Data Scientist. Jest to ktoś, kto może pisać kod, aby uzyskać dostęp i grać z ogromną ilością danych i znaleźć w nich wartość.
źródło
O czym to jest
Sama wiedza na temat technik jest podobna do znajomości zwierząt w zoo - możesz je nazwać, opisać ich właściwości, a może zidentyfikować je na wolności.
Zrozumienie, kiedy ich używać, formułowanie, budowanie, testowanie i wdrażanie działających modeli matematycznych w obszarze aplikacji, unikając pułapek --- to są umiejętności, które mnie wyróżniają.
Nacisk należy położyć na naukę , stosując systematyczne, naukowe podejście do problemów biznesowych, przemysłowych i handlowych. Ale wymaga to umiejętności szerszych niż eksploracja danych i uczenie maszynowe, jak przekonująco przekonuje Robin Bloor w „A Data Science Rant” .
Co więc można zrobić?
Obszary zastosowania : poznaj różne obszary zastosowania bliskie twoim zainteresowaniom lub pracodawcy. Obszar ten jest często mniej ważny niż zrozumienie, w jaki sposób zbudowano model i jak wykorzystano go do zwiększenia wartości tego obszaru. Modele, które odnoszą sukcesy w jednym obszarze, często można przeszczepić i zastosować w różnych obszarach, które działają w podobny sposób.
Konkursy : wypróbuj witrynę Kaggle poświęconą eksploracji danych , najlepiej dołączając do zespołu innych osób. (Kaggle: platforma do konkursów modelowania predykcyjnego. Firmy, rządy i badacze prezentują zestawy danych i problemy, a najlepsi na świecie naukowcy konkurują o najlepsze rozwiązania).
Podstawy : Istnieją cztery: (1) solidne podstawy w statystyce, (2) dość dobre umiejętności programistyczne, (3) zrozumienie, jak konstruować złożone zapytania danych, (4) budowanie modeli danych. Jeśli jakieś są słabe, to ważne jest, aby zacząć.
Kilka cytatów w tym zakresie:
Pamiętać:
I w końcu:
Najbardziej realne, zastosowane problemy nie są dostępne wyłącznie z `` mapy ''. Aby robić praktyczne rzeczy z modelowaniem matematycznym, trzeba być gotowym na branie ze szczegółami, subtelnościami i wyjątkami. Nic nie zastąpi znajomości terytorium z pierwszej ręki.
źródło
Zgadzam się ze wszystkim, co zostało powiedziane. To, co mnie wyróżnia, to:
źródło
Oto kilka rzeczy, dzięki którym wyróżnisz się z tłumu:
Ogólny przekaz, który dotyczy wszystkich trzech punktów: Spójrz na duży obraz, nie zgub się w szczegółach.
źródło
Umiejętność, która odróżnia jednego eksploratora danych od innych, to umiejętność interpretacji modeli uczenia maszynowego. Najczęściej buduj maszynę, zgłoś błąd, a następnie zatrzymaj się. Jakie są matematyczne zależności między funkcjami? Czy efekty są addytywne czy nieaddytywne, czy oba? Czy którakolwiek z funkcji jest nieistotna? Czy maszyna oczekuje od hipotezy zerowej, że w danych są tylko wzorce szans? Czy model uogólnia na niezależne dane? Co te wzorce oznaczają dla badanego problemu? Jakie są wnioski? Jakie są spostrzeżenia? Dlaczego ekspert domeny powinien być podekscytowany? Czy maszyna doprowadzi eksperta do domeny zadającego nowe pytania i projektującego nowe eksperymenty? Czy eksplorator danych może skutecznie komunikować model i jego implikacje dla świata?
źródło
Podałbym tam pojęcie „umiejętności miękkich”.
rozpoznanie, kim jest „ekspert” dla metody X, oraz możliwość skorzystania z ich wiedzy (nie powinieneś wiedzieć ani nie wiedzieć wszystkiego o wszystkim). Zdolność i chęć współpracy z innymi.
umiejętność tłumaczenia lub reprezentowania „prawdziwego świata” za pomocą matematyki stosowanej w ML.
umiejętność wyjaśniania metod na różne sposoby różnym odbiorcom - wiedząc, kiedy skupić się na szczegółach, a kiedy cofnąć się i zobaczyć szerszy kontekst.
myślenie systemowe, możliwość zobaczenia, w jaki sposób Twoja rola wpływa na inne obszary działalności i jak te obszary wpływają na twoją pracę.
zrozumienie i zrozumienie niepewności oraz posiadanie pewnych ustrukturyzowanych metod radzenia sobie z tym. Będąc w stanie jasno powiedzieć, jakie są twoje założenia.
źródło
Będąc w stanie dobrze uogólniać
To jest istota dobrego modelu. I to jest esencja tego, co wyróżnia najlepszych praktyków sztuki uczenia maszynowego z tłumu.
Zrozumienie, że celem jest optymalizacja wydajności na niewidzialnych danych, a nie minimalizowanie utraty treningu. Wiedząc, jak uniknąć zarówno nadmiernego, jak i niedopasowania. Wymyślanie modeli, które nie są zbyt skomplikowane, ale nie są zbyt proste w opisaniu problemu. Wydobywanie istoty zestawu treningowego, a nie maksimum możliwego.
Zaskakujące jest to, jak często nawet doświadczeni praktycy uczenia maszynowego nie przestrzegają tej zasady. Jednym z powodów jest to, że ludzie nie doceniają dwóch ogromnych różnic wielkości między teorią a praktyką :
Drugi jest szczególnie niezrozumiały, ponieważ nawet dla najprostszego problemu z wejściami i wynikiem binarnym istnieją możliwych przykładów wejściowych i wykładniczo większa liczba 2 ^ możliwych modeli.N 2N 2N
Jest to również to, co większość powyższych odpowiedzi powiedziała w bardziej konkretny i konkretny sposób. dobrze uogólnić to najkrótszy sposób, jaki mogłem wymyślić.
źródło
Widzę, że istnieją dwie części podczas praktycznego uczenia maszynowego
Inżynieria (która obejmuje wszystkie algorytmy, uczenie się różnych pakietów, programowanie).
Ciekawość / uzasadnienie (możliwość zadawania lepszych pytań do danych).
Myślę, że „ciekawość / rozumowanie” to umiejętność, która odróżnia jedną od innych. Na przykład, jeśli widzisz tabele liderów uzupełnień kaggle, wiele osób mogło użyć wspólnych (podobnych) algorytmów, co robi różnicę, w jaki sposób logicznie kwestionujesz dane i je formułujesz.
źródło