TensorFlow

Un article de Wikipédia, l'encyclopédie libre.
Sauter à la navigation Sauter à la recherche
TensorFlow
Description de l'image TensorFlowLogo.svg.
Description de l'image Tensorflow logo.svg.
Informations
Développé par Google BrainVoir et modifier les données sur Wikidata
Première version Voir et modifier les données sur Wikidata
Dernière version 1.13.0 ()[1]Voir et modifier les données sur Wikidata
Dépôt github.com/tensorflow/tensorflowVoir et modifier les données sur Wikidata
Écrit en C++ et PythonVoir et modifier les données sur Wikidata
Système d'exploitation Microsoft Windows, Linux, macOS, iOS et AndroidVoir et modifier les données sur Wikidata
Environnement Linux, macOS, Android, iOS et Microsoft WindowsVoir et modifier les données sur Wikidata
Langues anglais
Type Bibliothèque logicielle
FrameworkVoir et modifier les données sur Wikidata
Licence Apache-2.0Voir et modifier les données sur Wikidata
Site web tensorflow.orgVoir et modifier les données sur Wikidata

TensorFlow est un outil open source d'apprentissage automatique développé par Google. Le code source a été ouvert le 9 novembre 2015 par Google et publié sous licence Apache.

Il est fondé sur l'infrastructure DistBelief, initiée par Google en 2011, et est doté d'une interface pour Python et Julia.

TensorFlow est l'un des outils les plus utilisés en IA dans le domaine de l'apprentissage machine[2].

Histoire[modifier | modifier le code]

DistBelief[modifier | modifier le code]

À 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[3],[4]. Google a assigné de nombreux ingénieurs informaticiens, dont Jeffrey Dean, pour simplifier et réordonner le code de DistBilief en une bibliothèque logicielle plus rapide et plus solide qui est devenue Tensorflow[5]. 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[6].

Tensorflow[modifier | modifier le code]

Tensorflow est la deuxième génération du système de Google Brain. La version 1.0.0 est sortie le 11 février 2017[7] 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)[8]. 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 juin 2016, Jeff Dean a mentionné que 1500 dépots github mentionnaient Tensorflow, dont seulement 5 étaient de Google[9].

Tensorflow lite[modifier | modifier le code]

En mai 2017, Google a annoncé qu'une couche logicielle spécifique serait créée pour le développement sur Android, Tensorflow Lite, à partir d'Android Oreo[10].

Utilisations[modifier | modifier le code]

Rankbrain[modifier | modifier le code]

Le 26 octobre 2015, Google a officiellement sorti RankBrain (en), adossé à TensorFlow.

Le Pentagone[modifier | modifier le code]

Le 6 mars 2018, 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 »[11],[12].

DeepDream[modifier | modifier le code]

DeepDream se fonde en totalité sur l'architecture de TensorFlow pour la base algorithmique du logiciel.

Fonctionnalités[modifier | modifier le code]

TensorFlow fournit des API stables en Python[13] et C[14]. Des API sans rétro-compatibilité garantie en C++, Go, Java[15], JavaScript[16] et Swift.[17] Des packages fait par des tiers sont disponibles en C#[18], Haskell,[19] Julia,[20] R,[21] Scala,[22] Rust[23], Ocaml[24] et Crystal.[25]

Notes et références[modifier | modifier le code]

  1. « Release 1.13.0 » (consulté le 24 février 2019)
  2. « Deloitte Tech Trends : Les 8 tendances IT 2017 », sur Le Monde Informatique, (consulté le 30 janvier 2019)
  3. Jeff Dean, Rajat Monga et Sanjay Ghemawat, « TensorFlow: Large-scale machine learning on heterogeneous systems », sur TensorFlow.org, Google Research, (consulté le 10 novembre 2015).
  4. Sarah Perez, « Google Open-Sources The Machine Learning Tech Behind Google Photos Search, Smart Reply And More », sur TechCrunch, (consulté le 11 novembre 2015).
  5. Will Oremus, « What Is TensorFlow, and Why Is Google So Excited About It? », sur Slate, (consulté le 11 novembre 2015)
  6. « Google chairman: We’re making 'real progress' on artificial intelligence », Christian Science Monitor,‎ (ISSN 0882-7729, lire en ligne, consulté le 10 octobre 2018)
  7. (en) « tensorflow », sur GitHub (consulté le 10 octobre 2018).
  8. (en) Cade Metz, « TensorFlow, Google's Open Source AI, Points to a Fast-Changing Hardware World », Wired,‎ (lire en ligne).
  9. Machine Learning: Google I/O 2016 Minute 07:30/44:44 accessdate=2016-06-05
  10. (en) « Google’s new machine learning framework is going to put more AI on your phone », The Verge,‎ (lire en ligne, consulté le 10 octobre 2018).
  11. (en) Google Is Helping the Pentagon Build AI for Drones, sur le site gizmodo.com (consulté le 7 mars 2018).
  12. Un programme de Google aide le Pentagone à analyser les images filmées par les drones, Le Monde, 7 mars 2018.
  13. (en) « All symbols in TensorFlow », sur TensorFlow (consulté le 18 février 2018).
  14. (en) « TensorFlow Version Compatibility », sur TensorFlow (consulté le 10 mai 2018) : « Some API functions are explicitly marked as "experimental" and can change in backward incompatible ways between minor releases. These include other languages ».
  15. « API Documentation » (consulté le 27 juin 2018)
  16. « TensorFlow.js » (consulté le 28 juin 2018) : « 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. »
  17. (en) « Swift for TensorFlow » (consulté le 28 juin 2018) : « 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. »
  18. Miguel de Icaza, TensorFlowSharp: TensorFlow API for .NET languages, (lire en ligne)
  19. haskell: Haskell bindings for TensorFlow, tensorflow, (lire en ligne)
  20. (en) « malmaud/TensorFlow.jl », sur GitHub (consulté le 28 juin 2018)
  21. tensorflow: TensorFlow for R, RStudio, (lire en ligne)
  22. Anthony Platanios, tensorflow_scala: TensorFlow API for the Scala Programming Language, (lire en ligne)
  23. rust: Rust language bindings for TensorFlow, tensorflow, (lire en ligne)
  24. Laurent Mazare, tensorflow-ocaml: OCaml bindings for TensorFlow, (lire en ligne)
  25. (en) « fazibear/tensorflow.cr », sur GitHub (consulté le 10 octobre 2018)

Liens externes[modifier | modifier le code]

Articles connexes[modifier | modifier le code]