La Data Science
Objectif du chapitre
Que ce soit dans la nature ou dans les entreprises, les issues de certains processus sont incertaines et s’apprêtent à des phénomènes aléatoires. Ce caractère aléatoire peut-être une réalité ou une simple apparence. Dans ce dernier cas, il est tout à fait légitime d’essayer de modéliser et de comprendre ces événements. Étudier de tels phénomènes n’est évidemment pas une tâche aisée. Le Machine Learning propose un cadre théorique et algorithmique pour justement modéliser ces phénomènes. L’objectif de ce premier chapitre est d’introduire les concepts généraux du Machine Learning et de la Data Science.
Après la lecture de ce chapitre, même si certains concepts ne sont pas clairs, sachez que des éclaircissements seront apportés par les chapitres suivants. Le lecteur est d’ailleurs invité à y revenir pour faire le lien entre ces concepts et les cas concrets abordés dans les autres chapitres. En effet, les deux premiers chapitres de ce livre serviront de base aux suivants, de sorte qu’après leur lecture, le lecteur pourra directement aborder n’importe quel autre chapitre du livre.
À la fin de ce chapitre, le lecteur aura abordé :
-
Les étapes fondamentales...
L’objectif recherché en Machine Learning
Les phénomènes étudiés en Machine Learning peuvent être considérés comme des systèmes qui, en fonction de leur environnement, présentent un comportement particulier face à certains événements.

Figure 1-1 : un système avec entrées, traitement et sorties.
Une expérimentation Machine Learning
Comme toute expérimentation scientifique, réussir une expérimentation en Machine Learning nécessite d’appliquer une méthodologie avec beaucoup de rigueur. Comme évoqué à la section précédente, l’objectif du Machine Learning est de répondre à un besoin métier en partant des données à la recherche du modèle prédictif le plus robuste possible. Pour y parvenir, il faut se poser plusieurs questions, définir un ensemble d’étapes à suivre, fixer l’objectif de chaque étape, réaliser plusieurs tests avec plusieurs hypothèses différentes et surtout ne pas hésiter à se reposer des questions, quitte à tout remettre en cause à n’importe quel moment de l’expérimentation. La figure 1-3 suivante propose une succession d’étapes à suivre pour réaliser une expérimentation en Machine Learning.

Figure 1-3 : les étapes d’une expérimentation Machine Learning
Ces étapes peuvent être définies comme suit :
1. |
Poser le problème : c’est le début de toute l’histoire. Le besoin peut venir des équipes opérationnelles et/ou métier qui constatent une optimisation possible des processus de production ou autre. Le besoin, peut également être mis en avant par les équipes Data Science qui démontrent l’intérêt d’imbriquer de l’intelligence artificielle dans certains processus métier. Cette démonstration est généralement concrétisée par des expérimentations et/ou des POC (Proof Of Concept) réalisés sur des données fictives ou réelles, cela dépend des budgets alloués. |
Une fois qu’un besoin est défini, l’équipe Data Science intervient pour discuter de la valeur ajoutée de l’intelligence artificielle pour répondre à ce besoin et, le cas échéant, discuter des méthodes et des solutions à mettre en œuvre pour parvenir aux résultats escomptés. |
|
Ainsi, l’équipe Data Science encadre et formalise le problème et revient vers le métier avec... |
Cycle de vie d’un projet Data Science
Les sections précédentes ont montré qu’une expérience en Machine Learning consiste à construire un modèle prédictif en se basant sur un ensemble de données d’apprentissage. Une fois qu’un modèle est construit, il doit être déployé en production pour que d’autres applications puissent l’interroger. Ce déploiement en production est souvent l’objectif final d’une équipe de Data Scientists intervenant sur un projet.
Cependant, il existe des projets de Data Science pour lesquels le déploiement du modèle en production n’est pas une fin en soi. Ce déploiement des modèles en production ne représente qu’une partie d’un projet plus grand que le projet de réalisation d’une expérimentation Machine Learning.
En effet, de plus en plus les entreprises souhaitent s’équiper de solutions End-to-End. C’est-à-dire, des solutions qui prennent en compte toutes les composantes d’un projet où les données sont capturées et suivies en temps pseudo-réel jusqu’à leur transformation en action dite intelligente.
La figure 1-4 ci-après, montre à quoi peut ressembler une solution End-to-End. La première chose à remarquer sur cette figure est que le modèle...
Algorithmes du Machine Learning
Au début de ce chapitre, les algorithmes de Machine Learning ont été introduits comme étant des algorithmes qui cherchent à comprendre le fonctionnement des systèmes qui donnent des résultats après avoir effectué un traitement sur leurs entrées. Ces algorithmes produisent donc des modèles prédictifs. Bien que ce type d’algorithmes caractérise, de façon générale, le domaine du Machine Learning, il en existe d’autres types qui font partie de ces algorithmes dits algorithmes d’apprentissage automatique.
Les algorithmes du Machine Learning peuvent être catégorisés en se basant sur deux critères principaux : le mode d’apprentissage et le type du problème traité.
Le mode d’apprentissage concerne le caractère supervisé ou non supervisé. Sans perdre en généralité, on peut distinguer ces deux types d’apprentissages comme suit :
-
Un algorithme supervisé utilise un ensemble d’observations connues contenant des variables prédictives et des variables à prédire, pour apprendre un modèle qui sera capable de faire des prédictions sur les futures observations des variables prédictives.
-
Un algorithme non supervisé prend en entrée un ensemble de données, dans lequel...
Problème de surapprentissage
Le problème du surapprentissage peut être rencontré par tous les algorithmes du Machine Learning. On dit d’un modèle qu’il souffre du problème de surapprentissage, lorsque ses performances sont très satisfaisantes sur les données d’entraînement, mais que ses capacités de prédiction sur les données de test et sur les données futures sont très faibles. La figure ci-dessous illustre ce problème.

