Frameworks erleichtern den KI-Einstieg

Frameworks

von - 03.05.2019
Unternehmen, die erste Geh­versuche mit Künstlicher Intelligenz, maschinellem Lernen sowie neuronalen Netzen und Deep Learning starten wollen, steht eine breite Palette von Software-Paketen zur Verfügung - über die Cloud und On-Premise. Neben den proprietären Angeboten von AWS, Goo­gle, IBM und Microsoft gibt es viele auch kostenlos als Open Source. Wer sich auf maschinelles Lernen konzentrieren möchte, kann auf etablierte Frameworks wie scikit-learn oder SystemML zurückgreifen, das ursprünglich von IBM stammt, mittlerweile aber unter der Apache-Lizenz freigegeben wurde. Alternativen sind Apache Mahout und Microsofts Machine-Learning-Toolkit DMTK.
Komplexere KI-Anwendungen lassen sich mit Hilfe von Deep Learning (DL) und neuronalen Netzen erstellen. Die Mehrzahl der entsprechenden Frameworks basiert auf der Programmiersprache Python und ist ebenfalls als Open-Source-Software erhältlich. Allerdings plädieren Entwicklungsfirmen wie Skymind für Lösungen auf Basis von Java wie Deeplearning4j. Ein Grund dafür ist die höhere Performance, ein weiterer die weite Verbreitung von Java und Java Virtual Machine (JVM) in Unternehmen.
Unter den Deep-Learning-Frameworks auf Grundlage von Python bieten sich Klassiker wie TensorFlow und das ein­steigerfreundliche Keras an. Zu den neueren Paketen zählt Caffe2, ein schnelles und leichtgewichtiges Framework, das auch für große Produktivumgebungen tauglich ist.
Ebenfalls für große Datenbestände ausgelegt ist Microsofts Open-Source-Toolkit CNTK. Zu dessen Vorzügen gehören der hohe Optimierungsgrad der Komponenten, der geringe Ressourcenbedarf und die Performance. Abstriche müssen Nutzer beim Support machen: Er ist wegen der kleineren Community nicht so ausgeprägt wie bei einigen anderen Frameworks.

Komplettsysteme

Unternehmen sind für KI-Anwendungen aber nicht allein auf Public-Cloud-Ser­vices oder Frameworks angewiesen. Eine, allerdings nicht ganz billige Alternative sind Komplettsysteme, wie sie zum Beispiel Pure Storage und Dell EMC anbieten. Ein Vorteil solcher KI-Pakete ist, dass Unternehmen alles aus einer Hand erhalten: Server, Grafikprozessoren, Storage sowie KI-Frameworks und Bibliotheken für Machine Learning oder dessen Schwestertechnologie Deep Learning.
Pure Storage hat gemeinsam mit Cisco die hyperkonvergente Appliance FlashStack for AI entwickelt. Die Server und Netzwerk-Switches steuert Cisco bei. Die für KI-Anwendungen optimierten Grafikprozessoren kommen von Nvidia, die Flash-Speicher-Komponenten von Pure Storage. Außerdem hat Pure Storage zusammen mit Nvidia eine „AI-Ready In­frastructure“ (AIRI) entwickelt. Auch sie basiert auf Flash­Blade-Speichersystemen von Pure Storage sowie DGX-1-Systemen von Nvidia. Mit AIRI Mini steht zudem eine Einstiegslösung für kleinere Unternehmen zur Verfügung. Von Nvidia selbst gibt es zudem eine Data Science Workstation. Sie soll sich besonders für Data Scientists eignen, die eher traditionelle Datenanalysen mit Machine Learning betreiben wollen.
Einen vergleichbaren Ansatz bietet Dell EMC. Mit Hilfe von HPC-Servern (High-Performance Computing) wie dem PowerEdge C4140 und integrierten Tesla-Grafikkarten von Nvidia können Unternehmen beispielsweise die Qualitätssicherung in der Fertigung um KI- und ML-Funktionen erweitern.

Frameworks für Künstliche Intelligenz (Teil 1)

Anbieter

Lösung(en)

Schwerpunkte

Besonderheiten

Amazon Web Services

Amazon SageMaker

Machine Learning (ML); Managed Service zum Erstellen, Trainieren und Bereitstellen von ML-Modellen

Gesamter Workflow von ML-Projekten abgedeckt; vorgefertigte Workflows und Schnittstellen für gängige Kennzeichnungsaufgaben; laut AWS um 70 Prozent geringerer Aufwand beim Markieren von Daten; Unterstützung von Frameworks wie TensorFlow, PyTorch, Apache MXNet

Amazon Web Services

KI-, DL- und ML-Services wie Comprehend, Forecast,
Polly, Translate oder Rekognition

