10 najlepszych projektów z zakresu nauki o danych na Github, które powinieneś zdobyć [2022]

Opublikowany: 2021-01-09

Ponieważ Data Science szturmem podbija branżę, istnieje ogromne zapotrzebowanie na wykwalifikowanych i wykwalifikowanych ekspertów w dziedzinie Data Science. Oczywiście konkurencja na obecnym rynku jest ostra. W takim scenariuszu pracodawcy poszukują nie tylko formalnego wykształcenia i certyfikatów zawodowych, ale również wymagają praktycznego doświadczenia. A co lepsze niż projekty Data Science, aby udowodnić swoją wartość i zaprezentować potencjalnym pracodawcom swoje rzeczywiste umiejętności w dziedzinie Data Science!

Jeśli aspirujesz do wejścia w dziedzinę Data Science, najlepszym sposobem na zbudowanie swojego portfolio od podstaw jest praca nad projektami Data Science. Stworzyliśmy ten post, aby zainspirować Cię do rozwijania własnych projektów Data Science.

Ponieważ GitHub jest doskonałym repozytorium pomysłów na projekty Data Science, oto lista projektów Data Science w GitHub, które powinieneś sprawdzić! Aby zdobyć więcej wiedzy i praktycznych zastosowań, zapoznaj się z naszymi kursami z zakresu analizy danych na najlepszych uczelniach.

Spis treści

10 najlepszych projektów Data Science na GitHub

1. Rozpoznawanie twarzy

Projekt rozpoznawania twarzy wykorzystuje Deep Learning i algorytm HOG ( Histogram of Oriented Gradients ). Ten system rozpoznawania twarzy jest przeznaczony do wyszukiwania twarzy na obrazie (algorytm HOG), transformacji afinicznych (wyrównywania twarzy za pomocą zestawu drzew regresji), kodowania twarzy (FaceNet) i przewidywania (Linear SVM).

Używając algorytmu HOG, obliczysz ważone gradienty orientacji głosów w kwadratach 16×16 pikseli, zamiast obliczać gradienty dla każdego piksela danego obrazu. Spowoduje to wygenerowanie obrazu HOG, który reprezentuje podstawową strukturę twarzy. W następnym kroku musisz użyć biblioteki Python dlib do tworzenia i przeglądania reprezentacji HOG, aby znaleźć, która część obrazu jest najbardziej podobna do wytrenowanego wzorca HOG.

2. Udostępnianie rowerów Kaggle

Systemy wypożyczania rowerów umożliwiają rezerwację i wypożyczanie rowerów/motocykli oraz ich zwrot, a wszystko to za pośrednictwem zautomatyzowanego systemu. Ten projekt przypomina bardziej konkurs Kaggle, w którym będziesz musiał połączyć historyczne wzorce użytkowania z danymi pogodowymi, aby przewidzieć popyt na usługi wynajmu rowerów dla programu Capital Bikeshare w Waszyngtonie.

Głównym celem tego konkursu Kaggle jest stworzenie modelu ML (opartego wyraźnie na funkcjach kontekstowych), który może przewidywać liczbę wypożyczonych rowerów. Wyzwanie składa się z dwóch części. Podczas gdy w pierwszej części skupisz się na zrozumieniu, analizowaniu i przetwarzaniu zestawów danych, druga część dotyczy projektowania modelu przy użyciu biblioteki ML.

3. Analiza tekstu raportu rządu meksykańskiego

Ten projekt to doskonałe zastosowanie NLP. 1 września 2019 r. rząd meksykański opublikował roczny raport w formie pliku PDF. Tak więc Twoim celem w tym projekcie będzie wyodrębnienie tekstu z pliku PDF, wyczyszczenie go, uruchomienie przez potok NLP i wizualizacja wyników za pomocą reprezentacji graficznych.

W tym projekcie będziesz musiał użyć wielu bibliotek Pythona, w tym:

  • PyPDF2 do wyodrębniania tekstu z plików PDF.
  • SpaCy, aby przekazać wyodrębniony tekst do potoku NLP.
  • Pandy do wydobywania i analizowania spostrzeżeń z zestawów danych.
  • NumPy do szybkich operacji na macierzach.
  • Matplotlib do projektowania wykresów i wykresów.
  • Seaborn w celu poprawy stylu działek/wykresów.
  • Geopanda do sporządzania map.

4. ALBERT

ALBERT opiera się na BERT, projekcie Google, który przyniósł radykalną zmianę w dziedzinie NLP. Jest to ulepszona implementacja BERT, zaprojektowana do samodzielnego uczenia się reprezentacji językowych przy użyciu TensorFlow.

