7 Erstaunliche GitHub-Repositories für maschinelles Lernen für Data Scientists

Inhalt

Einführung

Wenn ich eine Plattform wählen müsste, die mich über die neuesten Entwicklungen in Datenwissenschaft Ja maschinelles Lernen – es wäre GitHub. Der große Umfang von GitHub, kombiniert mit der Leistung von Super-Data-Wissenschaftlern auf der ganzen Welt, macht es zu einer obligatorischen Plattform für alle, die sich für dieses Gebiet interessieren.

Können Sie sich eine Welt vorstellen, in der Bibliotheken und Frameworks für maschinelles Lernen wie BERT, StanfordNLP, TensorFlow, PyTorch, etc. waren nicht Open Source? Es ist undenkbar! GitHub hat maschinelles Lernen für die Massen demokratisiert, genau im Einklang mit dem, was wir an DataPeaker glauben.

Dies war einer der Hauptgründe, warum wir im Januar mit dieser GitHub-Serie begonnen haben, in der die nützlichsten Pakete und Bibliotheken für maschinelles Lernen behandelt werden 2018.

best-github-4423920

Zusammen damit, Wir haben auch Reddit-Diskussionen behandelt, die unserer Meinung nach für alle Data-Science-Profis relevant sind. Dieser Monat ist nicht anders. Ich habe die fünf besten Debatten für Mai ausgewählt, die sich auf zwei dinge konzentrieren: Machine-Learning-Techniken und professionelle Beratung durch erfahrene Data Scientists.

Sie können sich auch die GitHub-Repositorys und Reddit-Diskussionen ansehen, die wir dieses Jahr behandelt haben.:

Top GitHub-Repositorys (Mai von 2019)

github-octocat-3178175

Microsoft-80660_960_720-5301780

Interpretierbarkeit ist gerade beim maschinellen Lernen eine RIESIGE Sache. In der Lage sein zu verstehen, wie ein Modell das Ergebnis erzeugt hat, das es produziert hat, ein grundlegender Aspekt jedes Machine-Learning-Projekts. Eigentlich, Wir haben sogar einen Podcast mit Christoph Molar über interpretierbares ML gemacht, den Sie sich ansehen sollten.

InterpretML ist ein Open-Source-Paket von Microsoft zum Trainieren interpretierbarer Modelle und zum Erklären von Black-Box-Systemen. Microsoft hat es am besten formuliert, als es erklärte, warum Interpretierbarkeit unerlässlich ist:

  • Debugging-Modelle: Warum hat mein Modell diesen Fehler gemacht?
  • Voreingenommenheit erkennen: Unterscheidet mein Modell??
  • Mensch-KI-Kooperation: Wie kann ich die Entscheidungen des Modells verstehen und ihnen vertrauen??
  • Normative Konformität: Erfüllt mein Modell die gesetzlichen Anforderungen?
  • Anwendungen mit hohem Risiko: Sanitär, finanziell, gerichtlich, etc.

Interpretar el funcionamiento interno de un modelo de aprendizaje automático se vuelve más difícil a messen que aumenta la complejidad. Haben Sie jemals versucht, mehrere Modelle zu zerlegen und zu verstehen?? Es kostet viel Zeit und Mühe, es zu tun.

Wir können nicht einfach mit einem komplexen Modell zu unserem Kunden oder unserer Führung gehen, ohne erklären zu können, wie es zu einem guten Ergebnis geführt hat. / Präzision. Das ist für uns ein One-Way-Ticket zurück zum Zeichenbrett.

Die Leute von Microsoft Research haben den Algorithmus Explainable Boosting Machine entwickelt (EBM) bei der Interpretation helfen. Diese MBE-Technik hat eine hohe Präzision und Verständlichkeit: Der Heilige Gral.

Das Interpretieren von ML beschränkt sich nicht auf die Verwendung von EBM. Es unterstützt auch Algorithmen wie LIME, lineare Modelle, Entscheidungsbäume, unter anderen. Der Vergleich von Modellen und die Auswahl des besten Modells für unser Projekt war noch nie so einfach!!

Sie können InterpretML mit dem folgenden Code installieren:

pip install numpy scipy pyscaffold
pip install -U interpretieren

Google Research erscheint erneut in unserer monatlichen Github-Reihe. Keine Überraschungen: Sie haben die meiste Rechenleistung im Unternehmen und nutzen sie für maschinelles Lernen.

Ihre neueste Open-Source-Version, genannt Tensor2Robot (T2R) es ist ziemlich beeindruckend. T2R es una biblioteca para Ausbildung, groß angelegte Bewertung und Inferenz von tiefen neuronalen Netzen. Aber warte, wurde mit einem bestimmten Ziel entwickelt. Es wurde für neuronale Netze entwickelt, die sich auf die Wahrnehmung und Steuerung von Robotern beziehen.

