• 10 hours
  • Medium

Free online content available in this course.

course.header.alt.is_video

course.header.alt.is_certifying

Got it!

Last updated on 1/12/23

Identifiez les différentes étapes de modélisation

Dans le chapitre précédent, vous avez découvert le cycle de travail du data scientist. Nous allons maintenant parler spécifiquement de la partie qui nous intéresse dans ce cours, c'est-à-dire la modélisation. Et pour modéliser les données, un vrai data scientist utilise son arme secrète de ninja : le fameux machine learning.

Démystifions le machine learning

Lorsqu'on entend parler de machine learning – ou plus généralement de l'intelligence artificielle, dont le machine learning est un sous-domaine – on pense généralement à ça :

Terminator, c'est pas pour tout de suite
Terminator... Ce n'est pas pour tout de suite !

Mais les experts du domaine sont formels : malgré toutes les inquiétudes évoquées dans les médias, le machine learning, et de manière plus générale l'intelligence artificielle, ne constituent pas une réelle menace. En l'état actuel, on est vraiment loin d'avoir atteint un niveau d'intelligence suffisant chez les machines pour avoir de quoi s'inquiéter.

Le machine learning constitue, comme on l'a vu dans le chapitre précédent, une manière de modéliser des phénomènes, dans le but de prendre des décisions stratégiques.

Avant la modélisation

Comme nous l'avons vu dans la partie précédente, les étapes de travail d'un data scientist sont les suivantes :

Cycle de travail du data scientist
Cycle de travail du data scientist

Un exemple concret

Un data scientist qui travaille dans le web a souvent la possibilité de récupérer les analytics du site pour lequel il travaille (des informations sur les visites et le comportement des utilisateurs sur le site). À partir de ces données brutes, il va sélectionner, nettoyer et transformer les données pertinentes. Par exemple, au lieu de récupérer directement le nombre de visites journalières, il va plutôt récupérer leurs variations d'un jour sur l'autre.

Il va ensuite explorer ces données pré-traitées, c'est-à-dire visualiser les différentes variables, essayer de comprendre les comportements (les valeurs extrêmes ou aberrantes, les corrélations, etc.). Une fois qu'il a une bonne idée de ce à quoi il a affaire, il peut définir une problématique plus précise à laquelle répondre.

Pour amener de la valeur ajoutée à partir de ces données, le data scientist pourrait effectuer un classement des utilisateurs les plus susceptibles de revenir sur le site, ce qui permettrait ensuite de cibler les utilisateurs les plus engagés par des campagnes marketing ciblées.

Une fois l'exploration faite et la question de recherche définie, le data scientist peut passer à l'étape de modélisation.

L'étape de modélisation

Imaginez que vous êtes un data scientist. Vous êtes maintenant à l'aise avec l'ensemble des données récupérées pour vos analyses. Vous avez une connaissance des objectifs principaux de l'entreprise, ce qui vous a aidé à synthétiser les différentes variables qui interviennent, ainsi de visualiser les différents comportements et corrélations présents au sein de ces données.

Le problème de machine learning constitue l'étape suivante et permet à un ordinateur de modéliser les données qui lui sont fournies.

"Modéliser" signifie dans ce cas représenter le comportement d'un phénomène, afin de pouvoir aider à la résolution d'un problème concret de l'entreprise. 

Mais pourquoi parle-t-on d'apprentissage ?

En machine learning, l'algorithme se construit une "représentation interne" afin de pouvoir effectuer la tâche qui lui est demandée (prédiction, identification, etc.). Pour cela, il va d'abord falloir lui entrer un jeu de données d'exemples afin qu'il puisse s'entraîner et s'améliorer, d'où le mot apprentissage. Ce jeu de données s'appelle le training set. On peut appeler une entrée dans le jeu de données une instance ou une observation

Voici un exemple de jeu de données images classique qui permet d'entraîner un modèle de machine learning. Chaque image constitue une observation du data set.

Un exemple de jeu de données classique (appelé CIFAR-10) qui permet d'entraîner un modèle de machine learning
Source : karpathy.github.io

Vous allez donc être responsable dans une première phase du choix et de l'entraînement de l'algorithme d'apprentissage du modèle, mais le traitement de la tâche spécifique sera appris à partir du training set et ensuite effectué par l'algorithme lui-même dans une seconde phase.

Dans le schéma ci-dessous, vous pouvez voir les différentes étapes qui interviennent dans l'utilisation d'un algorithme de machine learning. Vous serez responsable de la phase 1 et vous pourrez ensuite simplement passer les données dans le modèle durant la phase 2.

Un détail de des deux phases du process de machine learning.
Un détail des deux phases du process de machine learning

