Machine Learning

TensorFlow 1.0: Release-Kandidat bringt erstes Java API

TensorFlow 1.0: Release-Kandidat bringt erstes Java API

Machine Learning

TensorFlow 1.0: Release-Kandidat bringt erstes Java API


Googles Deep Learning Framework TensorFlow ist auf dem Weg zur ersten Major-Version 1.0. Der erste Release-Kandidat zeigt, wohin die Reise geht.

TensorFlow – Machine Learning à la Google

TensorFlow ist eine in Python und C++ geschriebene Library für maschinelles Lernen, die von Google Open Source zur Verfügung gestellt wurde. TensorFlow erlaubt es, neuronale Netze durch gerichtete zyklenfreie Graphen zu repräsentieren. Diese Graphen werden auf einem verteilten System abgebildet, sodass die Rechenleistung eines ganzen Clusters zur Verfügung steht.

Entwickelt wurde TensorFlow vom Google Brain Team, einem Deep-Learning-Forschungsprojekt, das bereits für TensorFlows Vorgänger DistBelief verantwortlich zeichnet. Google nutzt TensorFlow selbst intensiv in zahlreichen Projekten, sei es die Suche, Spracherkennung, YouTube oder Gmail. Seit Ende 2015 ist TensorFlow als Open-Source-Projekt auf GitHub verfügbar.

TensorFlow 1.0 – Release Candidate

Für Java-Entwickler interessant ist der erste Wurf der Java-Bindings. Das Java API wird als experimentell gekennzeichnet und kann sich bis zur finalen 1.0-Version noch deutlich ändern.

Ebenfalls experiementell ist der neue Compiler für lineare Algebra: XLA (Accelerated Linear Algebra). Mit XLA sollen Berechnungen beschleunigt werden, um optimierten Maschinen-Code für spezifische CPUs oder GPUs zu produzieren.

Ein weiteres Ziel von XLA besteht darin, durch domänen-spezifische Kompilierung die Portabilität von TensorFlow-Programmen zu erhöhen. Große Teile des Quellcodes von TensorFlow-Anwendungen sollen sich unverändert auf neuer Hardware betreiben lassen.

Durch eine optimierte Speichernutzung und einen reduzierten Footprint profitieren zudem Mobile-Anwendungen. Die Unterstützung für Android, iOS und Raspberry Pi wurde bereits in früheren TensorFlow-Versionen umgesetzt. Der erste Release-Kandidat baut darauf auf und fügt Neuerungen wie Personenerkennung und ein Kamera-basiertes Personenverfremdungs-Demo hinzu.

TensorFlow & Python

Im Machine-Learning-Bereich hat sich Python als dominierende Programmier-Plattform etabliert. Kein Wunder also, dass auch TensorFlow 1.0 Python im Visier hat. So gibt es TensorFlow nun als Docker Image für Python 3.

Im ersten Release-Kandidat wurde außerdem das Python API überarbeitet, um eine größere Konsistenz von TensorFlows und Pythons Syntax und Metaphern zu erreichen. Allerdings haben sich dadurch wohl einige Breaking Changes ergeben, die eine Anpassung existierender Python-Anwendungen nötig machen. Die TensorFlow-Entwickler haben dafür ein Skript bereitgestellt, das alte TensorFlow-API-Skripts zumindest an das neue API annähert.

Lesen Sie auch: TensorFlow 0.9: Ein erster Standard für Machine-Learning-Systeme

Der TensorFlow 1.0 Release-Kandidat kann direkt auf GitHub heruntergeladen werden. Eine detaillierte Roadmap mit Release-Datum ist noch nicht bekannt geworden.

Hartmut Schlosser

Hartmut Schlosser, Redakteur entwickler.de


Weitere Artikel zu diesem Thema