W BERT wstępnie wytrenowane modele są ogromne, a zatem trudno jest je rozpakować, podłączyć do modelu i uruchomić na lokalnych komputerach. Właśnie dlatego zapotrzebowanie na ALBERT pomaga osiągnąć najnowocześniejsze osiągi w głównych testach porównawczych przy 30% niższych parametrach. Chociaż albert_base_zh ma tylko 10% parametrów w porównaniu z BERT, nadal zachowuje pierwotną dokładność BERT.

5. Przesiewacz sznurkowy

Jeśli interesuje Cię cyberbezpieczeństwo, pokochasz pracę nad tym projektem! Uruchomiony przez FireEye, StringSifter to narzędzie ML, które może automatycznie klasyfikować ciągi na podstawie ich znaczenia w analizie złośliwego oprogramowania.

Zwykle standardowe złośliwe programy zawierają ciągi do wykonywania określonych operacji, takich jak tworzenie klucza rejestru, kopiowanie plików z jednej lokalizacji do innej i tak dalej. StringSifter to fantastyczne rozwiązanie do łagodzenia cyberzagrożeń. Jednak musisz mieć Pythona w wersji 3.6 lub nowszej do uruchamiania i instalowania StringSifter.

6. Kafelek

Biorąc pod uwagę fakt, że dziś sieć i platformy internetowe są zalewane obrazami, we współczesnym przemyśle istnieje ogromne pole do pracy z danymi obrazowymi. Więc wyobraź sobie, że jeśli możesz stworzyć projekt zorientowany na wizerunek, będzie to bardzo ceniony atut dla wielu.

Tiler to takie narzędzie do tworzenia obrazów, które pozwala tworzyć unikalne obrazy, łącząc wiele różnych rodzajów mniejszych obrazów lub „kafelków”. Zgodnie z opisem Tilera na GitHubie, możesz zbudować obraz „linie, fale, z okręgów, ściegi krzyżykowe, klocki Minecraft, klocki lego, litery, spinacze do papieru” i wiele więcej. Z Tiler będziesz mieć nieskończone możliwości tworzenia innowacyjnych kreacji wizerunkowych.

7. Głęboki CTR

DeepCTR to „łatwy w użyciu, modułowy i rozszerzalny pakiet modeli CTR opartych na Deep Learning”. Zawiera również wiele innych ważnych elementów i warstw, które mogą być bardzo przydatne do budowania niestandardowych modeli.

Pierwotnie projekt DeepCTR został zaprojektowany na TensorFlow. Chociaż TensorFlow jest godnym pochwały narzędziem, nie jest to filiżanka herbaty dla każdego. W związku z tym powstało repozytorium DeepCTR-Torch. Nowa wersja zawiera pełny kod DeepCTR w PyTorch. Możesz zainstalować DeepCTR przez pip, używając następującej instrukcji:

pip install -U deepctr-torch

Dzięki DeepCTR korzystanie z dowolnego złożonego modelu z funkcjami model.fit() i model.predict() staje się łatwe.

8. TubeMQ

Czy zastanawiałeś się kiedyś, jak giganci technologiczni i liderzy branży przechowują, wyodrębniają i zarządzają swoimi danymi? Dzieje się to za pomocą narzędzi, takich jak TubeMQ, system rozproszonej kolejki wiadomości (MQ) firmy Tencent o otwartym kodzie źródłowym.

TubeMQ działa od 2013 roku i zapewnia wydajne przechowywanie i transmisję dużych ilości dużych zbiorów danych. Ponieważ zgromadził ponad siedem lat przechowywania i transmisji danych, TubeMQ ma przewagę nad innymi narzędziami MQ. Obiecuje doskonałą wydajność i stabilność w praktyce produkcyjnej. Co więcej, jest to stosunkowo niski koszt. Podręcznik użytkownika TubeMQ zawiera szczegółową dokumentację dotyczącą wszystkiego, co musisz wiedzieć o narzędziu.

9. Głęboka prywatność

Chociaż każdy z nas uwielbia od czasu do czasu oddawać się światu mediów cyfrowych i społecznościowych, jednej rzeczy (z czym wszyscy się zgadzamy) brakuje w cyfrowym świecie. Gdy prześlesz selfie lub wideo online, będziesz oglądany, analizowany, a nawet krytykowany. W najgorszym przypadku Twoje filmy i obrazy mogą zostać zmanipulowane.