Comme on peut le voir sur le schéma ci-dessus, un problème d'apprentissage machine comporte ainsi différents éléments spécifiques :

  • les données (les données d'entraînement mais aussi les nouvelles données) ;

  • la tâche spécifique à accomplir (prédire, recommander, décider quelque chose, etc.) ;

  • l'algorithme d'apprentissage en lui-même ;

  • l'analyse d'erreur (ou mesure des performances du modèle).

Laissez-moi maintenant détailler un peu plus chacun de ces éléments dans les prochaines sections !

Les données

Nous l'avons déjà dit, les données constituent littéralement le nerf de la guerre de la data science. 😉

Plus vous aurez une bonne compréhension de vos données, plus vous serez à même de pouvoir les utiliser à bon escient lors de la phase d'entraînement de votre modèle statistique. Nous allons rapidement donner une vue d'ensemble du type de données habituelles rencontrées en machine learning.

Les bases de données

Cela coule de source, mais les bases de données constituent la source principale de récupération de données par les data scientists. Ces bases de données peuvent comprendre différents types d'information, une bonne partie généralement spécifique à l'activité de l'entreprise.

À titre d'exemple et de manière non exhaustive :

  • les logs d'un serveur web ;

  • le catalogue produits d'un site de e-commerce ;

  • les transactions bancaires ;

  • les comportements des utilisateurs d'un site.

Les données brutes

D'autres données brutes, souvent plus complexes et nécessitant des pré-traitements spécifiques pour les rendre manipulables par les algorithmes, peuvent servir de sources pour un problème de modélisation.

Le texte

Le texte libre, rédigé en langage naturel (humain), est ainsi une autre source de données principale pour le travail de data scientist. Cela comporte tous les types de texte auxquels on peut penser naturellement (articles, livres, messages, etc), mais aussi d'autres types de textes tels que du code HTML ou encore des séquences d'ADN.

Les images (et vidéos)

Les images sont aussi une des sources de captation de l'environnement souvent utile sur des problématiques d'entreprise. Beaucoup d'entreprises ont des banques d'images à traiter pour les classer par type ou autre.

En traitement des images, les principes de modélisation et d'apprentissage restent sensiblement les même. Il y a cependant un certains nombre de techniques de pré-traitement spécifiques qui permettent d'obtenir des entrées plus simples pour les algor
Un exemple de pré-traitement d'image appelé seuillage, qui permet de simplifier ensuite l'apprentissage d'un modèle statistique (crédits : The MathWorks, Inc.) 
IoT (Internet des objets)

Les objets connectés sont une autre source de données brutes, qui récupèrent un grand nombre de données grâce à leurs capteurs. Un bon exemple est l'entreprise Nest, qui a utilisé la data science pour créer un thermostat intelligent qui optimise la consommation d'électricité en surveillant à la fois la température, la présence des habitants, etc.

Un exemple d'objet connecté : le thermostat intelligent de l'entreprise Nest. Source: http://nest.com
Un exemple d'objet connecté : le thermostat intelligent de l'entreprise Nest (crédits : Nest)

La tâche à accomplir

La tâche spécifique à accomplir correspond au problème qu'on cherche à résoudre grâce à la modélisation du phénomène. On peut distinguer un certain nombre de cas qui reviennent souvent dans un environnement business, tels que les recommandations de produits par exemple. Je vous ai aussi déjà cité l'identification de transactions frauduleuses, la prédiction de l'impact d'une campagne marketing sur le taux de conversion ou la prédiction du prix optimal d'un produit pour maximiser le nombre de ventes.

Chaque tâche se traduira différemment et nécessitera, bien sûr, le choix d'algorithmes différents. Nous examinerons dans le dernier chapitre de cette partie quelques problématiques courantes et comment elles se traduisent en problèmes de machine learning.

L'algorithme d'apprentissage

L'algorithme d'apprentissage constitue la méthode avec laquelle le modèle statistique va se paramétrer à partir des données d'exemple. Il existe de nombreux algorithmes différents ! On choisira un type d'algorithme particulier en fonction du type de tâche que l'on souhaite accomplir et du type de données dont on dispose. En gros, quelle est l'entrée de l'algorithme et quelle est la sortie

Quelques exemples d'algorithmes de machine learning, dont vous avez peut-être déjà entendu parler :

  • la régression linéaire ;

  • K-nn ;

  • les Support Vector Machine (SVM) ;

  • les réseaux de neurones ;

  • les random forests.

La mesure des performances

Mesurer les performances fait partie intégrante du travail de modélisation. Il faut en général déterminer une mesure principale, souvent spécifique à la tâche à accomplir. Le choix de cette métrique est très important ! Vous allez comprendre pourquoi avec un petit exemple simple.

Exemple

Imaginez que vous voulez créer un algorithme de détection de fraudes bancaires. Vous voulez mesurer à quel point votre programme est performant. Une manière de faire serait de mesurer la proportion totale de transactions détectées comme fraude. Cependant, on compte ici les transactions qui ne sont pas des fraudes et qui ont quand même été notées comme en étant (appelé "faux positifs"). Donc, avec ce genre de métrique, on n'est pas exigeant sur ce type d'erreur produit par notre algorithme. Il faut peut-être utiliser une autre métrique plus pertinente. Par exemple, préciser la proportion de "vraies fraudes" détectées par rapport au total de transactions détectées comme frauduleuses.

On voit donc qu'il faut bien réfléchir à une métrique plus pertinente pour être sûr de mesurer correctement la qualité de son algorithme.

En résumé

Le machine learning est l'apprentissage d'un modèle statistique par la machine grâce à des données d'entraînement. Un problème de machine learning comporte plusieurs éléments spécifiques :

  • des données ;

  • une tâche à accomplir ;

  • un algorithme d'apprentissage ;

  • une mesure des performances.

Ever considered an OpenClassrooms diploma?
  • Up to 100% of your training program funded
  • Flexible start date
  • Career-focused projects
  • Individual mentoring
Find the training program and funding option that suits you best
Example of certificate of achievement
Example of certificate of achievement