Open-Source-Tools für maschinelles Lernen

Inhalt

Überblick

  • Wir präsentieren 21 Open-Source-Tools für maschinelles Lernen, die Sie vielleicht noch nicht kennen
  • Jedes Open-Source-Tool hier fügt dem Repertoire eines Data Scientists einen anderen Aspekt hinzu
  • Unser Fokus liegt vor allem auf Tools für fünf Aspekte des maschinellen Lernens: für Nicht-Programmierer (Ludwig, Orange, MESSER), Modellimplementierung (CoreML, Tensorflow.js), Big Data (Hadoop, Funke), Computer Vision(Einfacher Lebenslauf), PNL(StanfordNLP), Audio und verstärktes Lernen (OpenAI Gym)

Einführung

Ich liebe Open Source maschinelles Lernen Gemeinschaft. Der größte Teil meines Lernens als aufstrebender und später als etablierter Datenwissenschaftler kam von Open-Source-Tools und -Ressourcen.

Wenn Sie die Schönheit von Open-Source-Tools im maschinellen Lernen noch nicht erkannt haben, Er vermisst es! Die Open-Source-Community ist riesig und hat eine unglaublich unterstützende Haltung gegenüber neuen Tools und der Übernahme des Demokratisierungskonzepts des maschinellen Lernens..

Open-Source-9452207

Sie sollten bereits bekannte Open-Source-Tools wie R . kennen, Python, Jupyter-Notizbücher, etc. Aber es gibt eine Welt jenseits dieser beliebten Tools: ein Ort, an dem es versteckte Werkzeuge für maschinelles Lernen gibt. Diese sind nicht so herausragend wie ihre Gegenstücke, aber sie können vielen Aufgaben des maschinellen Lernens das Leben retten.

In diesem Artikel, wir werden sehen 21 dieser Open-Source-Tools für maschinelles Lernen. Ich empfehle Ihnen dringend, sich die Zeit zu nehmen, jede der von mir erwähnten Kategorien zu analysieren.. Es gibt VIEL zu lernen, über das hinaus, was wir normalerweise in Kursen und Videos lernen.

Beachten Sie, dass viele davon Bibliotheken sind / Python-basierte Tools, denn seien wir ehrlich: Python ist eine so vielseitige Programmiersprache wie nur möglich!!

Wir haben die Open-Source-Tools für maschinelles Lernen unterteilt in 5 Kategorien:

  1. Open-Source-Tools für maschinelles Lernen für Nicht-Programmierer
  2. Implementierung des Machine-Learning-Modells
  3. Big-Data-Open-Source-Tools
  4. Computer Vision, NLP und Audio
  5. Verstärktes Lernen

1. Open-Source-Tools für maschinelles Lernen für Nicht-Programmierer

Maschinelles Lernen kann Menschen ohne technische oder Programmierkenntnisse komplex erscheinen. Es ist ein weites Feld und ich kann mir vorstellen, wie entmutigend dieser erste Schritt sein kann.. Kann eine Person ohne Programmiererfahrung im maschinellen Lernen erfolgreich sein??

Nun, es stellt sich heraus, dass Sie es können! Hier sind einige Tools, die Ihnen helfen können, den Abgrund zu überwinden und in die berühmte Welt des maschinellen Lernens einzusteigen.:

  • Uber Ludwig: Ubers Ludwig ist eine Toolbox, die auf TensorFlow basiert. Mit Ludwig können wir Deep-Learning-Modelle trainieren und testen, ohne Code schreiben zu müssen. Sie müssen lediglich eine CSV-Datei mit Ihren Daten bereitstellen, eine Liste von Spalten zur Verwendung als Eingaben und eine Liste von Spalten zur Verwendung als Ausgaben; Ludwig erledigt den Rest. Es ist sehr nützlich zum Experimentieren, da Sie mit sehr geringem Aufwand und in kurzer Zeit komplexe Modelle bauen können, und Sie können es ändern und damit herumspielen, bevor Sie sich entscheiden, es in Code zu implementieren.

  • MESSER: Mit KNIME können Sie komplette Data-Science-Workflows über eine Drag-and-Drop-Oberfläche erstellen. Grundsätzlich, kann alles umsetzen, vom Feature-Engineering über die Feature-Auswahl bis hin zum Hinzufügen von Predictive Machine Learning-Modellen zu Ihrem Workflow auf diese Weise. Dieser Ansatz zur visuellen Umsetzung Ihres gesamten Modellworkflows ist sehr intuitiv und kann bei der Arbeit an komplexen Problemstellungen sehr hilfreich sein..

