Top 10 Data Science-Projekte auf Github, die Sie in die Hand nehmen sollten [2022]

Veröffentlicht: 2021-01-09

Da Data Science die Branche im Sturm erobert, besteht eine enorme Nachfrage nach qualifizierten und qualifizierten Data Science-Experten. Natürlich ist der Wettbewerb auf dem gegenwärtigen Markt hart. In einem solchen Szenario suchen Arbeitgeber nicht nur nach formaler Bildung und beruflichen Zertifizierungen, sondern verlangen auch praktische Erfahrung. Und was gibt es Besseres als Data-Science-Projekte, um Ihren Wert zu beweisen und Ihre realen Data-Science-Fähigkeiten potenziellen Arbeitgebern zu präsentieren!

Wenn Sie in den Bereich Data Science einsteigen möchten, können Sie Ihr Portfolio am besten von Grund auf aufbauen, indem Sie an Data Science-Projekten arbeiten. Wir haben diesen Beitrag erstellt, um Sie zu inspirieren, Ihre eigenen Data-Science-Projekte zu entwickeln.

Da GitHub eine hervorragende Sammlung von Data-Science-Projektideen ist, finden Sie hier eine Liste von Data-Science-Projekten auf GitHub, die Sie sich ansehen sollten! Um mehr Wissen und praktische Anwendungen zu erlangen, sehen Sie sich unsere Data-Science-Kurse von Top-Universitäten an.

Inhaltsverzeichnis

Die 10 besten Data-Science-Projekte auf GitHub

1. Gesichtserkennung

Das Gesichtserkennungsprojekt nutzt Deep Learning und den HOG - Algorithmus ( Histogram of Oriented Gradients ). Dieses Gesichtserkennungssystem wurde entwickelt, um Gesichter in einem Bild zu finden (HOG-Algorithmus), affine Transformationen (Gesichter mit einem Ensemble von Regressionsbäumen auszurichten), Gesichtskodierung (FaceNet) und Vorhersagen zu treffen (Linear SVM).

Mit dem HOG-Algorithmus berechnen Sie die gewichteten Stimmorientierungsgradienten von 16×16-Pixel-Quadraten, anstatt Gradienten für jedes Pixel eines bestimmten Bildes zu berechnen. Dadurch wird ein HOG-Bild erzeugt, das die grundlegende Struktur eines Gesichts darstellt. Im nächsten Schritt müssen Sie die dlib-Python-Bibliothek zum Erstellen und Anzeigen von HOG-Darstellungen verwenden, um herauszufinden, welcher Teil des Bildes die größte Ähnlichkeit mit dem trainierten HOG-Muster aufweist.

2. Kaggle Bike Sharing

Mit Bike-Sharing-Systemen können Sie Fahrräder/Motorräder buchen, mieten und auch zurückgeben, alles über ein automatisiertes System. Dieses Projekt ähnelt eher einem Kaggle-Wettbewerb, bei dem Sie historische Nutzungsmuster mit Wetterdaten kombinieren müssen, um die Nachfrage nach Fahrradverleihdiensten für das Capital Bikeshare-Programm in Washington, DC, vorherzusagen

Das Hauptziel dieses Kaggle-Wettbewerbs ist die Erstellung eines ML-Modells (explizit basierend auf Kontextmerkmalen), das die Anzahl der gemieteten Fahrräder vorhersagen kann. Die Herausforderung besteht aus zwei Teilen. Während Sie sich im ersten Teil darauf konzentrieren, die Datensätze zu verstehen, zu analysieren und zu verarbeiten, dreht sich im zweiten Teil alles um das Entwerfen des Modells mithilfe einer ML-Bibliothek.

3. Textanalyse des mexikanischen Regierungsberichts

Dieses Projekt ist eine hervorragende Anwendung von NLP. Am 1. September 2019 veröffentlichte die mexikanische Regierung einen Jahresbericht in Form eines PDF. Ihr Ziel in diesem Projekt wird es also sein, Text aus dem PDF zu extrahieren, es zu bereinigen, es über eine NLP-Pipeline auszuführen und die Ergebnisse mithilfe von grafischen Darstellungen zu visualisieren.

Für dieses Projekt müssen Sie mehrere Python-Bibliotheken verwenden, darunter:

  • PyPDF2 zum Extrahieren von Text aus PDF-Dateien.
  • SpaCy, um den extrahierten Text an eine NLP-Pipeline zu übergeben.
  • Pandas zum Extrahieren und Analysieren von Erkenntnissen aus Datensätzen.
  • NumPy für schnelle Matrixoperationen.
  • Matplotlib zum Entwerfen von Plots und Grafiken.
  • Seaborn, um den Stil von Plots/Graphen zu verbessern.
  • Geopandas zum Plotten von Karten.

4. ALBERT

ALBERT basiert auf BERT, einem Google-Projekt, das den NLP-Bereich grundlegend verändert hat. Es ist eine erweiterte Implementierung von BERT, die für das selbstüberwachte Lernen von Sprachdarstellungen mit TensorFlow entwickelt wurde.

