Il est fondé sur l'infrastructure DistBelief, initiée par Google en 2011, et est doté d'une interface pour Python, Julia, R[2] et C++[3].
TensorFlow est l'un des outils les plus utilisés en IA dans le domaine de l'apprentissage machine[4].
Histoire
DistBelief
À partir de 2011, Google Brain a développé un outil propriétaire d'apprentissage automatique fondé sur l'apprentissage profond. Son utilisation a augmenté rapidement à travers les différentes filiales d'Alphabet autant dans le milieu commercial que dans la recherche[5],[6]. Google a assigné de nombreux ingénieurs informaticiens, dont Jeffrey Dean, pour simplifier et réordonner le code de DistBelief en une bibliothèque logicielle plus rapide et plus solide qui est devenue TensorFlow[7]. En 2009, l'équipe, dirigée par Geoffrey Hinton, avait implémenté la rétropropagation du gradient généralisée et d'autres améliorations qui ont permis la création de réseaux neuronaux ayant une précision considérablement meilleure. Par exemple, une réduction de 25 % d'erreur dans la reconnaissance automatique de la parole a été obtenue[8].
TensorFlow
TensorFlow est la deuxième génération du système de Google Brain. La version 1.0.0 est sortie le [9] Alors que l'implémentation de référence tourne sur un seul appareil, TensorFlow peut être lancé sur plusieurs CPU et GPU (avec des extensions optionnelles telles que CUDA ou SYCL(en) pour GPGPU)[10]. TensorFlow est disponible en version 64-bits pour Linux, macOS, Windows et pour les plateformes mobiles sur Android et iOS.
Son architecture flexible permet le développement sur plusieurs variétés de plateformes (CPU, GPU, TPU), allant du PC de bureaux à des clusters de serveurs et des mobiles aux dispositifs de bords.
En , Jeff Dean a mentionné que 1 500 dépôtsgithub mentionnaient TensorFlow, dont seulement cinq étaient de Google[11].
TensorFlow lite
En , Google a annoncé qu'une couche logicielle spécifique serait créée pour le développement sur Android, TensorFlow Lite, à partir d'Android Oreo[12]. Il existe une version orientée vers les microcontrôleurs (anglais : Tensorflow lite for microcontrollers) et a notamment été porté sur la plateforme ARM Cortex-M et ESP32[13].
Utilisations
RankBrain
Le , Google a officiellement sorti RankBrain, adossé à TensorFlow.
Le Pentagone
Le , le site américain Gizmodo a révélé l’existence d’un partenariat entre l’entreprise Google et le Pentagone, destiné à aider ce dernier à analyser des images de drones par l'usage de TensorFlow, sans pouvoir donner plus d'indications sur l'implication de l'entreprise. Google a déclaré : « La technologie labellise des images qui seront analysées par des humains et ne sert qu’à un usage non offensif »[14],[15].
DeepDream
DeepDream se fonde en totalité sur l'architecture de TensorFlow pour la base algorithmique du logiciel.
↑« Google chairman: We’re making 'real progress' on artificial intelligence », Christian Science Monitor, (ISSN0882-7729, lire en ligne, consulté le ).
↑(en) « TensorFlow Version Compatibility », sur TensorFlow (consulté le ) : « Some API functions are explicitly marked as "experimental" and can change in backward incompatible ways between minor releases. These include other languages ».
↑« TensorFlow.js » (consulté le ) : « TensorFlow.js has an API similar to the TensorFlow Python API, however it does not support all of the functionality of the TensorFlow Python API. »
↑(en) « Swift for TensorFlow » (consulté le ) : « Swift for TensorFlow is an early stage research project. It has been released to enable open source development and is not yet ready for general use by machine learning developers. The API is subject to change at any time. »
↑Miguel de Icaza, TensorFlowSharp: TensorFlow API for .NET languages, (lire en ligne).
↑Haiping Chen, TensorFlow.NET: .NET Standard bindings for TensorFlow, (lire en ligne).
↑haskell: Haskell bindings for TensorFlow, tensorflow, (lire en ligne).