Messer-2195248

  • Orange: Sie müssen nicht wissen, wie man codiert, um Orange zum Extrahieren von Daten verwenden zu können, Nummern bearbeiten und Informationen einholen. Kann Aufgaben von der einfachen Visualisierung bis zur Manipulation ausführen, Transformation und Data Mining. Orange ist in letzter Zeit bei Schülern und Lehrern aufgrund seiner Benutzerfreundlichkeit und der Möglichkeit, mehrere Plugins hinzuzufügen, um seinen Funktionsumfang zu ergänzen, beliebt geworden..

Es gibt viel interessantere kostenlose und Open-Source-Software, die eine hervorragende Zugänglichkeit für maschinelles Lernen ohne Tippen bietet (viel) Code.

Auf der anderen Seite der Medaille, Es gibt einige vorkonfigurierte kostenpflichtige Dienste, die Sie in Betracht ziehen können, Was Google AutoML, Azure-Studie, Tiefe Erkenntnis, Ja Datenroboter.

2. Open-Source-Tools für maschinelles Lernen für die Modellbereitstellung

Die Implementierung von Modellen für maschinelles Lernen ist eine der am meisten vernachlässigten, aber wichtigen Aufgaben, die Sie berücksichtigen müssen. Es wird mit ziemlicher Sicherheit in Interviews auftauchen, damit kennst du dich vielleicht gut aus.

Hier sind einige Frameworks, die es einfach machen, dieses Lieblingsprojekt auf einem realen Gerät zu implementieren.

  • MLFlow: MLFlow wurde entwickelt, um mit jedem Algorithmus oder jeder Bibliothek für maschinelles Lernen zu arbeiten und den gesamten Lebenszyklus zu verwalten, inklusive experimentieren, Reproduzierbarkeit und Implementierung von Machine-Learning-Modellen. MLFlow befindet sich derzeit in der Alpha-Phase und hat 3 Komponenten: nachverfolgen, Projekte und Modelle.

mlflow-1-768x384-5879323

  • CoreML von Apple: CoreML ist ein beliebtes Framework, mit dem Sie Modelle für maschinelles Lernen in Ihre iOS-Anwendung integrieren können. / Apple-Uhr / Apple TV / Mac OS. Das Beste an CoreML ist, dass keine umfassenden Kenntnisse über neuronale Netze oder maschinelles Lernen erforderlich sind. Eine Win-Win-Situation!

apple-core-ml-1771328

  • TensorFlow Lite: TensorFlow Lite ist eine Reihe von Tools, mit denen Entwickler TensorFlow-Modelle auf Mobilgeräten ausführen können (Android und iOS), integriert und IoT. Es wurde entwickelt, um maschinelles Lernen auf Geräten zu vereinfachen, “an der Grenze” des Netzwerks, anstatt Daten von einem Server zu senden und zu empfangen.
  • TensorFlow.js – TensorFlow.js ist möglicherweise Ihre bevorzugte Option für die Implementierung Ihres Modells für maschinelles Lernen im Web. Es handelt sich um eine Open-Source-Bibliothek, mit der Sie Machine-Learning-Modelle in Ihrem Browser erstellen und trainieren können.. Es ist mit GPU-Beschleunigung verfügbar und unterstützt auch automatisch WebGL. Sie können vorhandene vortrainierte Modelle importieren und auch vorhandene vollständige Machine-Learning-Modelle im Browser selbst neu trainieren!!

tensorflow_diagram1-2006607

3. Open-Source-Tools für maschinelles Lernen für Big Data

Big Data ist ein Feld, das sich mit Analysemethoden beschäftigt, Informationen systematisch extrahieren oder, anders, Umgang mit Datensätzen, die zu groß oder zu komplex sind, um von herkömmlicher Datenverarbeitungsanwendungssoftware verarbeitet zu werden. Stellen Sie sich vor, Sie verarbeiten Millionen von Tweets an einem Tag für die Stimmungsanalyse. Das fühlt sich wie eine riesige Aufgabe an., Es ist nicht so?

