Google publie TensorFlow en open source, son API dédiée aux réseaux de neurones artificiels

Google publie TensorFlow en open source, son API dédiée aux réseaux de neurones artificiels

Ce n'est pas pour les enfants

Avatar de l'auteur
Vincent Hermann

Publié dans

Logiciel

12/11/2015 4 minutes
11

Google publie TensorFlow en open source, son API dédiée aux réseaux de neurones artificiels

Google a publié TensorFlow, son moteur d’apprentissage profond, sous licence Apache 2.0. Il ne s’agit pas à proprement parler d’un produit utilisable en l’état, mais d’une trousse à outils pour créer des infrastructures de traitement de données. Un composant important, utilisé par la société pour certains de ses plus gros produits.

TensorFlow n’est pas un composant connu du grand public. Il est pourtant au carrefour des produits les plus importants proposés par Google car il permet les architectures de type neuronal, utilisées pour les gestions de très grandes quantités de données, certains calculs spécifiques et l'apprentissage profond (deep learning). L’éditeur l’explique lui-même : « Nous utilisons TensorFlow pour tout, de la reconnaissance vocale dans l’application Google à Smart Reply dans Inbox pour Gmail, en passant par la recherche dans Google Photos ».

Répartir les calculs entre les différentes unités de calcul, CPU comme GPU

Ce n’est pas le premier composant de ce type que produit la firme. Le premier s’appelait DistBelief mais constituait la « version 1.0 » de la technologie maison. TensorFlow en est la suite et Google indique encore une fois qu’il « permet de construire et d’entraîner des réseaux de neurones artificiels jusqu’à cinq fois plus vite ». Et cette vitesse est cruciale car elle intervient dans des opérations à caractère cognitif « qu’un enfant de quatre ans réussit sans effort ».

TensorFlow se présente sous la forme d’une API unique à tout faire. Globalement, elle permet de diviser les calculs à réaliser entre les différents CPU et GPU de la machine. TensorFlow s’adresse en priorité aux développeurs qui veulent réaliser des tests, aux groupes de chercheurs, aux universités et autres qui ont des besoins spécifiques, et surtout le matériel allant avec. L’API permet également de tracer des graphiques relationnels pour dessiner, dans les grandes lignes, la carte globale des relations entre les données et les opérations.

Cette API se veut flexible et adaptable à n’importe quel type de projet requérant ce type de calculs particuliers. L’idée est de simplifier au maximum un travail qui peut réclamer de nombreuses connaissances. Les développeurs peuvent ainsi d’abord définir le graphique des flux et les outils fournis gèrent ensuite une partie du processus de mise en place. L’API peut être utilisée dans pratiquement tous les environnements de développement et les fonctions peuvent par exemple être codées en Python, ou les opérateurs en C++. Google précise que le développeur n’a pas à se contenter de ce qui est offert et peut ajouter ce qui lui plait.

Un code libéré sous licence Apache 2.0

Dans sa présentation, TensorFlow est présenté globalement comme deux fois plus rapide que son prédécesseur, et Google a estimé que c’était le bon moment pour ouvrir le code à tous. La licence choisie, Apache 2.0, est assez permissive. L’API peut donc être reprise dans à peu tous les types de projets, y compris commerciaux. Les outils fournis avec la bibliothèque, les exemples et les tutoriaux, tout est publié sous cette licence, Google ayant visiblement une vraie volonté de partage. Ce qui, à la grande exception d’AOSP (Android Open Source Project) n’arrive pas si souvent avec les projets majeurs.

La question que l’on se pose est bien entendu : pourquoi ? Parce que l’éditeur espère bien que les contributions seront nombreuses sur un projet de cette envergure. Car rien n’empêche ensuite Google de reprendre les éventuelles améliorations, s’il y en a, pour les utiliser ensuite dans ses propres produits. Or, puisque l’on parle d’une bibliothèque cruciale et jouant un rôle central dans certains services clés, toutes les contributions seront certainement observées de près.

Tous ceux qui sont intéressés par cette API pourront se rendre sur la page officielle consacrée au projet.

Écrit par Vincent Hermann

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

Répartir les calculs entre les différentes unités de calcul, CPU comme GPU

Un code libéré sous licence Apache 2.0

Le brief de ce matin n'est pas encore là

Partez acheter vos croissants
Et faites chauffer votre bouilloire,
Le brief arrive dans un instant,
Tout frais du matin, gardez espoir.

Fermer

Commentaires (11)


C’est quoi l’illustration, un essaim Zerg ? <img data-src=" />


Si je ne m’abuse c’est une image générée par le Google deepDream:



http://googleresearch.blogspot.co.uk/2015/06/inceptionism-going-deeper-into-neur…


J’avais vu ça. C’est cool, vraiment. Ca donne envie de se mettre aux réseaux de neurones. Je suis intrigué depuis quelques temps à ces outils d’apprentissage machine. Je trouve ça énorme qu’une machine aussi stricte qu’un ordinateur puisse elle même se programmer pour répondre approximativement à un problème pour lequel on a pas besoin de décrire la façon de le résoudre.









Konrad a écrit :



C’est quoi l’illustration, un essaim Zerg ? <img data-src=" />





Ca ressemble à du deepdream, les chiens et les yeux en moins.



Pas mal ça;) J’allais m’y mettre prochainement pour la plateforme où je bosse. On a déjà des réseaux de neurones très efficaces sur des données floues. à voir le gain avec ça. Faut tester par rapport à DL4J voir si ya du gain.


Oui c’est un mouvement intéressant qu’ils le publient sous license Apache. À suivre.



Pour ceux que le sujet intéresse, un exemple moins abstrait :

http://karpathy.github.io/2015/10/25/selfie/


Ce nom…

TensorFlow &gt; Tenseur & Flow &gt; Ricci &gt; Perelman &gt; Poincaré. Il y a un rapport ?


Toc Toc Toc…



Skynet? C’est toi ?



T’es là ?


Il paraît qu’on doit dire Genesys maintenant. Mais Internet ne semble pas encore super clair sur la question <img data-src=" />


Genisys ?


“neurones artificiels jusqu’à cinq fois plus vite”

&nbsp;“TensorFlow est présenté globalement comme deux fois plus rapide que son prédécesseur”

&nbsp;On va dire qu’il est 3 fois plus rapide :p&nbsp;








John Shaft a écrit :



Il paraît qu’on doit dire Genesys maintenant. Mais Internet ne semble pas encore super clair sur la question <img data-src=" />





Tiens c’est vrai qu’il n’est plus du tout dénommé Skynet dans cette nouvelle timeline