Blog ENI : Toute la veille numérique !
💥 Un livre PAPIER acheté
= La version EN LIGNE offerte pendant 1 an !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Machine Learning
  3. Le Machine Learning : vue d'ensemble
Extrait - Machine Learning Implémentation en Python avec Scikit-learn (2e édition)
Extraits du livre
Machine Learning Implémentation en Python avec Scikit-learn (2e édition)
1 avis
Revenir à la page d'achat du livre

Le Machine Learning : vue d'ensemble

Un peu de vocabulaire

Plusieurs termes sont souvent utilisés indifféremment : Intelligence Artificielle (IA), Machine Learning (ML), Deep Learning (DL), Data Science (DS). Ils ne recouvrent cependant pas la même réalité, c’est pourquoi il est important de savoir les différencier.

Historiquement, l’Intelligence Artificielle est un domaine scientifique issu des mathématiques, de l’informatique et de la biologie. Deux objectifs étaient présents dès l’origine :

  • Soit créer une machine intelligente qui pourrait résoudre tout problème se présentant à elle.

  • Soit, plus simplement, simuler un processus cognitif, c’est-à-dire « donner l’impression » que la machine est intelligente.

Le premier but correspond à l’intelligence artificielle dite « générale » (ou IA forte). La machine serait alors dotée d’émotions et de capacités de raisonnement poussé, lui permettant « d’apprendre à apprendre ». Cependant, elle n’existe pas encore (si elle apparaît un jour) en dehors de la science-fiction.

Ne pas confondre « IA générale » et « IA généraliste ». Dans le premier cas, on parle d’IA forte. Dans le deuxième cas...

Les métiers de la data

Avec le développement du Machine Learning, de nouveaux métiers sont apparus. Il en existe aujourd’hui de nombreux, en complément de métiers plus traditionnels, comme pilote de projet ou développeur. Ils permettent de créer une équipe pouvant gérer un projet de bout en bout.

Créer des modèles est certes important mais cela n’est pas suffisant. Il faut aussi pouvoir déployer et maintenir des applications, et de nombreuses compétences différentes sont nécessaires.

À l’origine, seul le Data Scientist existait, mais l’importance des projets, le nombre de tâches à gérer et la multiplication des outils ont conduit à la spécialisation de ceux-ci, ce qui a mené à la création de ces nouveaux métiers, et le domaine continuant de croître, de nouveaux métiers sont amenés à continuer de se créer.

Il ne s’agit en fait pas réellement de métiers mais de rôles, et il est ainsi possible qu’une même personne joue plusieurs rôles à l’intérieur d’un même projet ou dans les différents projets où elle intervient.

Ces métiers se séparent en trois branches :

  • Une branche orientée « modèle »

  • Une branche orientée « intégration »

  • Une branche orientée « support »

Dans la branche « modèle », le premier est le Data Analyst. Son rôle est principalement de préparer les données et de les mettre en forme, soit pour en sortir directement des KPI (Key Performance Indicators ou indicateurs clés de performance), soit pour qu’elles soient ensuite injectées dans des algorithmes de Machine Learning. Il peut aussi fournir des tableaux de bord...

La croissance du Machine Learning

Le Machine Learning est un domaine porteur depuis plusieurs années, sûrement grâce aux nombreuses réussites marquantes. Pourtant les premiers travaux sur le sujet remontent à plusieurs décennies. Divers arguments peuvent être avancés pour expliquer cette explosion actuelle.

Tout d’abord, la puissance des ordinateurs a augmenté de manière exponentielle. Avec l’avènement du Cloud Computing, il n’est plus nécessaire d’acheter du matériel hors de prix. Il suffit de le louer au temps d’utilisation, ce qui permet à tous d’avoir à disposition des machines impressionnantes. Il faut aussi prendre en compte que pour certains calculs, en particulier pour le Deep Learning, les GPU (sur la carte graphique) ont devancé les CPU (sur le processeur) et ont encore multiplié la puissance disponible.