Mach dir keine Sorgen! Dann, Einige Tools sind enthalten, die Ihnen bei der Arbeit mit Big Data helfen können.

  • Hadoop: Eines der bekanntesten und relevantesten Tools für die Arbeit mit Big Data ist das Hadoop-Projekt. Hadoop ist ein Framework, das die verteilte Verarbeitung großer Datensätze über Computergruppen hinweg mit einfachen Programmiermodellen ermöglicht.. Es wurde entwickelt, um von einzelnen Servern auf Tausende von Maschinen zu skalieren, jeweils mit lokalem Computing und Speicher.

hadoopstack-3126982

  • Funke – Funke: Apache Spark gilt als natürlicher Nachfolger von Hadoop für Big-Data-Anwendungen. Der Kernpunkt dieses Open-Source-Big-Data-Tools ist, dass es die Lücken in Apache Hadoop in Bezug auf die Datenverarbeitung schließt. neugierig, Spark kann sowohl Batchdaten als auch Echtzeitdaten verarbeiten.
  • Neo4j: Hadoop ist möglicherweise nicht für alle Big-Data-Probleme eine gute Wahl. Zum Beispiel, wenn Sie mit einer großen Menge an Netzwerkdaten oder grafikbezogenen Problemen umgehen müssen, wie soziale Medien oder demografische Muster, eine Grafikdatenbank kann die perfekte Wahl sein.

microsoft-concept-graph-neo4j-6680172

4. Open-Source-Tools für maschinelles Lernen für Machine Vision, NLP und Audio

“Wenn wir wollen, dass Maschinen denken, Wir müssen ihnen das Sehen beibringen”.

– DR. Fei-Fei Li über Machine Vision

  • Einfacher Lebenslauf: Sie müssen OpenCV verwendet haben, wenn Sie an Computer-Vision-Projekten gearbeitet haben. Aber, Sind Sie schon einmal auf SimpleCV . gestoßen?? SimpleCV bietet Ihnen Zugriff auf mehrere leistungsstarke Computer Vision-Bibliotheken, als OpenCV, ohne erst etwas über Bittiefen lernen zu müssen, Dateiformate, Farbräume, Pufferverwaltung, Eigenwerte oder Array-Speicher im Vergleich zu Bitmap. Das ist vereinfachte Computer Vision.

screenshot-from-2019-07-09-11-35-28-1023585

  • Tesseract-OCR: Haben Sie schon kreative Apps verwendet, mit denen Sie Dokumente scannen oder Rechnungen mit Ihrer Smartphone-Kamera kaufen oder Geld auf Ihr Bankkonto einzahlen können, indem Sie einfach ein Scheckfoto machen?? Alle diese Anwendungen verwenden eine sogenannte OCR- oder Optical Character Recognition-Software.. Tesseract ist eine dieser OCR-Engines, die die Fähigkeit hat, mehr von 100 Sprachen Außerhalb der Box. Sie können auch lernen, andere Sprachen zu erkennen.
  • Detektor: Detectron ist das Softwaresystem von Facebook AI Research, das modernste Objekterkennungsalgorithmen implementiert, einschließlich Mascara R-CNN. Es ist in Python geschrieben und funktioniert mit Kaffee2 Deep-Learning-Framework.

33823288584_1d21cf0a26_k_example_output-6359967

  • StanfordNLP: StanfordNLP ist ein Python-Parsing-Paket für natürliche Sprache. Das Beste an dieser Bibliothek ist, dass sie mehr unterstützt als 70 menschliche Sprachen! Enthält Tools, die in einer Pipeline verwendet werden können, um
    • Konvertieren einer Zeichenfolge, die Text in menschlicher Sprache enthält, in Satz- und Wortlisten
    • Generiere Grundformen dieser Wörter, seine Wortarten und morphologischen Merkmale, Ja
    • Geben Sie eine syntaktische Strukturabhängigkeitsanalyse an

