TensorFlow de Google

–> Tensor Processing Unit (TPU)

News:

  • Mai 2017: Au dernier Google I/O, nouvelle version de TensorFlow, appelé TensorFlow lite. Voir article. Version optimisée pour les mobiles afin de permettre aux développeurs de concevoir des applications fonctionnant sur des smartphones Android.
  • Mars 2017: Cloud Video Intelligence. Dans cet exemple, L’ IA analyse la scène vidéo, catégorise les objets visibles dans celle-ci et leur attribue des pourcentages d’apparition. Video Intelligence API, permettra aux développeurs d’obtenir le détail des contenus d’une vidéo grâce à ses «puissants modèles d’apprentissage automatique» qui peuvent y identifier des éléments avec précision, et sera accessible via la GCP (Google Cloud Platform).
  • Sortie de la version 1.0: Plus rapide, compilateur spécial expérimental pour les graphes baptisé XLA (Accelerated Linear Algebra) et capable de cibler les processeurs principaux (CPU) et les processeurs graphiques (GPU). Skflow, une interface simplifiée pour l’apprentissage automatique et TensorFlow Slim, une bibliothèque légère pour la définition, la formation et l’évaluation de modèles dans TensorFlow. Voici comment upgrader son code de 0.n à 1.0.
  • Février 2017: Google Brain travaille sur des réseaux neuronaux capables d’implémenter leurs propres formes de chiffrement.
  • Décembre 2016: Dossier sur Tensorflow dans GNU/Linux Magazine n°198.
  • Novembre 2016: En utilisant une sorte de tampon de replay mimant la faculté de rêver, Google DeepMind a X10 sa vitesse d’apprentissage. DeepMind, s’était déjà illustrée par sa capacité à apprendre seule à jouer à des jeux vidéo, à parler comme un humain ou encore à terrasser le champion de monde du jeu de Go, elle sait également désormais lire sur les lèvres: taux de réussite de 46,8% quand, un professionnel n’a obtenu qu’un score de 12,4%. Elle comprend aussi la physique!
  • DeepMind veut tester ses recherches en intelligence artificielle dans le  domaine du jeu vidéo. Lors du BlizzCon 2016: le jeu StarCraft II sera ouvert aux chercheurs en IA. Pour cela, la filiale de Google a développé une interface qui simplifie les graphismes de StarCraft II en éléments visuels de base (des pixels, comme vous pouvez le voir dans la vidéo suivante) qui sont mieux adaptés pour alimenter le système d’apprentissage automatique. Pour travailler en temps réel: DNC (Differential Neural Computer), une technique qui permet à l’IA d’utiliser sa propre mémoire pour apprendre et trouver la réponse aux questions.
  • Google qui utilisait jusqu’à présent la traduction phrase par phrase (phrase-based machine translation ou PBMT), va utiliser maintenant une méthode basée sur le Deep Learning nommée long short-term memory ou LSTM (voir article et ce document). Baptisé Google Neural Machine Translation system (GNMT), cela réduit de 55 à 85% le taux d’erreur par rapport à la version actuelle de l’algorithme de Google Traduction (pour l’instant, octobre 2016, seulement actif du chinois <–> Anglais) – cette vidéo montre aussi l’utilisation en RA.
  • Novembre 2015: 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. Des processeurs dédiés ont été développés. Voir article sur ce site. Possibilité d’utiliser la librairie Keras. Peut être appliqué à n’importe quels jeux de données et peut être compilé en C++ ou Python. Voir exemple d’utilisation sous Raspberry Pi avec la version prebuilt “inception” qui permet la reconnaissance d’objets.
  • Octobre 2015: AlphaGo (voir Wikipédia), l’IA de Google DeepMind a battu par 5 parties à 0 le champion européen de Go Fan Hui, puis en mars 2016, a terrassé Lee Sedol, le champion du monde, en 4 parties à 1.

Logiciels et API tiers:

  • Sonnet, bibliothèque de réseau neuronal orientée objet, est désormais open source. La bibliothèque utilise une approche orientée objet, similaire à Torch / NN, permettant de créer des modules qui définissent le passage en avant de certains calculs. Sonnet est conçu spécifiquement pour fonctionner avec TensorFlow et, en tant que tel, ne vous empêche pas d’accéder aux détails sous-jacents tels que Tensors et les variables système. Les modèles écrits dans Sonnet peuvent être mélangés librement avec le code TensorFlow brut dans d’autres bibliothèques de haut niveau. Voir source.
  • Inkling est un langage propriétaire de haut niveau qui compile la bibliothèque open source TensorFlow.  Il s’écarte des algorithmes d’IA dynamiques qui nécessiteraient autrement une expertise dans l’apprentissage par machine. Déclaratif et fortement typé, le langage ressemble à un croisement entre Python et SQL d’un point de vue syntaxique. La version 1.0 du langage est attendue vers la fin du mois de juin 2017.
  • Embedding Projector, composant Open Source de Tensor Flow permettant la visualisation de données. Voir présentation (et résumé en Français).
  • TensorBoard est l’interface permettant de visualiser la progression de l’apprentissage.
  • Support du multi GPU via OpenCL ou CUDA via CuDNN
  • L’utilisation de Keras simplifie l’utilisation de TF (doc officielle)

Projets utilisant TF:

Sites et ressources:

Par Bénicourt