In BERT sind die vortrainierten Modelle enorm, und daher wird es schwierig, sie zu entpacken, sie in ein Modell einzustecken und sie auf lokalen Computern auszuführen. Aus diesem Grund hilft Ihnen die Notwendigkeit von ALBERT, bei den wichtigsten Benchmarks mit 30 % weniger Parametern eine State-of-the-Art-Leistung zu erzielen. Obwohl die albert_base_zh im Vergleich zu BERT nur 10 % Parameter hat, behält sie dennoch die ursprüngliche Genauigkeit von BERT bei.

5. Saitensieb

Wenn Sie sich für Cybersicherheit interessieren, werden Sie es lieben, an diesem Projekt zu arbeiten! StringSifter wurde von FireEye eingeführt und ist ein ML-Tool, das Zeichenfolgen basierend auf ihrer Malware-Analyse-Relevanz automatisch einordnen kann.

Üblicherweise enthalten Standard-Malware-Programme Zeichenfolgen zum Ausführen bestimmter Vorgänge, wie z. B. das Erstellen des Registrierungsschlüssels, das Kopieren von Dateien von einem Ort an einen anderen Ort und so weiter. StringSifter ist eine fantastische Lösung zur Abwehr von Cyber-Bedrohungen. Sie müssen jedoch über Python Version 3.6 oder höher verfügen, um StringSifter auszuführen und zu installieren.

6. Fliesenleger

Angesichts der Tatsache, dass das Web und Online-Plattformen heute mit Bildern überschwemmt werden, gibt es in der modernen Industrie einen großen Spielraum für die Arbeit mit Bilddaten. Stellen Sie sich also vor, wenn Sie ein imageorientiertes Projekt erstellen können, wird es für viele ein hoch geschätztes Gut sein.

Tiler ist ein solches Bildwerkzeug, mit dem Sie einzigartige Bilder erstellen können, indem Sie viele verschiedene Arten kleinerer Bilder oder „Kacheln“ kombinieren. Laut der GitHub-Beschreibung von Tiler können Sie ein Bild „Linien, Wellen, Kreise, Kreuzstiche, Minecraft-Blöcke, Legos, Buchstaben, Büroklammern“ und vieles mehr erstellen. Mit Tiler haben Sie endlose Möglichkeiten, innovative Bildkreationen zu erstellen.

7. DeepCTR

DeepCTR ist ein „benutzerfreundliches, modulares und erweiterbares Paket von Deep-Learning-basierten CTR-Modellen“. Es enthält auch zahlreiche andere wichtige Elemente und Ebenen, die beim Erstellen benutzerdefinierter Modelle sehr praktisch sein können.

Ursprünglich wurde das DeepCTR-Projekt auf TensorFlow entwickelt. Obwohl TensorFlow ein lobenswertes Tool ist, ist es nicht jedermanns Sache. Daher wurde das DeepCTR-Torch-Repository erstellt. Die neue Version enthält den vollständigen DeepCTR-Code in PyTorch. Sie können DeepCTR über Pip mit der folgenden Anweisung installieren:

pip install -U deepctr-torch

Mit DeepCTR wird es einfach, jedes komplexe Modell mit den Funktionen model.fit() und model.predict() zu verwenden.

8. TubeMQ

Haben Sie sich jemals gefragt, wie Technologiegiganten und Branchenführer ihre Daten speichern, extrahieren und verwalten? Dies geschieht mithilfe von Tools wie TubeMQ, dem Open-Source-MQ-System (Distributed Messaging Queue) von Tencent.

TubeMQ funktioniert seit 2013 und bietet eine leistungsstarke Speicherung und Übertragung großer Mengen an Big Data. Da es über sieben Jahre Datenspeicherung und -übertragung angehäuft hat, hat TubeMQ die Oberhand über andere MQ-Tools. Es verspricht hervorragende Leistung und Stabilität in der Produktionspraxis. Außerdem kostet es relativ wenig. Das TubeMQ-Benutzerhandbuch bietet eine detaillierte Dokumentation zu allem, was Sie über das Tool wissen müssen.

9. DeepPrivacy

Während jeder von uns es liebt, sich von Zeit zu Zeit in die Welt der digitalen und sozialen Medien zu vertiefen, fehlt der digitalen Welt eine Sache (worüber wir uns alle einig sind) die Privatsphäre. Sobald Sie ein Selfie oder ein Video online hochladen, werden Sie beobachtet, analysiert und sogar kritisiert. Im schlimmsten Fall können Ihre Videos und Bilder manipuliert werden.

Deshalb brauchen wir Tools wie DeepPrivacy. Es ist eine vollautomatische Anonymisierungstechnik für Bilder, die GAN (Generative Adversarial Network) nutzt. Das GAN-Modell von DeepPrivacy zeigt keine privaten oder sensiblen Informationen an. Es kann jedoch ein vollständig anonymes Bild erzeugen. Dies kann durch Studieren und Analysieren der ursprünglichen Pose der Person(en) und des Hintergrundbilds erfolgen. DeepPrivacy verwendet Bounding-Box-Anmerkungen, um den datenschutzrelevanten Bereich eines Bildes zu identifizieren. Es verwendet ferner Mask R-CNN , um Poseninformationen von Gesichtern zu spärlich zu machen, und DSFD , um Gesichter im Bild zu erkennen.