Figure 1-6 : le problème du surapprentissage
Sur cette figure, les points représentent les données d’entraînement et le carré un exemple de donnée de test. Bien que le modèle représenté par la fonction en courbes soit capable de prédire avec exactitude toutes les données d’entraînement, c’est bien le modèle représenté par la droite qui est meilleur puisqu’il possède une meilleure capacité de prédiction sur les données de test. Ici, le modèle représenté par la fonction en courbe a sur-appris les données d’entraînement.
Validation croisée
Jusqu’à présent, les sections précédentes ont montré que la construction d’un modèle prédictif est basée sur la séparation en deux groupes de l’ensemble des observations d’apprentissage. Un groupe pour l’entraînement du modèle et un deuxième groupe pour le test des performances de ce modèle. Une fois qu’un modèle est construit, l’objectif est de le publier en production pour qu’il puisse être interrogé sur des observations futures. Le problème posé par une telle démarche de construction de modèle est que nous n’avons pas une idée sur les erreurs de prédiction attendues en production. De plus, comme l’a montré la section précédente, ce modèle publié en production peut être affecté par le problème de surapprentissage.
En effet, une fois qu’un modèle est construit, même s’il présente des performances intéressantes, il est très important de se poser les deux questions suivantes :
-
Les performances du modèle sur l’ensemble des observations de test ne seraient-elles pas le fruit du surapprentissage ?
-
Quel est le taux d’erreur de ce modèle auquel nous pouvons nous attendre en production sur les futures observations ?
La validation croisée tente justement de répondre à ces deux questions. Elle permet d’un côté d’estimer le taux d’erreur du modèle en production sur les futures observations, et de l’autre côté, de mettre en évidence si le modèle a sur-appris sur les données d’entraînement.
Plusieurs méthodes permettent de mettre en place une validation croisée sur un modèle. Sans être exhaustive, la liste ci-dessous présente les méthodes de validation...
Métriques de performance
Pour conserver un cadre formel cohérent tout au long de ce livre, les notations suivantes seront adoptées :
-
: l’ensemble des
observations de la base d’apprentissage. Chaque observation
est composée des valeurs prises par
variables explicatives. Ainsi,
est l’observation
avec
la valeur de la première variable explicative,
la valeur de la deuxième variable explicative et ainsi de suite.
-
: l’ensemble des résultats obtenus sur les
observations de la base d’apprentissage, avec
représentant le résultat de l’observation
.
-
: l’ensemble des résultats futurs associés aux observations futures
. Par exemple,
est le résultat qui va être obtenu sur l’observation
.
En résumé, la base d’apprentissage peut être représentée comme suit :
-
: l’ensemble des prédictions obtenues avec un modèle sur les résultats de la base d’apprentissage. Ainsi,
est la valeur prédite par un modèle pour une observation
alors que pour rappel, la vraie valeur est
.
-
Donc, pour dire qu’un modèle a fait une prédiction correcte pour l’observation
il faudrait que
.
-
Pour les modèles de régression linéaire, les indicateurs utilisés sont :
-
L’erreur absolue moyenne MAE (Mean Absolute Error)
-
L’erreur absolue relative...
Conclusion
Ce chapitre a permis d’introduire les notions de base de la Data Science. Il a commencé par amener à une compréhension intuitive du Machine Learning puis les autres sections ont été consacrées à l’introduction de la démarche à suivre lors d’une expérimentation Machine Learning et aussi à l’introduction des concepts de préparation des données, de surapprentissage, de validation croisée et des métriques de performances. Les chapitres suivants vont permettre au lecteur de mettre en pratique sur l’environnement Microsoft Azure la plupart des notions abordées dans ce chapitre.