Vortrainierte KI-Services für Bild-/Videoanalyse, Personalisieren von Kundenerfahrungen, Dokumentenanalyse, Natural Language Processing etc.

Unterstützung von Frameworks wie TensorFlow, PyTorch, Apache MXNet

Apache

Mahout

Verteiltes Framework für das Erstellen von ML-Applikationen; Open Source

Basis: Hadoop MapReduce; hohe Skalierbarkeit; für effizientes Data-Mining bei großen Datenbeständen ausgelegt; Kritikpunkt: unzureichende Visualisierungsfunktionen

Apache

Mlib (Spark)

ML-Bibliothek für Python, Java, Scala und R; Open Source

Unterstützung von Spark und NumPy; Implementierung auf Hadoop, Apache Mesos, Kubernetes, Cloud, firmeneigenen Data-Centern; Einsatzfelder u. a. Regressionsanalysen, Clustering, Entscheidungsbäume, Empfehlungsalgorithmen

Apache

MXNET

DL-Bibliothek und Framework mit breiter Unterstützung von Programmiersprachen; Open Source

Unterstützt u. a. Python, C++, Julia, R und JavaScript; hohe Skalierbarkeit; Einsatz vor allem bei Sprach- und Bilderkennung, Natural Language Processing und Prognosen im Rahmen großer Projekte; gute Unterstützung von Grafikprozessoren; nicht so populär wie andere Frameworks

Apache

Singa

Deep Learning (DL); verteilte Plattform für Deep Learning; Open Source

Unterstützung von neuronalen Netzwerken wie Convolutional Neural Networks (CNN), Restricted Boltzmann Machines (RBM) und Recurrent Neural Networks (RNN); Fokus auf Anwendungen im Gesundheitsbereich und mit geringem Ressourcenbedarf; breite Hardware-Unterstützung; für synchrone, asynchrone und hybride Trainings-Frameworks

Apache

SystemML

ML-Framework; ursprünglich von IBM; seit Ende 2018 Open Source

Anwendungen u. a. deskriptive Statistiken, Klassifizierungen, Regressionsanalysen, Matrix-Faktorisierung; für die Analyse großer Datenbestände; läuft in Apache-MapReduce- oder Apache-Spark-Umgebungen

Berkeley Vision and Learning Center

Caffe

DL-Framework auf Basis von C++ mit Python-Interface und Schwerpunkt auf Bilderkennung

Nachfolger ist Caffe2; Anwendungen - neben Bildanalyse - Spracherkennung und Robotics-Applikationen; weniger geeignet für Text- und Sprachanalyse und Zeitreihenanalyse; Unterstützung von Convolutional Neural Networks; Schnittstellen zu C, C++, Python, Matlab

BigDL

BigDL

Verteilte DL-Library auf Basis von Python für Apache Spark; für Intel-Prozessoren

Erstellen von DL-Anwendungen als Spark-Programme; Ausführung auf Spark- oder Hadoop-Clustern; Unterstützung von Frameworks wie TensorFlow, Keras und Torch; hohe Performance und Skalierbarkeit

Caffe2

Caffe2

DL-Framework für Python; ursprünglich von Facebook entwickelt

Ziel: einfacher Zugang zu Deep-Learning-Modellen; vortrainierte Modelle; hohe Skalierbarkeit und Effizienz; enge Anbindung an PyTorch; noch keine optimale Lösung für komplexe DL-Projekte, die Debugging-Tools erfordern

Chainer

Chainer

DL-Framework auf Basis von Python; unterstützt von AWS, IBM, Intel und Nvidia

Anwendung vor allem bei der Spracherkennung; hohe Flexibilität und intuitive Bedienung; hohe Performance; Möglichkeit, vorhandene Netzwerke während der Laufzeit (Runtime) zu modifizieren; schwer zu debuggen; kleine Community

CLIPS

Pattern

ML; Web-Mining-Modul für Python

Anwendungen u. a. Data-Mining (Google, Twitter, Wikipedia etc.), Natural Language Processing, Clustering, Netzwerkanalyse

Gluon

Gluon

DL-Interface zum Erstellen von Modellen auf Basis von Toolkits wie Apache MXNET und Cognitive Toolkit von Microsoft

Von AWS und Microsoft vorgestellt; Ziel: Erstellen von DL-Modellen mit geringem Programmieraufwand

H2O

H2O

ML-Plattform auf Basis von Python und R; Open Source; auch als kommerzielle Enterprise-Plattform verfügbar

Anwendungsfelder u. a. Forderungsmanagement, Analyse, Betrugserkennung; Unterstützung von Random Forests, GLM, GBM, XGBoost, GLRM, Word2Vec; Workflow-Automatisierung mit AutoML; In-Memory-Datenbanken werden unterstützt

Verwandte Themen