10 Minutes de lecture
Qu'est-ce que le Machine Learning : bien comprendre ce concept
Le machine learning, ou apprentissage automatique, est une composante du vaste domaine de l'intelligence artificielle (IA), une technologie dont les débuts concrets remontent à la première moitié du 20e siècle. En 1936, Alan Turing, mathématicien et cryptologue britannique, propose le concept de "machine universelle", à l'origine de l'ordinateur. En 1950, ce pionnier de l'intelligence artificielle invente le test de Turing, une méthode permettant de déterminer si un ordinateur est capable de penser comme un humain. À la même période, Marvin Minsky et Dean Edmonds, deux doctorants en mathématiques à Harvard, aux États-Unis, créent Snarc, le premier ordinateur à réseau de neurones.
Six ans plus tard, en 1956, le terme "intelligence artificielle" est prononcé pour la première fois, à l'occasion d'une conférence de John McCarthy, considéré comme le père de l'IA. Ce mathématicien américain a ainsi cherché durant sa carrière à développer un langage capable de traduire les raisonnements propres à l’humain dans des programmes informatiques. En 1962, il crée le laboratoire d'intelligence artificielle de l'université Stanford. Mais c'est à l'Américain Arthur Samuel, pionnier du jeu sur ordinateur et employé chez IBM, que l'on doit l'invention du terme "apprentissage automatique" en 1959. À la suite de ses recherches sur le jeu de dames, un ordinateur IBM parvient à battre le maître incontesté en la matière, Robert Nealey.
L'intelligence artificielle et le machine learning ne sont donc pas des disciplines nouvelles. Les progrès actuels, prenant appui sur le big data, laissent toutefois entrevoir des possibilités sans limite.
Comment le machine learning fonctionne-t-il exactement ? Quel est son champ d'action et quel rôle joue-t-il dans le vaste domaine des technologies ? Rise Up vous livre toutes les réponses dans cet article.
Qu'est-ce que le concept de Machine Learning (Apprentissage Automatique en français) : définition
La définition originelle du machine learning (ou apprentissage automatique), donnée en 1959 par l'inventeur du terme, Arthur Samuel, est la suivante : "champ d'étude qui donne aux ordinateurs la capacité d'apprendre sans être explicitement programmés à apprendre". Plus précisément, le machine learning fonctionne à partir d'algorithmes qui, de manière autonome, apprennent (par exemple à faire des prédictions) et améliorent leurs performances au fil du temps. Pour cela, ils ont besoin de gigantesques volumes de données. Les algorithmes traitent cette data pour en déceler des motifs (souvent appelés par leur équivalent anglais, "pattern"), qu'ils seront capables de retrouver en présence de nouvelles données. Il existe plusieurs types de machine learning, sur lesquels nous reviendrons : apprentissage supervisé, apprentissage non supervisé et apprentissage par renforcement.
Les capacités de cette technologie ne cessent de se développer, pour toucher aujourd'hui quasiment tous les domaines, de la voiture autonome à la banque, des réseaux sociaux à la grande distribution, en passant par la formation professionnelle. Le machine learning est donc utilisé par les entreprises comme un outil permettant d'impacter le monde réel et de résoudre de très nombreux types de problèmes. Le data scientist est le principal professionnel expert en la matière.
Quelle est la différence entre Intelligence Artificielle (IA) et Machine Learning ?
Le machine learning constitue un sous-ensemble, une branche de l'intelligence artificielle. Le périmètre de l'apprentissage automatique est donc plus étroit et ciblé. Au sens large, l'IA n'est en effet rien de moins qu'un concept visant à imiter l'intelligence humaine. Ses contours sont donc difficiles à établir. Le Conseil de l'Europe définit l'IA comme "une discipline qui réunit des sciences, théories et techniques (notamment logique mathématique, statistiques, probabilités, neurobiologie computationnelle et informatique) et dont le but est de parvenir à faire imiter par une machine les capacités cognitives d’un être humain".
Une manière simple de retenir l'articulation entre IA, machine learning et d'autres sous-catégories, est de visualiser des cercles concentriques. Le plus grand cercle correspond à l'intelligence artificielle, un deuxième cercle, plus petit, représente le machine learning. Ce dernier abrite un cercle de taille encore inférieure : les réseaux de neurones, qui contiennent eux-mêmes le cercle "deep learning".
Quel est le lien entre Machine Learning et Deep Learning ?
Voyons tout d'abord la définition du deep learning ("apprentissage profond" en français) donnée par la CNIL (Commission nationale de l'informatique et des libertés). Il s'agit d'un "procédé d’apprentissage automatique utilisant des réseaux de neurones possédant plusieurs couches de neurones cachées. Ces algorithmes possédant de très nombreux paramètres, ils demandent un nombre très important de données afin d’être entraînés."
Le deep learning est donc un sous-domaine du machine learning, comme nous l'avons vu. Si les deux techniques présentent de nombreuses similitudes, deux éléments les distinguent : la complexité de l'analyse des données, et la quantité de données traitées. Le deep learning a la particularité de baser son fonctionnement sur des réseaux de neurones artificiels, comme indiqué dans la définition. Le traitement par couches permet d'affiner le travail réalisé par les algorithmes. Le principe : une première couche de neurones effectue des calculs puis envoie ses résultats à une deuxième couche, et ainsi de suite. Plus les couches sont nombreuses (donc les étapes de calculs), plus le système est à même de résoudre des problèmes complexes.
Voici quelques-unes des nombreuses applications du deep learning :
- Classification d'images.
- Reconnaissance faciale.
- Détection d'objets.
- Personnalisation de l'expérience client.
- Maintenance prédictive des équipements industriels (le système prévoit les pannes avant qu’elles ne surviennent).
Comment le Machine Learning fonctionne-t-il ?
Pour fonctionner, le machine learning a besoin d'un vaste corpus de données, qui lui serviront de matière pour s'entraîner et tendre vers de meilleures performances au fil du temps. Il faut comprendre également que les algorithmes fondent leur travail sur un principe clé, que voici : une relation mathématique et statistique existe entre toutes les combinaisons de données d'entrée et de sortie.
Les algorithmes ne connaissent pas à l'avance la relation mathématique entre les données d'entrée et de sortie. Ils vont la trouver eux-mêmes à partir des jeux de données fournies.
De là, un projet de machine learning se déroule comme suit :
- Première étape : sélection et préparation d'un ensemble de données d’entraînement.
- Deuxième étape : sélection d'un type d'algorithme (chaque algorithme dispose d'une "spécialité" en termes de problème à résoudre).
- Troisième étape : entraînement de l'algorithme. On compare alors ses résultats avec les résultats attendus. L'entraînement se poursuit jusqu'à ce que l'algorithme fournisse le bon résultat.
- Quatrième étape : utilisation et amélioration du modèle de machine learning avec le traitement de nouvelles données.
Les projets de machine learning sont généralement pilotés par un data scientist.
Qu'est-ce qu'un arbre de décision en Machine Learning ?
Commençons par définir le terme "arbre de décision", qui n'a pas de lien avec l'IA. Il s'agit d'un outil d'aide à la décision qui, graphiquement, ressemble à un arbre. La racine représente la décision à prendre (exemple : "Quel smartphone choisir ?"). Les branches porteuses correspondent aux principaux choix ("écosystème iOS", "écosystème Android") ; sur les branches secondaires apparaissent les sous-choix ("iPhone 14", "iPhone 15", etc. pour la première branche secondaire, "Samsung", "Sony", etc. pour la deuxième branche secondaire). Les branches continuent de se multiplier de manière hiérarchisée, jusqu'à l'obtention d'une liste de choix exhaustive. Il convient ensuite d'établir des critères discriminants (par exemple : "prix du smartphone", "taille de l'écran", "autonomie"), auxquels on applique une note ou un pourcentage (exemple : le prix le plus bas sera noté 10 et le prix le plus élevé 0). Ces chiffres permettent d'établir un classement, donc de dégager le choix optimal. Le résultat ici : une classification des smartphones, du mieux noté au moins bien noté.
Dans le cadre de l'intelligence artificielle, l'arbre de décision est l'un des types d'algorithmes utilisés par le machine learning. Son fonctionnement reprend celui de l'arbre que nous avons précédemment décrit. Le but est ainsi de fournir des recommandations en se basant sur des données classifiées.
Il existe un algorithme proche, appelé random forest (forêt aléatoire). Ce modèle de machine learning est constitué de plusieurs arbres de décision. Dans cette approche, l'algorithme assemble les sorties de l'ensemble des arbres de décisions pour atteindre un résultat unique.
Exemples d'utilisation du Machine Learning
Les applications du machine learning sont extrêmement larges. Voici quelques exemples :
- Diagnostic médical.
- Détection des SPAM.
- Recommandations de produits.
- Détection de la fraude.
- Reconnaissance vocale.
- Chatbots.
- Tarification dynamique (billets d'avion ou de train par exemple).
- Reconnaissance et classification d'images (exemple : l'analyse des rayons d'un supermarché pour identifier les articles en faible quantité).
- Gestion des stocks.
- Conduite autonome.
- Cybersécurité.
Quels sont les deux grands types d'algorithme en Machine Learning ?
Il existe deux grands types de modèles de machine learning, dont la différence se fonde sur la méthode employée pour traiter les données : le machine learning supervisé (supervised Machine Learning) et le machine learning non supervisé (unsupervised machine learning). Nous parlerons également d'une approche "hybride" : le machine learning semi-supervisé.
Machine Learning supervisé (supervised Machine Learning)
Approche courante en machine learning, l'apprentissage supervisé suppose l'intervention de l'humain (en général un data scientist) sur la data exploitée par le système. Celui-ci fournit à l'algorithme le résultat attendu et étiquette les données. L'étiquetage des données correspond à leur identification (image, texte...), qui se matérialise par l'ajout d'une étiquette informative sur chacune d'entre elles. Ici, l'algorithme est donc guidé par l'être humain.
Parmi les exemples de machine learning supervisé, mentionnons :
- La régression linéaire, utilisée pour résoudre certains types de problèmes via la réalisation de prédictions (évolution des salaires, des ventes, des prix ou de toute autre dimension).
- La classification. Les modèles de classification sont généralement employés pour la classification d’images, la classification de documents et le traitement automatique du langage naturel, autrement dit le traitement du langage humain. On parle de NLP (Natural Language Processing). Le NLP donne la capacité aux machines de comprendre le langage humain tel qu'il est écrit et/ou parlé.
- Les machines à vecteurs de support (SVM - Support-Vector Machine). Ces techniques s'appliquent à des domaines variés, comme la finance et la bio-informatique.
Machine Learning non supervisé (unsupervised Machine Learning)
Ici, le système doit travailler avec des données non étiquetées pour découvrir des modèles. Cette méthode nécessite de vastes corpus de données pour que l'algorithme puisse déterminer les motifs (patterns) sans l'aide de l'humain et étiqueter lui-même les données. Une fois ce travail réalisé, il trie et classe les données par lui-même.
Le clustering en Machine Learning
Le principal processus d'apprentissage non supervisé est connu sous le nom de clustering. Cette méthode est pertinente pour séparer les données en groupes, chaque groupe possédant des caractéristiques propres. L'utilisateur final peut par exemple être un marketeur qui souhaite segmenter sa base clients. Au-delà, les entreprises s'approprient cette approche dans différents buts, par exemple :
- Analyse des réseaux sociaux.
- Détection d'anomalies.
- Imagerie médicale.
- Segmentation d'image.
Machine Learning semi-supervisé
À mi-chemin entre l'apprentissage automatique supervisé et l'apprentissage automatique non supervisé se trouve le machine learning semi-supervisé. Dans ce cas de figure, l'algorithme s'entraîne à partir d'un jeu de données étiquetées restreint, ce qui, ensuite, va lui permettre la classification et l'extraction de caractéristiques d'un jeu de données non étiquetées plus volumineux.
L'apprentissage par renforcement : autre technique incontournable du Machine Learning
Mentionnons également une autre technique importante de Machine Learning : l’apprentissage par renforcement. Répandu dans la compétition homme / machine (jeu sur ordinateur par exemple), l'apprentissage par renforcement correspond à un apprentissage par l'erreur : l'algorithme de machine learning multiplie les essais jusqu'à atteindre le résultat attendu. Il s'agit donc d'un apprentissage par l'expérience et l'efficacité de l'algorithme s'améliore au fil du temps.
Quel est l'objectif du Machine Learning ?
Caractérisé par sa polyvalence, le machine learning sert plusieurs objectifs :
- La réalisation d'analyses prédictives (anticipation de tendances, prédiction de résultats à venir ou de valeurs manquantes).
- La classification, dont nous avons parlé. Parmi les exemples courants, citons la classification des e-mails, automatiquement placés dans les spams ou dans la boîte de réception principale.
- La recommandation personnalisée, via l'analyse des comportements et des préférences. Une technique employée massivement dans la publicité en ligne par exemple.
- L'optimisation et l'automatisation de processus métiers (exemple : traitement automatisé de commandes et de factures).
- L'amélioration à la fois de la prise de décision et des performances de l'entreprise ou de l'utilisateur final.
Pour atteindre ces objectifs, les technologies de machine learning exploitent les données provenant du big data.
Pourquoi normaliser les données provenant du Machine Learning ?
Normaliser les données avant un projet de machine learning constitue souvent un passage obligé. Il s'agit d'un prétraitement des données qui a pour but de réduire la complexité des modèles. En effet, les données ne sont pas toujours comparables à l'état brut.
C'est une étape indispensable lorsque certains algorithmes entrent en jeu (comme le clustering, que nous avons évoqué).
À l'inverse, la normalisation des données ne se justifie pas quand le système fait appel à d'autres types d'algorithmes. Les arbres de décision, par exemple, n'ont pas besoin de données normalisées car ces dernières ne modifient pas le résultat.
Il convient par ailleurs d'être prudent avec cette technique car normaliser signifie standardiser. Autrement dit, le processus aboutit nécessairement à une perte d'informations de départ.