Datenwissenschaft

Top 10 Bibliotheken für maschinelles Lernen für Python

Top 10 Bibliotheken für maschinelles Lernen für Python

Was möchtest du erstellen? Die wichtige Frage!

Sie sind hier, um Machine Learning (ML) zu verwenden . Hast du dir gut überlegt wofür? Wenn Sie sich für eine Machine Learning-Bibliothek entscheiden, müssen Sie damit beginnen, wie Sie sie verwenden möchten. Auch wenn Sie nur am Lernen interessiert sind, sollten Sie sich überlegen, wo Machine Learning eingesetzt wird und was Ihrem Hauptinteresse am nächsten kommt. Sie sollten auch überlegen, ob Sie sich darauf konzentrieren möchten, etwas auf Ihrem lokalen Computer zum Laufen zu bringen, oder ob Sie daran interessiert sind, Ihr Computing auf viele Server zu verteilen.

Beginnen Sie am Anfang damit, dass etwas funktioniert.

Wo maschinelles Lernen eingesetzt wird

Sie können viele Projekte finden, die ML verwenden, tatsächlich so viele, dass jede Kategorie Seiten lang ist. Die Kurzfassung ist 'überall', das stimmt nicht, aber man wundert sich. Die offensichtlichen sind Empfehlungs-Engines, Bilderkennung und Spam-Erkennung. Da du bereits in Python programmierst, wird dich auch die Code Completion Software The Kite interessieren. Dies ist Andere Verwendungen dienen der Erkennung von Fehlern bei der manuellen Dateneingabe, medizinischen Diagnose und Wartung für große Fabriken und andere Branchen