10. IMDb Filmbewertungs-Vorhersagesystem

Dieses Data-Science-Projekt zielt darauf ab, einen Film zu bewerten, noch bevor er veröffentlicht wird. Das Projekt ist in drei Teile gegliedert. Der erste Teil versucht, die von der IMDb-Website gesammelten Daten zu analysieren. Diese Daten enthalten Informationen wie Regisseure, Produzenten, Casting-Produktion, Filmbeschreibung, Auszeichnungen, Genres, Budget, Brutto und imdb_rating. Sie können die Datei movie_contents.json erstellen, indem Sie die folgende Zeile schreiben:

python3 parser.py nb_elements

Im zweiten Teil des Projekts geht es darum, die Datenrahmen zu analysieren und die Korrelationen zwischen Variablen zu beobachten. Zum Beispiel, ob der IMDb-Score mit der Anzahl der Auszeichnungen und dem weltweiten Brutto korreliert oder nicht. Der letzte Teil wird die Verwendung von maschinellem Lernen (Random Forest) beinhalten, um die IMDb-Bewertung basierend auf den relevantesten Variablen vorherzusagen.

Einpacken

Dies sind einige der nützlichsten Data-Science-Projekte auf GitHub, die Sie neu erstellen können, um Ihre realen Data-Science-Fähigkeiten zu verbessern. Je mehr Zeit und Mühe Sie in die Erstellung von Data-Science-Projekten investieren, desto besser werden Sie bei der Modellerstellung.

Wenn Sie neugierig sind, etwas über Data Science zu lernen, schauen Sie sich das Executive PG Program in Data Science von IIIT-B & upGrad an, das für Berufstätige entwickelt wurde und mehr als 10 Fallstudien und Projekte, praktische Workshops, Mentoring mit Branchenexperten, 1 -on-1 mit Branchenmentoren, mehr als 400 Stunden Lern- und Jobunterstützung bei Top-Unternehmen.

Wie profitieren wir von Beiträgen zu Open-Source-Projekten?

Open-Source-Projekte sind Projekte, deren Quellcode für alle offen ist und jeder darauf zugreifen kann, um Änderungen daran vorzunehmen. Das Mitwirken an Open-Source-Projekten ist sehr vorteilhaft, da es nicht nur Ihre Fähigkeiten schärft, sondern Ihnen auch einige große Projekte ermöglicht, die Sie in Ihren Lebenslauf aufnehmen können. Da viele große Unternehmen auf Open-Source-Software umsteigen, wird es für Sie profitabel sein, wenn Sie frühzeitig mit Ihrer Arbeit beginnen. Einige der großen Namen wie Microsoft, Google, IBM und Cisco haben Open Source auf die eine oder andere Weise angenommen. Es gibt eine große Gemeinschaft kompetenter Open-Source-Entwickler da draußen, die ständig dazu beitragen, die Software besser und aktualisiert zu machen. Die Community ist sehr anfängerfreundlich und immer bereit, sich zu verbessern und neue Mitwirkende willkommen zu heißen. Es gibt eine gute Dokumentation, die Ihnen dabei helfen kann, zu Open Source beizutragen.

Was ist der HOG-Algorithmus?

Histogram of Oriented Gradients oder HOG ist ein Objektdetektor, der in Computervisionen verwendet wird. Wenn Sie mit den Kantenorientierungshistogrammen vertraut sind, können Sie sich auf HOG beziehen. Dieses Verfahren wird verwendet, um das Auftreten der Gradientenorientierungen in einem bestimmten Teil eines Bildes zu messen. Der HOG-Algorithmus wird auch verwendet, um die gewichteten Abstimmungsorientierungsgradienten von 16 × 16 Pixelquadraten zu berechnen, anstatt Gradienten für jedes Pixel eines bestimmten Bildes zu berechnen. Die Implementierung dieses Algorithmus ist in 5 Schritte unterteilt, nämlich Gradientenberechnung, Orientierungseinteilung, Deskriptorblöcke, Blocknormalisierung und Objekterkennung.

Welche Schritte sind erforderlich, um ein ML-Modell zu erstellen?

Die folgenden Schritte müssen befolgt werden, um ein ML-Modell zu entwickeln: Der erste Schritt besteht darin, den Datensatz für Ihr Modell zu sammeln. 80 % dieser Daten werden im Training verwendet und die restlichen 20 % werden für Tests und Modellvalidierung verwendet. Dann müssen Sie einen geeigneten Algorithmus für Ihr Modell auswählen. Die Auswahl des Algorithmus hängt vollständig von der Art des Problems und dem Datensatz ab. Als nächstes kommt das Training des Modells. Dazu gehört, das Modell gegen verschiedene Eingaben laufen zu lassen und es entsprechend den Ergebnissen neu anzupassen. Dieser Vorgang wird wiederholt, bis die genauesten Ergebnisse erzielt werden.