stanfordnlp-1486939

  • BERT als Dienstleistung: Alle NLP-Enthusiasten werden schon von BERT gehört haben, Die innovative NLP-Architektur von Google, aber sie haben dieses Projekt wahrscheinlich nicht als nützlich empfunden. Bert-as-a-Service verwendet BERT als Satzcodierer und hostet es als Service über ZeroMQ, So können Sie Sätze in nur zwei Codezeilen auf Repräsentationen fester Länge abbilden.
  • Google Magenta: Diese Bibliothek bietet Dienstprogramme zum Bearbeiten von Quelldaten (hauptsächlich Musik und Bilder), Verwenden Sie diese Daten, um Modelle für maschinelles Lernen zu trainieren und, Schließlich, aus diesen Modellen neue Inhalte generieren.

  • Buch: LibROSA ist ein Python-Paket zur Audio- und Musikanalyse. Bietet die grundlegenden Komponenten, die zum Erstellen von Systemen zum Abrufen von Musikinformationen erforderlich sind. Es wird häufig bei der Vorverarbeitung von Audiosignalen verwendet, wenn an Anwendungen wie der Konvertierung von Sprache in Text mit Deep Learning gearbeitet wird., etc.

Open-Source-Tools für Reinforcement Learning

RL ist das neue Gesprächsthema, wenn es um maschinelles Lernen geht. Das Ziel des Reinforcement Learning (RL) ist es, intelligente Agenten auszubilden, die mit ihrer Umgebung interagieren und komplexe Aufgaben lösen können, mit realen Anwendungen in der Robotik, autonome Autos und mehr.

Der schnelle Fortschritt in diesem Bereich wurde dadurch gefördert, dass Agenten Spiele wie die ikonischen Atari-Konsolenspiele spielen., das alte Spiel von Go, oder professionell gespielte Videospiele wie Dota 2 o Starcraft 2, All dies bietet herausfordernde Umgebungen, in denen neue Algorithmen und Ideen schnell auf sichere und reproduzierbare Weise getestet werden können. Dies sind einige der nützlichsten Trainingsumgebungen für RL:

  • Google Research Fußball: Google Research Football Environment ist eine neuartige RL-Umgebung, in der Agenten versuchen, den beliebtesten Sport der Welt zu dominieren: Fußball. Diese Umgebung gibt Ihnen viel Kontrolle, um Ihre RL-Agenten zu schulen, Sehen Sie sich das Video an, um mehr zu erfahren:

  • OpenAI Gym: Gym ist eine Reihe von Tools zum Entwickeln und Vergleichen von Reinforcement-Learning-Algorithmen. Unterstützt die Ausbildung von Agenten rund um, vom Laufen bis hin zum Spielen von Spielen wie Pong oder Flipper. Im folgenden gif, Sie werden einen Agenten sehen, der laufen lernt.

Bild2-3801691

  • Unity AA-Agenten: Das Unity Machine Learning Agent-Toolkit (ML-Agenten) ist ein Open-Source-Unity-Plugin, mit dem Spiele und Simulationen als Umgebungen für das intelligente Agententraining dienen können. Agenten können durch Reinforcement Learning trainiert werden, Lernen durch Nachahmung, Neuroevolution oder andere maschinelle Lernmethoden über eine benutzerfreundliche Python-API.

Bild2-2-3227149

  • Malmö-Projekt: Die Malmö-Plattform ist eine hochentwickelte Experimentierplattform für künstliche Intelligenz, die auf Minecraft basiert und die Grundlagenforschung im Bereich der künstlichen Intelligenz unterstützt.. Es wird von Microsoft entwickelt.

Abschließende Anmerkungen

Wie aus dem vorherigen Toolset ersichtlich gewesen sein muss, Open Source ist der richtige Weg, wenn wir Projekte im Zusammenhang mit Data Science und künstlicher Intelligenz betrachten. Ich habe wahrscheinlich nur die Spitze des Eisbergs abgekratzt, Doch für die unterschiedlichsten Aufgaben stehen Ihnen zahlreiche Tools zur Verfügung, die Ihnen das Leben als Data Scientist leichter machen., du musst nur wissen wo du suchen musst.

In diesem Artikel, wir haben abgedeckt 5 coole Bereiche der Data Science niemand spricht viel über No-Code ML, ML-Implementierung, Große Daten, Vision / NLP / Klang- und Verstärkungslernen. Persönlich, ich denke das bist du 5 Bereiche haben die größte Wirkung, wenn der reale Wert von KI berücksichtigt wird.

Welche Tools hätten Ihrer Meinung nach auf dieser Liste stehen sollen?? Schreiben Sie unten Ihre Favoriten, um die Community darüber zu informieren!!

Abonniere unseren Newsletter

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