Le Machine Learning est une branche de l'intelligence artificielle et le Deep Learning (apprentissage profond) en constitue le domaine le mieux adapté aux applications les plus complexes.
Deep Learning avec TensorFlow, d'Aurélien Géron, présente comment maîtriser le Deep Learning à l'aide de la librairie TensorFlow, créée par Google. Aurélien Géron fait le point sur le Machine Learning et son avenir.
Machine Learning, quel avenir ?
Le Machine Learning (ML), aussi appelé apprentissage automatique, consiste à créer des programmes capables d'apprendre à partir d'exemples. Par exemple, un programme de ML peut apprendre à détecter des tumeurs dans une radiographie, pourvu qu'on lui montre au préalable de nombreuses radiographies en lui indiquant la position des tumeurs.
Le Machine Learning : ses utilisations
Les applications du Machine Learning sont extraordinairement vastes : l'analyse d'image est un composant essentiel des voitures autonomes, notamment pour détecter les piétons, les véhicules et la signalisation. Il est au cœur des systèmes de traduction automatique, de reconnaissance de la parole, de recommandation de contenu, etc. Il s'introduit dans l'industrie, par exemple pour la détection d'anomalies de production, il envahit les hôpitaux, pour l'aide au diagnostic médical, il gagne aussi les banques, pour prédire les cours, et ainsi de suite. On peut comparer ce phénomène à l'arrivée de l'électricité, du téléphone ou de l'Internet : bientôt, toutes les entreprises utiliseront le Machine Learning d'une façon ou d'une autre.
La plupart des applications impressionnantes du Machine Learning sont issues d'une branche particulière du Machine Learning, appelée Deep Learning (DL), ou apprentissage profond. Celui-ci se fonde sur les réseaux de neurones profonds : un réseau de neurones est une modélisation très simplifiée du fonctionnement de notre propre cerveau, et quand on précise « profond », cela signifie que le réseau contient un empilement de multiples couches de neurones artificiels. Le Deep Learning est capable d'apprendre à réaliser des tâches très complexes (par exemple maîtriser le jeu de Go au point de vaincre le champion du monde), mais l'apprentissage requiert une grande puissance de calcul et souvent des millions d'exemples pour l'entraînement.
Machine Learning, intelligence artificielle et robotique
L'intelligence artificielle (IA) englobe toutes les techniques permettant de créer des systèmes qui paraissent intelligents, ce qui inclut le ML, mais pas seulement. Certes, le Machine Learning connaît la plus forte croissance actuellement, mais de nombreuses autres branches de l'IA ne reposent pas sur l'apprentissage. Par exemple, les incroyables robots marcheurs de la société Boston Dynamics, superbes exemples d'intelligences artificielles, n'utilisent pas le ML. Ces robots sont entièrement programmés, avec des algorithmes très sophistiqués, mais sans apprentissage automatique.
La robotique se préoccupe de la construction physique des robots, et elle emploie toutes sortes d'algorithmes pour les contrôler. Il peut s'agir d'algorithmes de ML, ou d'autres domaines de l'IA, voire de tout autre algorithme. Grâce à la révolution actuelle du Machine Learning, les robots bénéficient désormais de meilleurs algorithmes de contrôle, ce qui leur permet d'effectuer des tâches plus variées et de façon plus autonome.
Mais il ne faut pas non plus surestimer les progrès en robotique : avant que les robots ne s'immiscent vraiment dans le quotidien de chacun, il faudra franchir de nombreux obstacles, notamment améliorer leur autonomie énergétique, leur mobilité, les rendre plus généralistes, le tout en diminuant leur coût considérablement. La révolution robotique viendra sans doute, mais pas tout de suite.
La révolution actuelle est algorithmique, et non mécanique: elle a d'abord débarqué sur Internet, puis dans nos téléphones portables, et elle envahit maintenant les systèmes d'information des entreprises. Le tout sous forme de 0 et de 1, et non sous forme de moteurs et de boulons.
Machine Learning pour les géants du web et bien d'autres
On dit souvent que si le Machine Learning est une fusée, alors les données sont le carburant, et la puissance de calcul est le moteur. Les entreprises qui, comme Google, ont la main sur une masse gigantesque de données et contrôlent une inimaginable puissance de calcul, sont de loin les mieux placées pour bénéficier du Machine Learning et en devenir les leaders.
Mais toutes les entreprises possèdent des données, souvent en quantités importantes. De plus, il existe des façons d'entraîner des systèmes de ML avec relativement peu de données, par exemple en réutilisant des systèmes déjà entraînés sur des tâches similaires, ou en pré-entraînant un système sur une tâche semblable pour laquelle les données sont plus facilement disponibles. De plus, les chercheurs progressent vite et on peut espérer que les systèmes de demain seront entraînés avec beaucoup moins de données. Après tout, il n'est pas nécessaire de montrer un million de chats à un enfant avant qu'il sache les reconnaître. Et pour ce qui est de la puissance de calcul, il est aujourd'hui très facile d'en louer sur le Cloud. Ce n'est donc plus un facteur limitant.
Bref, toutes les entreprises peuvent bénéficier du Machine Learning, qu'il s'agisse de prédire les résultats de l'année, fluidifier le service clients, détecter les fraudes, segmenter les clients, créer un système de recommandation de produits, etc. Mais le ML ne permet pas seulement d'améliorer des systèmes existants: il offre de nouvelles possibilités. Par exemple, ses capacités d'analyse d'images permettent d'envisager l'installation de caméras dans des magasins pour analyser le regard des clients et mieux comprendre ce qui les intéresse. On peut imaginer aussi d'analyser les images satellites des parkings des supermarchés pour estimer chaque jour leur chiffre d'affaires. Les possibilités sont immenses.
Dans le traitement du langage naturel, on peut imaginer le développement de l'analyse automatique des enregistrements d'appels clients, ou encore la retranscription automatique des dialogues des réunions.
Autre exemple: chez Google, je dirigeais l'équipe de classification automatique des vidéos YouTube. Le système analyse les images et le son des vidéos, le titre et la description, ainsi que des informations sur l'usage de cette vidéo, et il est capable de trouver quels sont les sujets principaux de chaque vidéo. Cela permet ensuite de recommander la meilleure vidéo aux internautes, ou encore de faciliter sa recherche. On peut imaginer que ce type de classification automatique se développera dans de nombreuses entreprises.
Machine Learning, un avenir à construire
Le Machine Learning s'adresse aux data scientists ainsi qu'à de plus en plus de développeurs qui se reconvertissent.
On trouve aujourd'hui énormément de ressources en ligne, des vidéos, des blogs, des MOOCs, mais les informations restent très éparpillées. Il existe aussi un bon nombre de livres, mais généralement ils sont rédigés par et pour des chercheurs, avec peu d'exemples de code, voire aucun.
C'est pourquoi j'ai écrit les livres Machine Learning avec Scikit-Learn et Deep Learning avec TensorFlow : mon objectif était de permettre à toute personne sachant programmer de pouvoir apprendre très concrètement comment mettre en œuvre des systèmes d'auto-apprentissage sophistiqués, par exemple pour traiter des images, du texte, des séries temporelles, etc., avec des exemples de code disponibles sur GitHub. J'espère que ces livres participeront à former le plus grand nombre à cette technologie incroyable qui est en train de façonner notre présent et notre avenir.