Menü
Developer

Maschinelles Lernen: Facebook kündigt C++ Library Tensor Comprehensions an

Die Research-Sparte des sozialen Netzwerks will ML-Anwendungen durch JIT-Compilation beschleunigen. Die Tensor Comprehensions kombinieren dafür eine mathematische Programmiersprache mit einer C++ Library.

Von
vorlesen Drucken Kommentare lesen 7 Beiträge
Maschnielles Lernen: Facebook veröffentlicht Open-Source-Framework für Torch

Facebook AI Research (FAIR) arbeitet gemeinsam mit Inria, der ETH Zürich und dem MIT an Tools, mit deren Hilfe sich die Programmierung und Verarbeitung von Machine-Learning-Anwendungen vereinfachen und beschleunigen lassen soll. Mit den Tensor Comprehensions V 0.1 hat Facebook nun eine Kombination aus mathematischer Programmiersprache und C++-Bibliothek vorgestellt, die auf der für Bildverarbeitung bekannten Sprache Halide aufbaut.

Die Tensor Comprehensions verfolgen den Ansatz der Just-in-Time-Kompilierung (JIT), um den üblicherweise langwierigen und komplexen Weg vom mathematisch funktionalen Entwurf bis hin zum optimierten, hochperformanten Code für ein ML-Modell zu verkürzen. In der jetzt vorliegenden Release der Tensor Comprehensions steht Entwicklern eine mathematische Notation zur Verfügung, mit der sich ML-Modelle mit einer einfachen Syntax formulieren lassen. Zur weiteren Verarbeitung der Notation kommt der Halide Compiler als Library in Kombination mit polyedrischer Kompilierung zum Einsatz.

Tensor Comprehensions-Konzept von Facebook AI Research

(Bild: Facebook)

Nach Angaben der Facebook-Forscher verzichtet dieser Ansatz bewusst auf eigene Maßnahmen zum Speichermanagement, damit sich die Tensor Comprehensions auch in etablierte ML Frameworks integrieren lassen und jede Programmiersprache verwendet werden kann, die den Aufruf von C++-Funktionen erlaubt. Die Integration mit Facebooks Deep Learning Framework PyTorch soll in in einer späteren Version folgen.

Nähere Informationen zur Implementierung der Tensor Comprehensions und zu den potenziellen Geschwindigkeitsvorteilen gegenüber etablierten Machine-Learning-Ansätzen auf Basis von Libraries wie CuBLAS, MKL und CuDNN finden Interessierte in den Release Notes. Die Tensor Comprehensions sind Open Source und stehen unter Apache-2.0-Lizenz. Eine ausführliche Dokumentation steht Entwicklern auf GitHub zur Verfügung. (map)