Machine Learning: Torch für R ersetzt PyTorch
Das neue, auf der C++-Library libtorch aufsetzende Package Torch soll die Funktionen von PyTorch in der Programmiersprache R nativ verfügbar machen.
Ein Entwicklerteam von RStudio hat Version 0.1.0 von Torch for R vorgelegt. Das R-Package basiert auf der C++-Library libtorch und soll die Funktionen von PyTorch zur Tensorberechnung und zum automatischen Differenzieren in R zur Verfügung stellen, so dass Entwickler neuronale Netze aufbauen und trainieren können, ohne eine zusätzliche Python-Installation zu benötigen. Torch ergänzt damit die bereits in R implementierten NN-Features wie Layers, Activations und Optimizers.
ML-Modelle mit R statt Python
Während Torch vor allem Tensoren, Netzwerkmodule und generische Funktionen zum Laden von Daten enthält, müssen Entwickler für die datenspezifischeren Aufgaben wie Datensätze, Werkzeuge zum Pre-Processing und der Datenerfassung sowie für vortrainierte Modelle auf ergänzende Pakete zurückgreifen. Anders als PyTorch, das spezifische Librarys für Computer Vision, Text und Audio bereitstellt, beschränkt sich die nun veröffentlichte erste Version von Torch mit dem Paket torchvision
noch auf die Bildverarbeitung – torchtext
und torchaudio
sollen jedoch folgen.
Auch im Hinblick auf die verfügbaren Datensätze kann Torch noch nicht bei PyTorch mithalten. Für das Modelltraining steht derzeit aber beispielsweise Kuzushiji-MNIST zur Verfügung, das als Ersatz für den MNIST-Datensatz ausgelegt ist. Anhand eines interaktiven Notebooks auf Colab können Torch-Interessierte den Bau und das Training eines auf Kuzushiji-MNIST basierten Modells nachvollziehen.
Weitergehende Informationen zur R-Alternative von PyTorch finden sich in einem ausführlichen Blogbeitrag anlässlich der Veröffentlichung von Torch 0.1.0. Das R-Package steht auf GitHub zum Download parat.
(map)