Künstliche Intelligenz erfreut sich seit 2016 wachsender Beliebtheit, da 20% der großen Unternehmen KI in ihren Unternehmen einsetzen (McKinsey-Bericht, 2018). Laut demselben Bericht kann KI branchenübergreifend einen erheblichen Mehrwert schaffen. Im Bankwesen beispielsweise wird das Potenzial von KI auf 300 Milliarden US-Dollar geschätzt, im Einzelhandel steigt die Zahl auf 600 Milliarden US- Dollar.
Um den potenziellen Wert von KI auszuschöpfen, müssen Unternehmen das richtige Deep-Learning-Framework auswählen. In diesem Tutorial lernen Sie die verschiedenen Bibliotheken kennen, die für Deep-Learning-Aufgaben zur Verfügung stehen. Einige Bibliotheken gibt es schon seit Jahren, während in den letzten Jahren neue Bibliotheken wie TensorFlow ans Licht gekommen sind.
8 Best Deep Learning Libraries / Framework
In dieser Liste werden wir die Top-Deep-Learning-Frameworks vergleichen. Alle von ihnen sind Open Source und in der Community der Datenwissenschaftler beliebt. Wir werden auch beliebte ML als Dienstleister vergleichen
Fackel
Torch ist eine alte Open-Source-Bibliothek für maschinelles Lernen. Es wurde erstmals vor 15 Jahren veröffentlicht. Die primäre Programmiersprache ist LUA, hat jedoch eine Implementierung in C. Im Vergleich zu PyTorch und TensorFlow unterstützt es eine umfangreiche Bibliothek für Algorithmen für maschinelles Lernen, einschließlich Deep Learning. Es unterstützt die CUDA-Implementierung für die parallele Berechnung.
Das Torch Deep Learning Tool wird von den meisten führenden Labors wie Facebook, Google, Twitter, Nvidia usw. verwendet. Torch hat eine Bibliothek mit Python-Namen Pytorch.
Infer.net
Infer.net wird von Microsoft entwickelt und gepflegt. Infer.net ist eine Bibliothek mit einem Schwerpunkt auf der Bayes'schen Statistik. Infer.net ist ein Visualisierungstool für Deep Learning, das Praktikern modernste Algorithmen für die probabilistische Modellierung bietet. Die Bibliothek enthält Analysewerkzeuge wie Bayes'sche Analyse, versteckte Markov-Kette und Clustering.
Keras
Keras ist ein Python-Framework für Deep Learning. Es ist eine praktische Bibliothek, um einen Deep-Learning-Algorithmus zu erstellen. Der Vorteil von Keras ist, dass es denselben Python-Code verwendet, um auf einer CPU oder GPU ausgeführt zu werden. Außerdem ist die Codierungsumgebung rein und ermöglicht das Trainieren modernster Algorithmen für Computer Vision, unter anderem für die Texterkennung.
Keras wurde von François Chollet, einem Forscher bei Google, entwickelt. Keras wird in bekannten Organisationen wie CERN, Yelp, Square oder Google, Netflix und Uber verwendet.
Theano
Theano ist eine Deep-Learning-Bibliothek, die 2007 von der Université de Montréal entwickelt wurde. Im Vergleich zu Theano und TensorFlow bietet sie eine schnelle Berechnung und kann sowohl auf der CPU als auch auf der GPU ausgeführt werden. Theano wurde entwickelt, um Algorithmen für tiefe neuronale Netze zu trainieren.
Microsoft Cognitive Toolkit (CNTK)
Das Microsoft Toolkit, früher bekannt als CNTK, ist eine von Microsoft entwickelte Deep-Learning-Bibliothek. Laut Microsoft gehört die Bibliothek zu den schnellsten auf dem Markt. Microsoft Toolkit ist eine Open-Source-Bibliothek, obwohl Microsoft sie in großem Umfang für Produkte wie Skype, Cortana, Bing und Xbox verwendet. Das Toolkit ist sowohl in Python als auch in C ++ verfügbar.
MXNet
MXnet ist eine aktuelle Deep-Learning-Bibliothek. Der Zugriff erfolgt mit mehreren Programmiersprachen, einschließlich C ++, Julia, Python und R. MXNet kann so konfiguriert werden, dass es sowohl auf der CPU als auch auf der GPU funktioniert. MXNet umfasst eine hochmoderne Deep-Learning-Architektur wie das Convolutional Neural Network und das Long Short-Term Memory. MXNet wurde entwickelt, um im Einklang mit der dynamischen Cloud-Infrastruktur zu arbeiten. Der Hauptnutzer von MXNet ist Amazon
Caffe
Caffe ist eine Bibliothek, die Yangqing Jia als Doktorand in Berkeley gebaut hat. Im Vergleich von Caffe mit TensorFlow ist Caffe in C ++ geschrieben und kann Berechnungen sowohl auf der CPU als auch auf der GPU durchführen. Die Hauptanwendung von Caffe ist das Convolutional Neural Network. Obwohl Facebook Caffe 2017 um eine tiefere Lernarchitektur erweitert hat, einschließlich des Recurrent Neural Network. Caffe wird von Akademikern und Startups verwendet, aber auch von einigen großen Unternehmen wie Yahoo!
TensorFlow
TensorFlow ist ein Open Source-Projekt von Google. TensorFlow ist heutzutage die bekannteste Deep-Learning-Bibliothek. Es wurde Ende 2015 der Öffentlichkeit zugänglich gemacht
TensorFlow wurde in C ++ entwickelt und verfügt über eine praktische Python-API, obwohl auch C ++ - APIs verfügbar sind. Prominente Unternehmen wie Airbus, Google, IBM usw. verwenden TensorFlow, um Deep-Learning-Algorithmen zu erstellen.
TensorFlow gegen Theano gegen Torch gegen Keras gegen infer.net gegen CNTK gegen MXNet gegen Caffe: Hauptunterschiede
Bibliothek | Plattform | Geschrieben in | Cuda-Unterstützung | Parallele Ausführung | Hat Modelle trainiert | RNN | CNN |
---|---|---|---|---|---|---|---|
Fackel | Linux, MacOS, Windows | Lua | Ja | Ja | Ja | Ja | Ja |
Infer.Net | Linux, MacOS, Windows | Visual Studio | Nein | Nein | Nein | Nein | Nein |
Keras | Linux, MacOS, Windows | Python | Ja | Ja | Ja | Ja | Ja |
Theano | Plattformübergreifend | Python | Ja | Ja | Ja | Ja | Ja |
TensorFlow | Linux, MacOS, Windows, Android | C ++, Python, CUDA | Ja | Ja | Ja | Ja | Ja |
MICROSOFT COGNITIVE TOOLKIT | Linux, Windows, Mac mit Docker | C ++ | Ja | Ja | Ja | Ja | Ja |
Caffe | Linux, MacOS, Windows | C ++ | Ja | Ja | Ja | Ja | Ja |
MXNet | Linux, Windows, MacOs, Android, iOS, Javascript | C ++ | Ja | Ja | Ja | Ja | Ja |
Urteil:
TensorFlow ist die beste Bibliothek von allen, da sie für jedermann zugänglich ist. Die Tensorflow-Bibliothek enthält verschiedene APIs für eine maßstabsgetreue Deep-Learning-Architektur wie CNN oder RNN. TensorFlow basiert auf der Berechnung von Graphen und ermöglicht es dem Entwickler, den Aufbau des neuronalen Netzwerks mit Tensorboad zu visualisieren. Dieses Tool ist hilfreich, um das Programm zu debuggen. Schließlich ist Tensorflow so konzipiert, dass es in großem Maßstab eingesetzt werden kann. Es läuft auf CPU und GPU.
Tensorflow erfreut sich bei GitHub im Vergleich zu anderen Deep-Learning-Bibliotheken der größten Beliebtheit.
Vergleich von maschinellem Lernen als Dienstleistung
Es folgen 4 beliebte DL als Dienstleister
Google Cloud ML
Google stellt vorentwickelte Entwicklermodelle zur Verfügung, die in Cloud AutoML verfügbar sind. Diese Lösung gibt es für Entwickler ohne fundierten Hintergrund im maschinellen Lernen. Entwickler können für ihre Daten das vorgefertigte Google-Modell auf dem neuesten Stand der Technik verwenden. Entwickler können damit jedes Modell in nur wenigen Minuten trainieren und bewerten.
Google bietet derzeit eine REST-API für Computer Vision, Spracherkennung, Übersetzung und NLP.
Mit Google Cloud können Sie ein Framework für maschinelles Lernen trainieren, das auf TensorFlow, Scikit-learn, XGBoost oder Keras basiert. Durch maschinelles Lernen in Google Cloud werden die Modelle in der gesamten Cloud trainiert.
Der Vorteil der Verwendung von Google Cloud Computing besteht in der einfachen Bereitstellung von maschinellem Lernen in der Produktion. Es ist nicht erforderlich, den Docker-Container einzurichten. Außerdem kümmert sich die Cloud um die Infrastruktur. Es weiß, wie Ressourcen mit CPUs, GPUs und TPUs zugewiesen werden. Es beschleunigt das Training mit paralleler Berechnung.
AWS SageMaker
Ein Hauptkonkurrent von Google Cloud ist die Amazon Cloud AWS. Amazon hat Amazon SageMaker entwickelt, damit Datenwissenschaftler und Entwickler alle Modelle des maschinellen Lernens erstellen, trainieren und in Produktion bringen können.
SageMaker ist in einem Jupyter-Notizbuch verfügbar und enthält unter anderem die am häufigsten verwendete Bibliothek für maschinelles Lernen, TensorFlow, MXNet und Scikit-learn. Mit SageMaker geschriebene Programme werden automatisch in den Docker-Containern ausgeführt. Amazon übernimmt die Ressourcenzuweisung, um das Training und die Bereitstellung zu optimieren.
Amazon stellt den Entwicklern APIs zur Verfügung, um ihren Anwendungen Informationen hinzuzufügen. In einigen Fällen ist es nicht erforderlich, das Rad neu zu erfinden, indem neue Modelle von Grund auf neu erstellt werden, während es in der Cloud leistungsstarke vorab trainierte Modelle gibt. Amazon bietet API-Dienste für Computer Vision, Konversations-Chatbots und Sprachdienste an:
Die drei wichtigsten verfügbaren APIs sind:
- Amazon Rekognition: Bietet Bild- und Videoerkennung für eine App
- Amazon Comprehend: Führen Sie Text Mining und die Verarbeitung neuronaler Sprachen durch, um beispielsweise den Prozess der Überprüfung der Rechtmäßigkeit von Finanzdokumenten zu automatisieren
- Amazon Lex: Fügen Sie einer App einen Chatbot hinzu
Azure Machine Learning Studio
Wahrscheinlich ist Azure Machine Learning Studio einer der freundlichsten Ansätze für maschinelles Lernen. Der wesentliche Vorteil dieser Lösung besteht darin, dass keine Programmierkenntnisse erforderlich sind.
Microsoft Azure Machine Learning Studio ist ein Drag-and-Drop-Tool für die Zusammenarbeit zum Erstellen, Trainieren, Bewerten und Bereitstellen von Lösungen für maschinelles Lernen. Das Modell kann effizient als Webdienst bereitgestellt und in mehreren Apps wie Excel verwendet werden.
Die Benutzeroberfläche von Azure Machine Learning ist interaktiv und ermöglicht dem Benutzer das Erstellen eines Modells durch schnelles Ziehen und Ablegen von Elementen.
Wenn das Modell fertig ist, kann der Entwickler es speichern und in die Azure-Galerie oder den Azure-Marktplatz verschieben.
Azure Machine Learning kann in R oder Python integriert werden.
IBM Watson ML
Watson Studio kann die Datenprojekte mit einem optimierten Prozess vereinfachen, der es ermöglicht, Werte und Erkenntnisse aus den Daten zu extrahieren, damit das Unternehmen intelligenter und schneller wird. Watson Studio bietet eine benutzerfreundliche Umgebung für kollaborative Datenwissenschaft und maschinelles Lernen zum Erstellen und Trainieren von Modellen, Vorbereiten und Analysieren von Daten sowie zum Austausch von Erkenntnissen an einem Ort. Watson Studio ist einfach mit einem Drag-and-Drop-Code zu verwenden.
Watson Studio unterstützt einige der beliebtesten Frameworks wie Tensorflow, Keras, Pytorch und Caffe und kann einen Deep-Learning-Algorithmus auf den neuesten GPUs von Nvidia implementieren, um die Modellierung zu beschleunigen.
Urteil:
Aus unserer Sicht ist die Google Cloud-Lösung die am meisten empfohlene. Die Google Cloud-Lösung bietet dem AWS niedrigere Preise für Datenspeicherung und maschinelles Lernen um mindestens 30%. Google leistet hervorragende Arbeit bei der Demokratisierung der KI. Das Unternehmen hat eine Open-Source-Sprache entwickelt. TensorFlow, eine optimierte Data-Warehouse-Verbindung, bietet hervorragende Tools von der Datenvisualisierung über die Datenanalyse bis hin zum maschinellen Lernen. Außerdem ist Google Console ergonomisch und viel umfassender als AWS oder Windows.