Die Bibliotheken in Kürze:

  1. Scikit-Lernen, Von Scikit; Routinen und Bibliotheken auf NumPy, SciPy und Matplotlib. Diese Bibliothek stützt sich direkt auf Routinen der in Python nativen mathematischen Bibliotheken. Sie installieren scikit-learn mit Ihrem regulären Python-Paketmanager. Scikit-learn ist klein und unterstützt keine GPU-Berechnungen. Dies kann Sie abschrecken, aber es ist eine bewusste Entscheidung. Dieses Paket ist kleiner und einfacher zu starten. Es funktioniert in größeren Kontexten immer noch ziemlich gut, aber um einen riesigen Berechnungscluster zu erstellen, benötigen Sie andere Pakete other.
  2. Scikit-Bild Speziell für Bilder! Scikit-image verfügt über Algorithmen zur Bildanalyse und -manipulation. Sie können damit beschädigte Bilder reparieren sowie Farbe und andere Attribute des Bildes manipulieren. Die Hauptidee dieses Pakets besteht darin, NumPy alle Bilder zur Verfügung zu stellen, damit Sie sie als ndarrays bearbeiten können. Auf diese Weise stehen Ihnen die Bilder als Daten zum Ausführen beliebiger Algorithmen zur Verfügung.
  3. Shogun: C++-Basis mit klaren API-Schnittstellen zu Python, Java, Scala etc. Viele, vielleicht die meisten Algorithmen, die zum Experimentieren verfügbar sind. Dieses ist aus Effizienzgründen in C++ geschrieben, es gibt auch eine Möglichkeit, es in der Cloud auszuprobieren. Shogun verwendet SWIG als Schnittstelle zu vielen Programmiersprachen, einschließlich Python. Shogun deckt die meisten Algorithmen ab und wird in der akademischen Welt ausgiebig verwendet. Das Paket verfügt über eine Toolbox, die unter https://www . verfügbar ist.Shogun-Werkzeugkasten.org.
  4. Funken MLlib: Ist hauptsächlich für Java, ist aber über die NumPy-Bibliothek für Python-Entwickler verfügbar. Die Spark MLlib wurde vom Apache-Team entwickelt, richtet sich also an verteilte Computerumgebungen und muss mit Master und Workern ausgeführt werden. Sie können dies im Standalone-Modus tun, aber die wahre Stärke von Spark ist die Möglichkeit, die Jobs auf viele Maschinen zu verteilen. Die verteilte Natur von Spark macht es bei vielen großen Unternehmen wie IBM, Amazon und Netflix beliebt. Der Hauptzweck besteht darin, „Big Data“ abzubauen, d. h. all die Brotkrümel, die Sie beim Surfen und Online-Shopping hinterlassen. Wenn Sie mit Machine Learning arbeiten möchten, ist Spark MLlib ein guter Ausgangspunkt. Die unterstützten Algorithmen sind über die gesamte Bandbreite verteilt. Wenn Sie ein Hobbyprojekt starten, ist dies möglicherweise nicht die beste Idee.
  5. H2O: Ist auf Geschäftsprozesse ausgerichtet und unterstützt daher Vorhersagen für Empfehlungen und Betrugsprävention. Das Geschäft, H20.ai zielt darauf ab, Datensätze aus verteilten Dateisystemen zu finden und zu analysieren. Sie können es auf den meisten herkömmlichen Betriebssystemen ausführen, aber der Hauptzweck besteht darin, Cloud-basierte Systeme zu unterstützen. Es enthält die meisten statistischen Algorithmen und kann daher für die meisten Projekte verwendet werden.
  6. Mahout: Ist für verteilte Machine-Learning-Algorithmen konzipiert. Es ist aufgrund der verteilten Natur der Berechnungen Teil von Apache. Die Idee hinter Mahout ist, dass Mathematiker ihre eigenen Algorithmen implementieren. Dies ist nichts für Anfänger, wenn Sie nur lernen, verwenden Sie besser etwas anderes. Abgesehen davon kann Mahout mit vielen Back-Ends verbunden werden. Wenn Sie also etwas erstellt haben, schauen Sie, ob Sie Mahout für Ihr Frontend verwenden möchten.
  7. Cloudera Oryx: Wird hauptsächlich für maschinelles Lernen mit Echtzeitdaten verwendet. Oryx 2 ist eine Architektur, die die gesamte Arbeit schichtet, um ein System zu schaffen, das auf Echtzeitdaten reagieren kann. Die Layer arbeiten auch in verschiedenen Zeitrahmen, mit einem Batch-Layer, der das Basismodell erstellt, und einem Speed-Layer, der das Modell ändert, wenn neue Daten eintreffen. Oryx baut auf Apache Spark auf und erstellt eine komplette Architektur, die alle Teile einer Anwendung implementiert.
  8. Theano: Theano ist eine Python-Bibliothek, die in NumPy integriert ist. Dies ist Python am nächsten, das Sie bekommen können. Wenn Sie Theano verwenden, wird empfohlen, gcc installiert zu haben. Der Grund dafür ist, dass Theano Ihren Code in den am besten geeigneten Code kompilieren kann. Während Python großartig ist, ist C in einigen Fällen schneller. Theano kann also in C konvertieren und kompilieren, wodurch Ihr Programm schneller läuft. Optional können Sie GPU-Unterstützung hinzufügen.
  9. Tensorflow: Der Tensor im Namen zeigt auf einen mathematischen Tensor. Ein solcher Tensor hat 'n' Stellen in einer Matrix, ein Tensor ist jedoch ein mehrdimensionales Array. TensorFlow hat Algorithmen, um Berechnungen für Tensoren durchzuführen, daher der Name, Sie können diese von Python aus aufrufen call. Es ist in C und C++ gebaut, hat aber ein Frontend für Python. Dies macht es einfach zu bedienen und schnell zu laufen. Tensorflow kann auf CPU, GPU oder über Netzwerke verteilt ausgeführt werden. Dies wird durch eine Ausführungs-Engine erreicht, die als Schicht zwischen Ihrem Code und dem Prozessor fungiert.
  10. Matplotlib: Wenn Sie ein Problem haben, das Sie mit Machine Learning lösen können, möchten Sie wahrscheinlich Ihre Ergebnisse visualisieren. Hier kommt matplotlib ins Spiel. Es wurde entwickelt, um Werte von mathematischen Diagrammen anzuzeigen und wird in der akademischen Welt häufig verwendet.

FAZIT

Dieser Artikel hat Ihnen eine Vorstellung davon gegeben, was in Machine Learning programmiert werden kann. Um ein klares Bild davon zu bekommen, was Sie brauchen, müssen Sie zunächst ein paar Programme erstellen und sehen, wie sie funktionieren. Erst wenn Sie wissen, wie es geht, finden Sie die perfekte Lösung für Ihr nächstes Projekt.

Weisen Sie Ihre Maustasten mit der X-Mouse Button Control für verschiedene Software unterschiedlich zu
Vielleicht benötigen Sie ein Tool, mit dem sich die Steuerung Ihrer Maus bei jeder von Ihnen verwendeten Anwendung ändern kann. In diesem Fall können ...
Microsoft Sculpt Touch Wireless-Maus Bewertung
Ich habe vor kurzem gelesen, dass Microsoft Sculpt Touch kabellose Maus und beschloss, sie zu kaufen. Nachdem ich es eine Weile benutzt hatte, beschlo...
AppyMouse On-Screen Trackpad und Mauszeiger für Windows Tablets
Tablet-Benutzer vermissen oft den Mauszeiger, insbesondere wenn sie die Laptops gewohnt sind. Die Touchscreen-Smartphones und -Tablets bieten viele Vo...