“Dormir au volant”, voici une formidable promesse qu’Elon Musk et autres patrons de la Silicon Valley s’évertuent à nous faire et que l’entreprise “Tesla” est en passe de tenir en développant ses voitures autonomes. Cette grande avancée est en grande partie due à l’usage du “Deep Learning” (ou “apprentissage profond” en bon français). Mais qu’est-ce que le Deep Learning et que permet-il réellement ?
Le Deep Learning est une technique d'apprentissage permettant d'apprendre, à partir de jeu de données, images ou textes, certains comportements afin d'arriver à associer une “entrée” (exemple : une image) à une sortie (exemple : l’objet de l’image). Il fait ainsi partie de la famille du Machine Learning, contenue elle même dans celle de l’Intelligence Artificielle :
La grande évolution apportée par le Deep Learning réside dans son haut niveau d’abstraction des données. En d’autres termes, contrairement aux autres méthodes de Machine Learning, le Deep Learning repose sur le postulat qu’en mettant en place un algorithme avec une architecture “assez complexe”, celui-ci devrait “être capable d’apprendre seul”. Pour ce fait, le Deep Learning repose sur un modèle s’inspirant du cerveau humain et fondé sur des réseaux de neurones :
Les réseaux de neurones, que nous présenterons plus en détail dans un prochain article, présentent des architectures articulées de différentes transformations non linéaires incluant des “couches de neurones” permettant des transformations intermédiaires des données d’entrée et offrant une plus grand marge dans la construction d’un modèle prédictif. Le fort développement du Deep Learning a été rendu possible grâce au développement des puissances de calculs fournie par les processeurs graphiques (GPU) ainsi que sur la mise en place de structures complexes de réseaux de neurones tels que les réseaux de neurones convolutifs (pour le traitement d’images), notamment suite aux travaux du chercheur français Yann Le Cun, désormais à la tête du laboratoire d'intelligence artificielle de Facebook.
Photo de Yann Le Cun sous le prisme “artistique” de DeepDream de Google
Le Deep Learning permet au sein des entreprises de traiter des problèmes prédictifs complexes que les algorithmes de Machine Learning simples peinent à résoudre. Ceci concerne en particulier le traitement d'images ou encore la reconnaissance vocale. Le Deep Learning permet par exemple aux entreprises d’analyser automatiquement des documents scannés telles que des factures ou encore d’inspecter automatiquement des pièces métalliques sur une ligne de production.
Plusieurs solutions se sont développés permettant de s’essayer au Deep Learning. TensorFlow, outil open source et développé par Google est l’un des frameworks de référence, utilisé aussi bien dans la recherche qu’en entreprise pour des applications en production. Afin de simplifier son utilisation, Google vient de lancer dernièrement une librairie de workflow baptisée Tensor2Tensor (T2T) qui simplifie l’utilisation de TensorFlow. D’autres outils existent par ailleurs : Theano, Pylearn2, Caffe, ou encore Deeplearning4j.
Pour conclure, malgré des progrès spectaculaires réalisés ces dernières années, le Deep Learning reste un domaine en constante évolution et dont beaucoup d’applications restent à découvrir. Pour en savoir plus, nous vous invitons à regarder l'excellente vidéo de David Louapre (Science étonnante) à ce sujet ou à contacter les équipes de DataGenius.
Gaël Le Floch