Der Autor, Sebastian Heinz, ist Geschäftsführer von Statworx, einem Beratungsunternehmen für Data Science & AI.

Bild: Statworx
1 Bewertungen

Kommentar über die neue Framework-Version Wie TensorFlow 2.0 die Entwicklung von KI-Modellen beschleunigt

26.09.2019

Vier Jahre sind vergangen, seitdem Google das Machine-Learning-Framework TensorFlow im Jahre 2015 unter Open-Source-Lizenz veröffentlicht hat. Inzwischen hat es sich als Quasi-Standard für die Entwicklung von KI-Anwendungen in der Wirtschaft durchsetzen können. Nun steht der Release der Release von TensorFlow 2.0 kurz bevor und könnte einen Meilenstein in der Entwicklung des Frameworks darstellen.

Das Framework TensorFlow dient dazu, neuronale Netze und Deep-Learning-Modelle zu entwickeln. Es verfügt heute über ein dynamisches Ökosystem komplementärer Libraries sowie eine aktive Community an Entwicklern und Anwendern, die immer wieder spektakuläre Use Cases im Bereich Machine Learning und KI umsetzen.

Doch der Weg hin zur Marktführerschaft war sehr lang und steinig. In den ersten Releases von TensorFlow mussten KI-Entwickler noch jede einzelne mathematische Operation in TensorFlow manuell programmieren. Dies setzte zum einen entsprechende Programmierkenntnisse voraus und zum anderen, dass man die exakte mathematische Funktionsweise der einzelnen Komponenten eines neuronalen Netzes kennt. Insbesondere die Kombinationen dieser beiden Faktoren sorgte zunächst bei vielen Anwendern für Frust.

Erschwerend hinzu kam, dass Code in TensorFlow bis vor einiger Zeit deklarativ entwickelt wurde. Das bedeutet, dass zunächst abstrakt alle benötigten mathematischen Operationen des neuronalen Netzes in einem sogenannten Graphen definiert und erst danach die eigentlichen Daten durch das zuvor erstelle Netzwerk gesendet wurden, um das Ergebnis zu erzeugen. Auch diese zusätzliche Ebene an Komplexität sorgte bei vielen Anwendern für Stirnrunzeln und schlaflose Nächte.

Neuronale Netze mit fünf Zeilen Code umsetzen

Diese Zeiten sind heute glücklicherweise vorbei. Die Veröffentlichung der Python Library Keras, die ebenfalls im Jahre 2015 veröffentlicht wurde, brachte die große Wende. Keras abstrahiert viele der komplexen Programmierschritte bei der Entwicklung von neuronalen Netzen vom Anwender weg und führt diese unauffällig und zuverlässig im Backend durch.

Dieses Backend kann sowohl TensorFlow, aber auch andere Deep-Learning-Frameworks wie Theano oder Apache MXNet sein. So lassen sich beispielsweise in Keras mit nur fünf Zeilen Code die Architektur sowie das Training eines einfachen, neuronalen Netzes umsetzen. Zum Vergleich: Für das gleiche neuronale Netz würden hierfür in TensorFlow circa 50 Zeilen Code benötigt werden.

Die Geschwindigkeit, in der Modelle prototypisch entwickelt und gebenchmarked werden können, ist somit signifikant höher als mit „Low-Level“-TensorFlow. KI-Entwickler sind deutlich agiler und können in kurzer Zeit verschiedene Varianten ihrer Modelle prototypen. Diese Varianten werden dann in der Regel miteinander verglichen und im Hinblick auf die Ergebnisqualität evaluiert. Schnellere Iteration bei der Entwicklung geht somit mit einer kürzeren Time-to-Model einher.

Funktionen aus zwei Frameworks simultan nutzen

In der neuen Version TensorFlow 2.0, deren offizieller Release unmittelbar bevorsteht, hat Google die zuvor eigenständige Library Keras als neues Modul integriert und nochmals enger mit dem nach wie vor existenten TensorFlow-Backend verzahnt. Somit können sowohl Einsteiger als auch fortgeschrittene KI-Entwickler mit TensorFlow beziehungsweise Keras gleichzeitig arbeiten.

Während Einsteiger ihre Modelle zunächst ausschließlich in Keras entwickeln, haben KI-Experten die Möglichkeit, Funktionen und Komponenten aus Keras und TensorFlow simultan zu nutzen. Dies erleichtert insbesondere die Entwicklung komplexerer KI-Anwendungen wie Bild- und Texterkennungsmodellen. Weiterhin hat sich Google vom deklarativen Programmier-Paradigma in TensorFlow verabschiedet und seit einiger Zeit nun die sogenannte Eager Execution, also ein imperatives Paradigma für TensorFlow, als Standard definiert. Somit können komplexe Modelle noch einfacher entwickelt und debugged werden.

Weitere spannende Neuerungen

Neben diesen signifikanten Änderungen gibt es hunderte kleinere Aktualisierungen und Weiterentwicklungen, die die Arbeit mit TensorFlow einfacher und effizienter machen. Weiterhin hat Google im Ökosystem von TensorFlow einige spannende neue Libraries veröffentlicht, wie zum Beispiel TFX, das sich mit der Operationalisierung der in TensorFlow und Keras erstellten KI-Anwendungen beschäftigt.

Der Release von TensorFlow 2.0 stellt somit in vielerlei Hinsicht einen wahren Meilenstein in der Entwicklung des Frameworks dar und wird den Entwicklungs- und Operationalisierungsprozess für KI-Modelle weltweit positiv beeinflussen.

Zur Statworx-Website

Firmen zu diesem Artikel
Verwandte Artikel