Les calculs sont plus rapides, mais le Machine Learning fonctionne à partir de données. Plus le problème est complexe, plus il est nécessaire d’avoir des volumes de données importants. C’est pourquoi le Big Data est souvent lié au Machine Learning : les sources de données se multiplient (par exemple avec l’avènement des objets connectés) et peuvent être stockées, gérées et utilisées. En résumé...

Formes d’apprentissage et tâches de ML

Le Machine Learning consiste à créer un modèle fruit d’un apprentissage (ou entraînement). Un « modèle » est donc un programme informatique qui a été créé non pas par un développeur, mais en utilisant un algorithme d’apprentissage.

Il existe plusieurs formes d’apprentissage définies par les données en entrée (ou variables explicatives) et les données en sortie (ou variables cibles).

Dans chaque forme d’apprentissage, il existe plusieurs tâches de ML spécifiques, qui correspondent à des catégories de problèmes. Ces tâches sont indépendantes du domaine considéré.

1. Apprentissage supervisé

L’apprentissage supervisé est, de loin, le plus courant en entreprise. Il s’agit de fournir à l’algorithme de nombreux exemples, avec les entrées et les sorties attendues. C’est en comparant le résultat du modèle au résultat attendu que celui-ci va s’améliorer.

Une analogie avec l’apprentissage humain : cela revient à apprendre les tables de multiplication. Pour chaque multiplication (comme 6x7), l’apprenant doit fournir une réponse qui est comparée à la réponse attendue (42).

Les principales tâches concernées en apprentissage supervisé sont la classification, la régression et la prévision.

a. Classification

Dans la tâche de classification, la sortie attendue est une catégorie, comme « malade » ou « sain » dans le domaine médical. Il s’agit de l’une des tâches les plus courantes, c’est pourquoi de nombreux algorithmes sont disponibles. L’algorithme d’apprentissage reçoit donc de nombreux exemples appartenant à toutes les catégories à prédire.

Les modèles associent souvent aux prédictions une probabilité dite « confiance », par exemple « malade » à 0.27 (ou 27 %) et « sain » à 0.73 (ou 73 %). Elle permet d’affiner les décisions prises ensuite selon une limite, appelée threshold en anglais ou seuil...

Méthodologie CRISP-DM

Comme tout projet d’informatique, les projets de Machine Learning ont besoin d’un cadre. Cependant, les méthodologies classiques ne s’appliquent pas ou très mal à la Data Science.

Parmi les méthodologies existantes, CRISP-DM est la plus couramment utilisée et c’est celle qui sera présentée ici. Plusieurs variantes existent.

Attention, CRISP est un cadre et non une structure rigide. Le but de l’utilisation d’une méthodologie n’est pas d’avoir une formule magique ou de se retrouver limité. Elle apporte surtout une idée de l’avancement et des étapes, ainsi que des bonnes pratiques à suivre.

1. Vue d’ensemble

CRISP-DM signifie Cross Industry Standard Process for Data Mining. Il s’agit donc d’un processus standard, ne dépendant pas du domaine d’application. À l’origine, la méthodologie a été créée dans le cadre d’un projet européen mené par un consortium d’entreprises.

La présence de Data Mining dans son nom (et non Machine Learning) indique que cette méthode est ancienne. En effet, elle date de 1996 dans sa première version. Une deuxième version était en cours de rédaction à partir de 2006, mais elle sera abandonnée en 2011 avant sa sortie. Elle est cependant totalement utilisable en l’état, même actuellement : il suffit de remplacer « Data Mining » par « Machine Learning ».

Cette méthode est itérative. Cinq phases s’enchaînent jusqu’à validation du résultat par le métier, avec des allers-retours possibles entre certaines.

Ces phases sont les suivantes :

  • Business Understanding : il s’agit de la phase de compréhension métier, qui n’est donc pas une phase technique.

  • Data Understanding : la phase de compréhension des données correspond à une phase de statistiques descriptives principalement et permet de prendre connaissance des données fournies.

  • Data Preparation : c’est dans cette phase de préparation des données que les modifications de format ou les créations de caractéristiques sont effectuées....