Principaux algorithmes du Machine Learning
Ce que nous allons découvrir et les prérequis
Dans le chapitre précédent, nous avons découvert ou redécouvert les fondamentaux de l’analyse statistique descriptive qui, nous le verrons par la pratique, nous permettront de comprendre et de préparer nos données avant l’apprentissage. Nous allons à présent faire connaissance avec les principaux algorithmes du Machine Learning qui vont nous permettre de réaliser cet apprentissage.
Attention, notre objectif en écrivant cet ouvrage est de vulgariser les concepts de l’intelligence artificielle. Par conséquent, nous n’y aborderons pas les explications théoriques et mathématiques de chaque algorithme d’apprentissage.
Nous nous contenterons d’une explication la plus explicite possible illustrée par un ou plusieurs exemples le cas échéant. Si nous devions faire un parallèle avec le monde du bricolage, nous allons vous présenter les différents outils à utiliser en fonction du travail à réaliser, mais nous ne vous expliquerons pas comment ils ont été fabriqués.
Nous vous conseillons de considérer ce chapitre comme un aide-mémoire dans lequel vous pourrez venir vous référer au fur et à mesure de votre lecture afin de comprendre pourquoi nous utilisons tel ou tel algorithme et en comprendre...
Supervisé ou non supervisé ? Régression ou classification ?
Réaliser un apprentissage supervisé consiste à fournir à la machine des données étiquetées (labellisées) et propices à l’apprentissage. C’est-à-dire que nous allons analyser et préparer les données et leur donner une signification. C’est à partir de cette signification que la machine va réaliser son apprentissage. L’objectif étant d’indiquer à la machine que pour une série de données et pour une observation précise, la valeur à prédire est un chat, un chien ou bien une autre valeur.
Lorsqu’il s’agit de prédire une valeur, nous parlerons alors de régression, dans le cas contraire, nous parlerons de classification. Prédire le pourcentage de réussite d’une équipe de football lors d’un match est une régression, prédire que la photo affichée est un chat ou un chien est une classification.
Les algorithmes d’apprentissage supervisés pour la régression (prédiction de valeurs)
1. La régression linéaire univariée (linear regression)
Cet algorithme cherche à établir, sous forme d’une droite, une relation entre une variable expliquée et une variable explicative. Par exemple, prédire une note à un examen (variable expliquée) en fonction du nombre d’heures de révisions (variable explicative).
En d’autres termes, les données d’une série d’observations sont représentées sous forme d’un nuage de points et l’on cherche à trouver une droite passant au plus près de ces points.

Régression linéaire univariée
Ainsi, connaissant le nombre d’heures de révisions, il nous est possible de prédire approximativement la note que l’on obtiendra au prochain examen.
2. La régression linéaire multiple (Multiple Linear Regression-MLR)
Là où nous utilisions une seule variable explicative pour expliquer une autre variable (une note en fonction d’un temps de révision), dans la régression linéaire multivariée nous allons utiliser plusieurs variables explicatives.
Par exemple, nous allons chercher à prédire le temps que va mettre un cycliste pour remporter une étape du tour de France, en fonction de son âge, du temps qu’il a réalisé à la précédente étape, de son classement dans le peloton…
Une étape importante lors de l’utilisation de multiples variables explicatives est leur normalisation (mise à l’échelle). Dans notre exemple, le temps réalisé en minutes lors de la précédente étape peut éventuellement varier entre 160 à 200, la position dans le peloton entre 1 et 80 en fonction du nombre de participants au tour de France. Nous ne sommes donc pas sur la même échelle pour chacune des variables explicatives (160 à 200 vs 1 à 80).
La mise à l’échelle (scaling) va donc consister à faire en sorte que la moyenne de chaque série d’observations soit égale à 0, que la variance et l’écart-type soient égaux à 1. Cette méthode...
Les algorithmes pour les apprentissages non supervisés
Nous entrons à présent dans le monde des algorithmes d’apprentissage non supervisés. C’est-à-dire que lors de la phase d’apprentissage, nous n’indiquons pas à la machine si l’observation étudiée appartient à un groupe précis comme nous le faisons lors d’un apprentissage supervisé. Charge donc à la machine de déterminer ce groupe d’appartenance (appelé cluster) toute seule.
1. K-Moyennes (KMeans)
L’algorithme des K-Moyennes (K-means) est l’un des algorithmes de clustering les plus utilisés.
Son principe de fonctionnement est relativement simple, car après avoir indiqué à l’algorithme le nombre de clusters à trouver, celui-ci tente par itérations successives de déterminer des centroïdes (un par cluster) autour desquels il est possible de regrouper les données. Ces regroupements s’effectuant en calculant la distance de chaque observation par rapport à un point central de regroupement appelé centroïde et permettant ainsi de classer les observations en plusieurs groupes de façon automatique.
Dans la figure suivante, nous avons indiqué à l’algorithme de classer les observations en deux clusters. Il y est parvenu en trouvant de façon automatique deux centroïdes permettant de diviser les observations en deux groupes distincts.

Algorithme des K-Moyennes
2. Mean-shift
Mean-shift est un algorithme basé sur une notion de "fenêtre coulissante" parcourant le jeu d’observations...
Et c’est tout ?
Dans ce chapitre, nous avons parcouru et décrit succinctement les différents algorithmes du Machine Learning les plus rencontrés et évoqués. Bien entendu, il en existe d’autres. Nous n’avons pas non plus évoqué les réseaux de neurones que nous aborderons en détail un peu plus loin dans cet ouvrage.
Ce chapitre vous permet d’avoir une vue d’ensemble des algorithmes, leur fonctionnement et leur cas d’utilisation en fonction du problème que vous aurez à traiter : régression ou classification dans le cadre d’un apprentissage supervisé et clustering dans le cas d’apprentissages non supervisés. Le tableau ci-dessous reprend les différents algorithmes que nous avons abordés. Libre à vous de le compléter lors de vos futures découvertes et essais d’algorithmes.
Algorithme |
Apprentissage supervisé - regression |
Apprentissage supervisé - catégorisation |
Apprentissage non supervisé |
Regression linéaire univariée |
X |
||
Régression linéaire multiple |
X |
||
Régression polynomiale |
X |
||
Régression logistique |
X |
||
Arbres de décision |
X |
X |
|
Forêt aléatoire |
X |
X |
|
Machine à vecteurs de support |
X |
||
KNN |
X |
||
Naive Bayes |
X |
||
K-moyennes |
X |
||
Mean-shift |
X |
||
DBSCAN |
X |
||
Mélange gaussien |
X |
La partie théorique et présentation...