Maschinelles Lernen: Facebook veröffentlicht Open-Source-Framework für Torch

Mit Torchnet schickt Facebook keine neue Deep-Learning-Engine ins Rennen, sondern baut auf dem etablierten Torch auf. Das Framework soll die Wiederverwendung von Code vereinfachen und ist nicht dauerhaft an Torch gebunden.

In Pocket speichern vorlesen Druckansicht
Maschnielles Lernen: Facebook veröffentlicht Open-Source-Framework für Torch
Lesezeit: 2 Min.
Von
  • Rainald Menge-Sonnentag

Große IT-Unternehmen liefern sich derzeit geradezu ein Wettrennen beim Veröffentlichen oft quelloffener Projekte für maschinelles Lernen: Googles TensorFlow, IBMs SystemML und Microsofts Distributed MachineLearning Toolkit sind prominente Beispiele. Nun hat Facebook die Open-Source-Bibliothek Torchnet veröffentlicht. Im Unterschied zu den genannten Projekten handelt es sich dabei um keine neue Engine, sondern ein Framework für Torch.

Diese quelloffene Bibliothek existiert inzwischen seit vierzehn Jahren. Torch bietet zahlreiche Algorithmen für Deep Learning, mit denen Entwickler Tensoren beziehungsweise N-dimensionale Arrays bearbeiten und über Zusatzpakete unter anderem neuronale Netze erstellen können. Für die Berechnungen verwendet es sowohl die CPU als auch die GPU. Facebooks AI Research Group setzt Torch selbst ein. Neben den dort tätigen Entwicklern haben auch Programmierer von Google DeepMind und Twitter zur Entwicklung beigetragen.

Torchnet ist ein Framework, das eine Abstraktionsschicht für Torch 7 darstellt. Ein Problem mit Torch sei, dass Entwickler immer wieder dieselbe experimentelle Logik erstellen müssten, schreiben Facebooks Ronan Collobert, der zu den Torch-Maintainern gehört, Laurens van der Maaten und Armand Joulin in einem Paper, das die Ansätze des Frameworks erklärt. Torchnet soll demnach Boilerplate-Code für maschinelles Lernen auf der Basis von Torch ermöglichen. Entwickler können damit Code wiederverwenden und ihre Programme modularisieren.

Wie Torch ist auch Torchnet in Lua verfasst, um eine reibungslose Zusammenarbeit zu gewährleisten. Entwickler können es mit dem Paketmanager LuaRocks neben dem vorhandenen Torch installieren. Torchnet bietet diverse Klassen und Methoden, beispielsweise zum Verwalten von Datensätzen und Durchführen von Transformationen. Die Abstraktion von Torchnet soll laut dem Paper später auch die Integration in andere Deep-Learning-Frameworks wie Caffe oder TensorFlow ermöglichen.

Torchnet ist unter der BSD-Lizenz auf GitHub im Source verfügbar. Auf der Projektseite findet sich eine ausführliche Beschreibung der Funktionen. (rme)