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.
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 auf TPUs
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.
Aktualisierte Pakete
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 undtf.config.experimental_list_devices heißen nach der Aufnahme als vollwertige Funktionen nuntf.config.LogicalDeviceConfiguration beziehungsweisetf.config.list_logical_devices.
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)