PyTorch 1.2 wurde veröffentlicht. Das Open-Source-Tool für Machine Learning wurde von Facebooks Abteilung für künstliche Intelligenz geschaffen und wird mithilfe der Community weiterentwickelt. Nach dem Motto „Python-First“ soll PyTorch eine tiefe Anbindung an die Libraries und Packages der Programmiersprache besitzen. Unter anderem daran wurde auch im neuen Release gearbeitet.
TorchScript, TensorBoard und ONNX
Zu den Highlights in PyTorch 1.2 sollen einige JIT-Neuerungen zählen, die TorchScript betreffen. Mit dem neuen TorchScript API soll das Konvertieren von nn.Module
zu ScriptModule
leichter vonstatten gehen. TorchScript erhält außerdem einen erweiterten Support für Python-Sprachfunktionen und die Python Standard Library. Unterstützt werden zum Beispiel Iterator-basierte Konstrukte wie for..in
-Schleifen, zip()
und enumerate()
sowie die meisten Built-in-Funktionen.
Die TensorBoard-Unterstützung wurde erstmals in Version 1.1 als experimentelle Funktion eingeführt. Mit PyTorch 1.2 befindet sie sich nun im stabilen Modus. TensorBoard wird als TensorFlows Visualisierungstoolkit bezeichnet und kann neben einem Modell-Graphen und Metriken zum Beispiel Bilder, Text und Audiodaten anzeigen. Um loszulegen, kann from torch.utils.tensorboard import SummaryWriter
eingegeben werden.
Zudem wurde im aktuellen Release in Zusammenarbeit mit Microsoft der ONNX-Support erweitert und die Dokumentation angepasst. Unter anderem wird nun das Exportieren der ONNX-Opset-Versionen 7(v1.2), 8(v1.3), 9(v1.4) und 10 (v1.5) unterstützt. Das ONNX-Format (Open Neural Network Exchange) ist ein offenes Format für Deep-Learning-Modelle, um sie in verschiedenen Tools zu verwenden. Es wurde von Microsoft und Facebook entwickelt und wird inzwischen auch von anderen Unternehmen eingesetzt.
Weitere Neuerungen
Das neue Release enthält mehrere Breaking Changes, darunter den dtype
-Wechsel von torch.uint8
zu torch.bool
. Zudem wurden zehn als deprecated markierte Operatoren für lineare Algebra entfernt und einige Bugs behoben. Insgesamt habe es dieses Mal über 1.900 Commits gegeben.
Alles weitere zu PyTorch 1.2 kann den Release Notes auf GitHub entnommen werden.