No hay premios por adivinar el marco de tiefes Lernen en el que se construye Tensor2Robot. So ist es, TensorFlow. Tensor2Robot wird innerhalb von Alphabet verwendet, Die Mutterorganisation von Google.

Hier sind ein paar Projekte, die mit Tensor2Robot umgesetzt wurden:

TensorFlow 2.0, die TensorFlow-Version (TF) dieses Jahr am meisten erwartet, letzten Monat offiziell gestartet. Und ich konnte es kaum erwarten, es in die Finger zu bekommen!!

tf-2-8299446

Dieses Repository enthält TF-Implementierungen mehrerer generativer Modelle, einschließlich:

  • Antagonistische generative Netzwerke (GAN)
  • Autocoder
  • Variations-Autoencoder (Ach)
  • VAE-GAN, unter anderen.

Alle diese Modelle sind in zwei Datensätzen implementiert, mit denen Sie ziemlich vertraut sind.: Mode MNIST und NSYNTH.

Der beste Teil? Alle diese Implementierungen sind in einem Jupyter Notebook verfügbar!! So können Sie es herunterladen und auf Ihrem eigenen Computer ausführen oder nach Google Colab exportieren. Sie haben die Wahl und TensorFlow 2.0 ist hier für Sie zu verstehen und zu verwenden.

stumpy_logo_small-8802941

Ein Repository von Zeitreihen! No me he encontrado con un nuevo desarrollo de Zeitreihe en bastante tiempo.

STUMPY ist eine leistungsstarke und skalierbare Bibliothek, die uns bei der Durchführung von Zeitreihen-Data-Mining-Aufgaben unterstützt. STUMPY wurde entwickelt, um ein Matrixprofil zu berechnen. Ich kann dich fragen sehen: Was zum Teufel ist ein Matrixprofil?? Gut, Dieses Matrixprofil ist ein Vektor, der den normalisierten euklidischen Abstand z zwischen einer beliebigen Teilsequenz innerhalb einer Zeitreihe und ihrem nächsten Nachbarn speichert.

Hier sind einige Zeitreihen-Data-Mining-Aufgaben, die uns dieses Matrixprofil bei der Durchführung hilft:

  • Anomalie-Entdeckung
  • Segmentierung semántica
  • Dichteschätzung
  • Zeitreihenketten (zeitlich geordneter Satz von Teilsequenzmustern)
  • Mustererkennung / Grund (ungefähr wiederholte Teilsequenzen innerhalb einer längeren Zeitreihe)

Verwenden Sie den folgenden Code, um es direkt über . zu installieren pepita:

pip install stumm

MeshCNN es una rotes neuronales profunda de uso general para mallas triangulares 3D. Diese Netze können für Aufgaben wie die 3D-Formklassifizierung oder Segmentierung verwendet werden. Eine großartige Machine-Vision-Anwendung.

Das MeshCNN-Framework enthält Faltungsschichten, Gruppieren und Verschwinden wird direkt auf die Kanten des Netzes angewendet:

meshcnn_overview-4652046

Faltungsneurale Netze (CNN) sind perfekt für die Arbeit mit Bildern und visuellen Daten. CNNs sind in letzter Zeit in aller Munde, da ein Boom bei bildbezogenen Aufgaben aus ihnen hervorgeht.. Objekterkennung, Bildsegmentierung, Bildklassifizierung, etc., All dies ist dank des Fortschritts von CNN möglich.

Deep Learning in 3D weckt das Interesse der Industrie, einschließlich Felder wie Robotik und autonomes Fahren. Das Problem bei 3D-Formen besteht darin, dass sie von Natur aus unregelmäßig sind.. Dies macht Operationen wie Faltungen schwierig und herausfordernd..

Hier kommt MeshCNN ins Spiel.. Aus dem Repository:

Meshes sind eine Liste von Scheitelpunkten, Kanten und Flächen, die zusammen die Form des 3D-Objekts definieren. Das Problem ist, dass jeder Knoten eine andere Anzahl von Nachbarn hat und es keine Reihenfolge gibt.

Wenn Sie ein Fan von Computer Vision sind und daran interessiert sind, CNN zu lernen oder anzuwenden, das ist das perfekte Repository für dich. In unseren Artikeln erfahren Sie mehr über CNN:

Baum-8820971

Entscheidungsbaumalgorithmen gehören zu den ersten fortgeschrittenen Techniken, die wir beim maschinellen Lernen lernen. Mal ehrlich, Ich schätze diese Technik nach der logistischen Regression sehr. Könnte es für größere Datensätze verwenden, Verstehe wie es funktioniert hat, wie es zu den Teilungen kam, etc.

