Maschinelles Lernern mit Open Source Tools

Machine Learning: Fünf Toolkits im Kurzportrait

Melanie Feldmann

Mit Big Data sammeln wir immer mehr Daten. Aber was dann? Maschinelles Lernen macht aus Datenmassen Informationen. Wir stellen fünf Open Source Toolkits vor, mit denen Daten und Algorithmen zusammenfinden.

Deeplearning4j

Deeplearning4j (DL4J) ist nicht nur Open Source, sondern auch für Java und Scala geschrieben – und damit nicht mit Python oder C++ wie die meisten anderen Toolkits. Es lässt sich in Hadoop und Spark integrieren und ist eher für Geschäftsanwendungen als für Forschungszwecke ausgelegt. Einen Quick Start Guide findet sich hier. Zum Repository geht es hier lang. Das Video zeigt einen ausführlichen Einstieg in Deep Learning mit DL4J.

CNTK

CNTK (Computational Network Toolkit) ist das Deep Learning Toolkit von Microsoft, das auch Cortana nutzt. Es beschreibt neurale Netzwerke als eine Serie von einzelnen Rechenschritten mit einem gerichteten Graphen. In einem gerichteten Graphen repräsentiert jeder Knoten einen Eingabewert oder einen Netzwerkparameter, und jede Kante repräsentiert eine Matritzenoperation. Die meisten bekannten Knotentypen sind bereits vorkonfiguriert, unter der Open-Source-Lizenz können Anwender aber auch jederzeit eigene erstellen. CNTK ist seit April 2015 Open Source und hat im Januar 2016 ein eigenes GitHub Repository bekommen.

Theano

Theano ist eine Python-Bibliothek, die es ermöglicht, mathematische Ausdrücke mit mehrdimensionalen Arrays zu definieren, zu verbessern und zu evaluieren. Die Bibliothek ist Open Source und wird vor allem von einer Gruppe der Universität in Montreal weiterentwickelt. Es eignet sich vor allem, um Algorithmen von Grund auf aufzubauen. Hier geht’s zum GitHub Repository. Ein Tutorial gibt es hier. Eine Videoeinführung von 2010 gibt einen guten Überblick:

Tensorflow

TensorFlow von Google ist eine Softwarebibliothek für numerische Berechnungsmodelle und nutzt dafür Flussgraphen. Flussgraphen beschreiben mathematische Berechnungen mit einem gerichteten Graphen von Knoten und Kanten. Knoten innerhalb des Graphen repräsentieren mathematische Operationen, sie können aber auch Endpunkte in einem Daten-Feed repräsentieren, Ergebnisse ausgeben oder persistente Variablen lesen und schreiben. Die Kanten beschreiben die Input/Output-Beziehungen zwischen Knoten. Diese Datenkanten tragen mehrdimensionale Daten-Arrays, die sogenannten Tensoren – daher der Name. TensorFlow kann auf mehreren CPUs und GPUs, Servern oder mobilen Endgeräten laufen. Das Repository liegt nicht bei GitHub, sondern bei Google selbst. Im Video ist eine kurze Einführung zu sehen.

Torch

Torch vereint eine Machine-Learning-Bibliothek, ein Framework für wissenschaftliche Berechnungen und eine Script-Sprache, die auf LUA basiert. Es kommt vor allem im Facebook AI Lab und bei Google DeepMind zum Einsatz. Torch nutzt wie TensorFlow Tensoren. Mit dabei sind Zusatzpakete zu Computer Vision, Signalverarbeitung, Parallelverarbeitung sowie Bild-, Video- und Audioverarbeitung. Vor allem durch Facebook kommen viele gut gepflegte Zusatzpakete hinzu. Der Sourcecode liegt auf GitHub, ein Starter-Guide findet sich hier.

Caffe

Caffe ist vor allem auf Geschwindigkeit ausgelegt und in optimiertem C++ geschrieben. Es wird vom Berkeley Vision and Learning Center (BVLC) entwickelt. Wie der Name der Entwickler vermuten lässt, ist Caffe vor allem auf Bildverarbeitung ausgelegt, eignet sich aber auch für andere Machine-Learning-Anwendungen. Die Entwickler geben an, dass Caffe 60 Millionen Bilder pro Tag auf einer Nvidia K40 GPU verarbeiten kann. Zum Repository geht es hier lang. Ein ausführliches Tutorial gibt es hier.

Aufmacherbild: Digital data visualization von Shutterstock / Urheberrecht: SkillUp

Verwandte Themen:

Geschrieben von
Melanie Feldmann
Melanie Feldmann
Melanie Feldmann ist seit 2015 Redakteurin beim Java Magazin und JAXenter. Sie hat Technikjournalismus an der Hochschule Bonn-Rhein-Sieg studiert. Ihre Themenschwerpunkte sind IoT und Industrie 4.0.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: