TensorFlow 2.1 verbessert das Zusammenspiel mit GPUs und TPUs

Das Installationspaket des Machine-Learning-Frameworks bringt standardmäßig das GPU-Modul mit, und Keras erweitert die Funktionen für Cloud-TPUs.

In Pocket speichern vorlesen Druckansicht
TensorFlow 2.1 verbessert das Zusammenspiel mit GPUs und TPUs
Lesezeit: 3 Min.
Von
  • Rainald Menge-Sonnentag

Gut drei Monate nach TensorFlow 2.0 ist nun Version 2.1 des Machine-Learning-Frameworks erschienen. Nachdem die Hauptversion entscheidende Änderungen an der Architektur mitgebracht hat, liegen die Neuerungen des aktuellen Release vor allem unter der Haube und zielen auf eine bessere Performance und erweiterte Hardwareunterstützung.

Das pip-Paket tensorflow unterstützt nun ebenso wie das Paket tensorflow-gpu die Ausführung auf GPUs für Linux und Windows. Auch wenn es keinen Grafikprozessor voraussetzt, ist es größer als das bisherige Package. Wer nicht auf GPUs arbeitet und den Code schlank halten will, kann auf das tensorflow-cpu-Paket zurückgreifen.

Keras ist seit Herbst ausschließlich auf TensorFlow ausgerichtet und eng an TensorFlow 2 angebunden. Die API tf.keras erweitert vor allem das Zusammenspiel mit Googles TPUs (Tensor Processing Unit). Die ASICs sind wiederum speziell auf TensorFlow zugeschnitten, und der Internetriese hat TensorFlow ursprünglich ins Leben gerufen.

Unter anderem bringt Keras im aktuellen Release experimentellen Support für die Funktionen .compile, .fit, .evaluate und .predict auf Cloud-TPUs mit. Ebenfalls noch als experimentell gekennzeichnet ist das Mixed-Precision-Training, das eine Mischung aus 16-bit und 32-bit Gleitkommazahlen erlaubt, auf Cloud TPUs und GPUs über tf.keras.

Auch das Paket für das verteilte Training tf.distribute erweitert die Anbindung an TPUs und bringt darüber hinaus die Option einer globalen Verteilungsstrategie über tf.distribute.experimental_set_strategy() mit.

Das offizielle tensorflow-pip-Paket für Windows ist mit Visual Studio 2019 Version 16.4 erstellt und setzt Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019 voraus. Hinsichtlich der Anbindung an Nvidias APIs ist das Paket für alle Betriebssystem mit CUDA 10.1 und cuDNN 7.6 erstellt.

Neben den Neuerungen hat das TensorFlow-Team ein paar Funktionen entfernt und einige APIs umbenannt. Diese Breaking Changes führen potenziell zu Inkompatibilitäten, die Codeänderungen erfordern.

Unter anderem entfällt Operation.traceback_with_start_lines, und die bisherigen experimentellen Funktionen tf.config.experimentalVirtualDeviceConfiguration und
tf.config.experimental_list_devices heißen nach der Aufnahme als vollwertige Funktionen nun
tf.config.LogicalDeviceConfiguration beziehungsweise
tf.config.list_logical_devices.

Mehr Infos

Vom 17. bis 19. Februar 2020 starten heise Developer, iX und der dpunkt.verlag mit einem neuen Format zum Thema Machine Learning: Die ML-Essentials bieten Halbtages-Trainings zu insgesamt 18 Themen. Die Veranstaltung ist aus dem Wunsch einiger Teilnehmer der Entwicklerkonferenz Minds Mastering Machines hervorgegangen, die Workshops im Rahmen der Konferenz zu erweitern.

Das Programm der ML-Essentials 2020 bietet speziell für TensorFlow unter anderem eine Einführung in Deep Learning mit Keras und TensorFlow sowie ein Training zu Neural Embeddings, Latent Spaces und Autoencoder mit TensorFlow 2.

Die vollständige Liste der Neuerungen und Änderungen in TensorFlow 2.1 lässt sich den Release Notes im GitHub-Repository entnehmen. Das aktuelle Release ist das letzte, das mit Python 2 zusammenarbeitet, für das der offizielle Support zum Jahreswechsel abgelaufen ist.

Siehe dazu auf heise Developer:

(rme)