TensorFlow ist ein Open-Source-Deep-Learning-Framework, das vom Google-Brain-Team entwickelt und im November 2015 öffentlich veröffentlicht wurde. Es bot eine Möglichkeit, neuronale Netze als Berechnungsgraphen von Tensoroperationen zu definieren und sie effizient auf CPUs, GPUs und Googles eigenen TPU-Chips zu trainieren. Es wurde neben PyTorch zu einem der beiden dominierenden Deep-Learning-Frameworks der späten 2010er-Jahre.
Geschichte
TensorFlow folgte auf DistBelief, ein früheres, weniger flexibles internes System, das Google für das Training großer neuronaler Netze verwendet hatte. Die Open-Source-Veröffentlichung 2015, gefolgt von einer stabilen Version 1.0 im Jahr 2017, machte Googles Werkzeuge für großskaliges Deep Learning erstmals externen Forschern und Unternehmen zugänglich und trug dazu bei, Deep Learning als gängige Ingenieursdisziplin über akademische Labore hinaus zu etablieren. Das ursprüngliche Design von TensorFlow verwendete einen statischen Berechnungsgraphen im Define-and-Run-Modus: Ein Nutzer baute zunächst den vollständigen Graphen der Operationen auf und führte ihn dann aus. Dieser Ansatz ermöglichte aggressive Leistungsoptimierung und einfache Bereitstellung, machte das Debuggen und Iterieren an der Modellarchitektur jedoch umständlicher als der dynamische Graphenansatz, den PyTorch 2016 einführte. Google reagierte 2019 mit TensorFlow 2.0, das die sofortige, dynamische Ausführung zum Standard machte und Keras, eine höherstufige, benutzerfreundlichere API, als primäre Schnittstelle integrierte.
Ökosystem
Über die zentrale Trainingsbibliothek hinaus umfasste das TensorFlow-Ökosystem TensorFlow Lite für die Bereitstellung auf Mobilgeräten und Edge-KI, TensorFlow.js zum Ausführen von Modellen in einem Webbrowser, TensorFlow Extended für Produktions-Pipelines im maschinellen Lernen sowie TensorBoard, ein weit verbreitetes Visualisierungswerkzeug zur Überwachung des Trainings. Keras, ursprünglich ein unabhängiges Projekt, wurde eng in TensorFlow integriert und als empfohlene Hochsprachen-API etabliert, wodurch die Einstiegshürde für Neulinge sank, Modelle zu definieren und zu trainieren, ohne direkt niedrigstufigen Graphencode zu schreiben.
Rückgang im Forschungsanteil und aktueller Status
Trotz der frühen Dominanz von TensorFlow führte PyTorchs forscherfreundlicheres dynamisches Ausführungsmodell in den späten 2010er- und frühen 2020er-Jahren zu einer stetigen Verschiebung der akademischen Forschung hin zu PyTorch. Um 2022 verwendete die Mehrheit der neuen Beiträge auf großen Konferenzen für maschinelles Lernen PyTorch statt TensorFlow. TensorFlow behielt in einigen Produktions- und Mobilbereitstellungskontexten eine stärkere Präsenz, teils aufgrund seiner Reife und der von Google unterstützten Werkzeuge, und blieb in Industriesystemen, die vor der Verschiebung gebaut wurden, sowie innerhalb von Google selbst weit verbreitet. Mitte der 2020er-Jahre wird TensorFlow allgemein als das Framework angesehen, das dazu beitrug, großskaliges Training neuronaler Netze als gängige Ingenieurspraxis zu etablieren und viele einflussreiche frühe Deep-Learning-Systeme trainierte, auch wenn PyTorch und, für sehr großskaliges Training, Googles eigene JAX-Bibliothek zu prominenteren Optionen für die Entwicklung neuer großer Sprachmodelle und Foundation-Modelle innerhalb von Google und im gesamten Feld wurden.