Dlatego potrzebujemy narzędzi takich jak DeepPrivacy. Jest to w pełni automatyczna technika anonimizacji obrazów, która wykorzystuje GAN (generative adversarial network) . Model GAN ​​DeepPrivacy nie wyświetla żadnych prywatnych ani poufnych informacji. Może jednak generować w pełni anonimowy obraz. Może to zrobić, studiując i analizując oryginalną pozę osoby (osób) oraz obraz tła. DeepPrivacy używa adnotacji z obwiednią do identyfikacji obszaru obrazu, który ma znaczenie dla prywatności. Ponadto wykorzystuje maskę R-CNN do rzadkich informacji o pozie twarzy i DSFD do wykrywania twarzy na obrazie.

10. System przewidywania ocen filmów IMDb

Ten projekt Data Science ma na celu ocenę filmu jeszcze przed jego publikacją. Projekt podzielony jest na trzy części. Pierwsza część ma na celu przeanalizowanie danych zgromadzonych na stronie IMDb. Dane te będą obejmować informacje takie jak reżyserzy, producenci, produkcja castingowa, opis filmu, nagrody, gatunki, budżet, brutto i imdb_rating. Możesz utworzyć plik movie_contents.json, pisząc następujący wiersz:

python3 parser.py nb_elements

W drugiej części projektu celem jest analiza ramek danych i obserwacja korelacji między zmiennymi. Na przykład, czy wynik IMDb jest skorelowany z liczbą nagród i światową wartością brutto. Ostatnia część będzie polegać na wykorzystaniu uczenia maszynowego (losowy las) do przewidywania oceny IMDb na podstawie najbardziej odpowiednich zmiennych.

Zawijanie

Oto niektóre z najbardziej przydatnych projektów Data Science w serwisie GitHub, które możesz odtworzyć, aby wyostrzyć swoje umiejętności w zakresie Data Science. Im więcej czasu i wysiłku zainwestujesz w budowanie projektów Data Science, tym lepiej zyskasz w budowaniu modeli.

Jeśli jesteś zainteresowany nauką o danych, sprawdź program IIIT-B i upGrad Executive PG w dziedzinie Data Science , który jest stworzony dla pracujących profesjonalistów i oferuje ponad 10 studiów przypadków i projektów, praktyczne warsztaty praktyczne, mentoring z ekspertami z branży, 1 -on-1 z mentorami branżowymi, ponad 400 godzin nauki i pomocy w pracy z najlepszymi firmami.

Jakie korzyści przynosi nam wkład w projekty open-source?

Projekty typu open source to te projekty, których kod źródłowy jest otwarty dla wszystkich i każdy może uzyskać do niego dostęp, aby dokonać w nim modyfikacji. Wkład w projekty typu open source jest bardzo korzystny, ponieważ nie tylko poprawia twoje umiejętności, ale także daje ci kilka dużych projektów do umieszczenia w swoim CV. Ponieważ wiele dużych firm przechodzi na oprogramowanie typu open source, będzie to opłacalne, jeśli zaczniesz wnosić wkład wcześnie. Niektóre wielkie nazwiska, takie jak Microsoft, Google, IBM i Cisco, w taki czy inny sposób przyjęły open source. Istnieje duża społeczność biegłych programistów open-source, którzy stale przyczyniają się do ulepszania i aktualizowania oprogramowania. Społeczność jest bardzo przyjazna dla początkujących i zawsze gotowa do podjęcia działań i powitania nowych współpracowników. Istnieje dobra dokumentacja, która może pomóc w tworzeniu otwartego oprogramowania.

Czym jest algorytm HOG?

Histogram Oriented Gradients lub HOG to wykrywacz obiektów używany w wizjach komputerowych. Jeśli znasz histogramy orientacji krawędzi, możesz odnieść się do HOG. Ta metoda służy do pomiaru występowania orientacji gradientu w określonej części obrazu. Algorytm HOG jest również używany do obliczania ważonych gradientów orientacji głosów w kwadratach 16×16 pikseli, zamiast obliczania gradientów dla każdego piksela danego obrazu. Implementacja tego algorytmu podzielona jest na 5 kroków, którymi są: obliczanie gradientu, binning orientacji, bloki deskryptorów, normalizacja bloków i rozpoznawanie obiektów.

Jakie są kroki wymagane do zbudowania modelu ML?

Aby opracować model ML, należy wykonać następujące kroki: Pierwszym krokiem jest zebranie zestawu danych dla modelu. 80% tych danych zostanie wykorzystanych do szkolenia, a pozostałe 20% do testowania i walidacji modeli. Następnie musisz wybrać odpowiedni algorytm dla swojego modelu. Wybór algorytmu całkowicie zależy od typu problemu i zestawu danych. Następnie przychodzi trening modelu. Obejmuje to porównanie modelu z różnymi danymi wejściowymi i ponowne dostosowanie go zgodnie z wynikami. Ten proces jest powtarzany, aż do uzyskania najdokładniejszych wyników.