
Trotz der vielen Quellen für kostenlose Software für maschinelles Lernen, die im Internet verfügbar sind, bleibt Github eine wichtige Clearingstelle für alle Arten von Open-Source-Tools, die von der Community für maschinelles Lernen und Datenanalyse verwendet werden.
Diese Sammlung enthält Repositories, Datensätze und Jupyter-Notizbücher für maschinelles Lernen, sortiert nach Sternebewertung. Im
vorherigen Teil haben wir über beliebte Repositories zum Studium der Datenvisualisierung und des Deep Learning gesprochen.
Maschinelles Lernen
Eine beeindruckende Liste von Systemen, Bibliotheken und Software, die nach Sprache und Kategorie (Computer Vision, Verarbeitung natürlicher Sprache usw.) klassifiziert sind. Darüber hinaus finden Sie in diesem Repository eine Liste mit kostenlosen Büchern zum maschinellen Lernen, kostenlosen (meistens) Kursen zum maschinellen Lernen und datenwissenschaftlichen Blogs.
Das seit 2007 entwickelte Python-Modul für maschinelles Lernen basiert auf den Bibliotheken SciPy, NumPy und Matplotlib. Vertrieb unter der BSD 3-Klausel-Lizenz. Scikit-learn ist ein universelles Werkzeug für die Arbeit, das Klassifizierungs-, Regressions- und Clustering-Algorithmen sowie Methoden zur Datenaufbereitung und Modellbewertung enthält.
Ein Open-Source-Framework für maschinelles Lernen, das die Erfassung von Ereignissen, die Bereitstellung von Algorithmen, die Auswertung und Vorlagen für bekannte Aufgaben wie Klassifizierung und Empfehlungen unterstützt. Stellt über die REST-API oder das SDK eine Verbindung zu vorhandenen Anwendungen her. PredictionIO basiert auf skalierbaren Open Source-Diensten wie Hadoop, HBase (und anderen Datenbanken), Elasticsearch und Spark.
Material für Anfänger im Fach. Das Repository enthält eine Sammlung von IPython-Tutorials für die Scikit-Learn-Bibliothek, die eine große Anzahl von Algorithmen für maschinelles Lernen implementiert, sowie mehrere Links zu Python-bezogenen Themen für maschinelles Lernen und allgemeinere Informationen zur Datenanalyse. Der Autor bietet Links zu vielen anderen Tutorials zum Thema.
Muster
6 845,
1,353
Python-basiertes Webentwicklungsmodul mit Tools für Analyse, Verarbeitung natürlicher Sprache (Markieren von Wortarten, N-Gramm-Suche, Stimmungsanalyse, WordNet), maschinelles Lernen, Netzwerkanalyse und Visualisierung. Das Modul wurde am Forschungszentrum für Computerlinguistik und Psycholinguistik der Universität Antwerpen (Belgien) erstellt und gut dokumentiert. Im Repository finden Sie mehr als 50 Beispiele für seine Verwendung.
Aktive Entwicklung einer Bibliothek für maschinelles Lernen für Go. Bietet Entwicklern ein voll funktionsfähiges, benutzerfreundliches und hochgradig anpassbares Softwarepaket. GoLearn implementiert die bekannte Scikit-Learn-Lernoberfläche.
Das Vowpal Wabbit-System erweitert die Grenzen des maschinellen Lernens mithilfe von Methoden wie Hashing, Allreduce, learning2search sowie aktivem und interaktivem Lernen. Vowpal Wabbit zielt darauf ab, massive Datensätze schnell zu modellieren und unterstützt paralleles Lernen. Besonderes Augenmerk wird auf das verstärkte Lernen unter Verwendung mehrerer kontextbezogener "Gangster-Algorithmen" gelegt.
NuPIC implementiert HTM-Algorithmen (Hierarchical Temporal Memory) für maschinelles Lernen. Im Allgemeinen ist HTM ein Versuch, die Rechenoperationen des Neokortex des menschlichen Gehirns zu simulieren, und konzentriert sich auf die Erhaltung und den Aufruf räumlicher und zeitlicher Muster. HTM ist ein Speichersystem, es ist nicht programmiert, lernt nicht, Algorithmen für verschiedene Aufgaben auszuführen, es lernt, ein Problem zu lösen. NuPIC eignet sich für alle Arten von Aufgaben, insbesondere zur Erkennung von Musteranomalien.
aerosolve versucht, sich von anderen Bibliotheken abzuheben, indem es sich auf benutzerfreundliche Debugging-Tools, einen Scala-Code für Schulungen und einen Mechanismus zur Analyse von Bildinhalten für eine einfache Rangfolge, Flexibilität und Kontrolle über Funktionen konzentriert. Die Bibliothek ist für die Verwendung mit seltenen interpretierbaren Funktionen vorgesehen, die normalerweise bei der Suche (Suchbegriffe, Filter) oder der Preisgestaltung (Anzahl der Zimmer in einem Hotelzimmer, Standort, Preis) gefunden werden.
Das Repository,
das das Buch
Machine Learning for Hackers ergänzt , in dem der gesamte Code in der Sprache R dargestellt wird und für die statistische Datenverarbeitung (in der Tat der Standard statistischer Programme) und Grafiken vorgesehen ist. Hier finden Sie zahlreiche R.-Pakete. Zu den behandelten Themen gehören allgemeine Klassifizierungs-, Ranking- und Regressionsaufgaben sowie statistische Verfahren für die Komponentenanalyse und die mehrdimensionale Skalierung.
Github-Datensätze
Ein weiteres beeindruckendes Repository mit seiner Größe ist eine Liste, die in 30 Themen unterteilt ist: Biologie, Sport, Museen, natürliche Sprache usw. Das Repository enthält mehrere hundert Datensätze, von denen die meisten kostenlos sind. Hier finden Sie Links zu anderen Big Data-Sammlungen.
Das offizielle OpenAddresses.io-Repository ist eine kostenlose und offene globale Sammlung von Straßenadressen. Das Projekt umfasst Straßennamen, Hausnummern, Postleitzahlen und geografische Koordinaten.
Ein Katalog aller bekannten Planeten außerhalb des Sonnensystems. Früher wurde die Datenbank innerhalb von 24 Stunden nach der Entdeckung eines neuen Planeten aktualisiert, aber jetzt entwickelt sich das Projekt leider praktisch nicht weiter.
Die US Census Bureau-Datenbank, die für die Integration mit anderen offenen Datensätzen angepasst ist und praktische Funktionen zum Bearbeiten und Erstellen eines eigenen benutzerdefinierten Datensatzes mit der Census-API bietet: Statistiken, kartografisches GeoJSON, lat / lng usw.
openFDA ist ein Projekt der US-amerikanischen Food and Drug Administration (FDA), das darauf abzielt, Forschern und Entwicklern über die API eine Sammlung öffentlicher Datensätze sowie Beispiele für die Verwendung dieser Daten und Dokumentationen bereitzustellen. Es gibt Informationen über die Nebenwirkungen von Medikamenten, die Kennzeichnung von Arzneimitteln, Berichte über den Rückzug von Arzneimitteln vom Markt und Änderungen der Verschreibungsformel.
Der Quellcode für das offene Datenportal der CERN Nuclear Research Organization, das als "Zugangspunkt zu einer wachsenden Anzahl von Daten aus der CERN-Forschung" bezeichnet wird.
IPython (Jupyter) -Notebooks
Eine Liste nützlicher Github-Repositorys, bestehend aus IPython-Notizbüchern (Jupyter), die sich auf Datenmanipulation und maschinelles Lernen konzentrieren.
Ein begleitendes Repository der ersten Ausgabe des Buches
Maschinelles Lernen mit Python (Repository für die zweite Ausgabe
hier ), in dem es darum geht, mit fehlenden Werten zu arbeiten, kategoriale Variablen in Formate zu konvertieren, die für maschinelles Lernen geeignet sind, informative Eigenschaften auszuwählen und Daten mit Übertragung in Teilräume mit weniger zu komprimieren Anzahl der Messungen.
Ein Repository mit Schulungsmaterialien, Code und Daten für verschiedene Datenanalyse- und maschinelle Lernprojekte. Notebook enthält alle Grundprinzipien für die Arbeit mit der Datenanalyse am Beispiel des
Iris- Datensatzes und veranschaulicht den Aufbau eines Workflows in der Datenwissenschaft. Die grundlegenden Punkte für die Arbeit in einem Repo sind dem Buch „
Die Elemente des Datenanalysestils “ (Jeff Leek, 2015) entnommen.
Eine Sammlung von Notizbüchern und Datensätzen zu vier algorithmischen Themen: lineare Regression, logistische Regression, zufällige Gesamtstrukturen und K-Means-Clustering-Algorithmen. Learn Data Science basiert auf Materialien, die für das
Open Data Science Training- Projekt erstellt wurden.
Das Repository enthält verschiedene IPython-Notizbücher - von einer Übersicht über die IPython-Sprache und -Funktionalität bis hin zu Beispielen für die Verwendung verschiedener gängiger Bibliotheken bei der Datenanalyse. Hier finden Sie eine umfassende Sammlung von Materialien für maschinelles Lernen, Deep Learning und Big Data-Verarbeitung aus den Kursen für maschinelles Lernen von Andrew Ng (Coursera), Einführung in TensorFlow für Deep Learning (Udacity) und Spark (edX).
Ein Repository zum Erlernen der
Scikit-Lernbibliothek , das eine große Anzahl von Algorithmen für maschinelles Lernen implementiert. Die Bibliothek bietet eine Implementierung einer Reihe von Algorithmen zum Lernen mit oder ohne Lehrer. Scikit-learn basiert auf
SciPy (Scientific Python).
Eine Reihe sehr detaillierter IPython Notebook-Tutorials, die auf Daten aus
dem Andrew Nga-
Kurs für maschinelles Lernen (Stanford University), dem Tom Mitchell-
Kurs (Carnegie Mellon University) und Christopher M. Bishors Buch Pattern Recognition and Machine Learning basieren.
Die Liste ist nicht vollständig, daher freuen wir uns über Kommentare mit einer Liste Ihrer bevorzugten (oder Ihrer eigenen) Repositories.