Persönlich, ich liebe dieses archiv. Es ist eine Fundgrube für Data Scientists. Das Repository enthält eine Sammlung von Artikeln zu baumbasierten Algorithmen, inklusive Entscheidungsbäume, Regression und Klassifizierung. Das Repository enthält auch die Implementierung jedes Artikels. Was können wir mehr verlangen?

Haben Sie sich jemals gefragt, wie der Trainingsprozess Ihres Machine-Learning-Algorithmus funktioniert?? Wir schreiben den Code, einige Komplikationen passieren hinter den Kulissen (Die Freude am Programmieren!), Und wir bekommen die Ergebnisse.

Microsoft Research hat ein Tool namens TensorWatch entwickelt, mit dem wir Echtzeit-Visualisierungen des Trainingsprozesses unseres Modells für maschinelles Lernen anzeigen können. Tolle! Sehen Sie sich einen Ausschnitt der Funktionsweise von TensorWatch an:

tensorwatch-6981466

TensorWatch, in einfachen Worten, ist ein Debugging- und Visualisierungstool für Deep Learning und Reinforcement Learning. Es funktioniert in Jupyter-Notebooks und ermöglicht uns viele andere benutzerdefinierte Visualisierungen unserer Daten und unserer Modelle.

Reddit-Diskussionen

Nehmen wir uns einen Moment Zeit, um die erstaunlichsten Reddit-Diskussionen zu Data Science und Machine Learning vom Mai zu sehen 2019. Hier ist für jeden etwas dabei, ob Sie ein Data Science-Enthusiast oder ein Praktiker sind. Also lass uns tiefer graben!

Das ist eine schwer zu knackende Nuss. Die erste Frage ist, ob Sie sich für eine Promotion entscheiden sollten, bevor Sie eine Stelle in der Industrie antreten. Und später, wenn du dich für einen entschieden hast, Welche Fähigkeiten sollten Sie erwerben, um Ihren Branchenwechsel zu erleichtern??

Ich denke, diese Diskussion könnte hilfreich sein, um eines der größten Rätsel unserer Karriere zu entschlüsseln: Wie gehen wir von einem Feld oder einer Arbeitslinie zu einem anderen über?? Betrachten Sie das nicht nur aus der Sicht eines Doktoranden. Dies ist für die meisten von uns sehr relevant, die den ersten Sprung ins maschinelle Lernen machen möchten..

Ich empfehle dir dringend, diesem Thread zu folgen, da viele erfahrene Datenwissenschaftler ihre persönlichen Erfahrungen und Erkenntnisse geteilt haben.

Vor kurzem, ein Forschungsartikel wurde veröffentlicht, der den Titel dieses Threads erweitert. Die Zeitung erklärte die Lotterielose-Hypothese, bei der ein kleineres Subnetz, auch als Gewinnticket bekannt, könnte im Vergleich zu einem größeren Netzwerk schneller trainieren.

Diese Diskussion konzentriert sich auf dieses Dokument. Um mehr über die Lottoscheinhypothese und ihre Funktionsweise zu erfahren, Sie können sich auf meinen Artikel beziehen, in dem ich dieses Konzept diskutiere, damit auch Anfänger es verstehen können:

Die besten ICLR-Artikel entschlüsseln 2019: Neuronale Netze sind hier, um zu regieren

Ich habe diese Diskussion gewählt, weil ich sie voll und ganz nachempfinden kann. Ich dachte immer: Ich habe viel gelernt und, aber trotzdem, viel mehr bleibt. Werde ich jemals ein Experte werden? Ich habe den Fehler gemacht, nur auf die Quantität und nicht auf die Qualität des Gelernten zu achten.

Mit schneller und kontinuierlicher Fortschrittstechnologie, es wird immer viel zu lernen geben. Dieser Thread enthält einige solide Ratschläge, wie Sie Prioritäten setzen können, halten Sie sich an sie und konzentrieren Sie sich auf die anstehende Aufgabe, anstatt zu versuchen, ein Experte in allen Gewerken zu werden.

Abschließende Anmerkungen

Ich hatte eine Menge Spaß (und ich habe gelernt) bei der Zusammenstellung der GitHub-Sammlung für maschinelles Lernen dieses Monats! Ich empfehle dringend, beide Plattformen mit einem Lesezeichen zu versehen und sie regelmäßig zu überprüfen. So bleiben Sie immer auf dem neuesten Stand des maschinellen Lernens..

Oder Sie kommen jeden Monat wieder und sehen sich unsere besten Optionen an. 🙂

Wenn Sie denken, dass ich ein Repository oder eine Diskussion verpasst habe, Kommentar unten und ich freue mich über eine Diskussion darüber.

Abonniere unseren Newsletter

Wir senden Ihnen keine SPAM-Mail. Wir hassen es genauso wie du.