Comprendre les principes du Machine Learning
Le Machine Learning est une technique de programmation utilisée pour créer des modèles prédictifs. Contrairement à la programmation classique, dans laquelle le code est utilisé pour décrire des étapes spécifiques et produire un résultat ; l’apprentissage automatique s’appuie sur l’utilisation d’un algorithme pour explorer de manière itérative la relation entre les fonctionnalités d’une entité de données et l’étiquette que le modèle résultant doit prédire. Les algorithmes d’apprentissage automatique sont basés sur la théorie des probabilités et les statistiques et s’appuient sur de grands volumes de données avec lesquels effectuer l'apprentissage du modèle.
À un niveau simpliste, un modèle Machine Learning est une fonction qui prend les caractéristiques d’une entité observée (ses caractéristiques) et effectue un calcul sur celles-ci pour retourner une étiquette prédite. Il est courant de faire référence en général aux fonctionnalités comme x et à l’étiquette prédite comme y ; par conséquent, en effet, un modèle Machine Learning est la fonction f dans l’expression y = f(x)
.
L’opération spécifique que la fonction effectue sur les fonctionnalités afin de calculer une valeur pour l’étiquette est déterminée par l’algorithme utilisé pour effectuer l'apprentissage du modèle.
Types de machine learning
D’une manière générale, il existe deux types courants de Machine Learning :
- Le Machine Learning supervisé dans lequel est effectué l’apprentissage du modèle à l’aide de données qui incluent des valeurs d’étiquette connues (par conséquent, un algorithme utilise les données existantes pour établir une relation entre x et y, ce qui aboutit à une fonction qui peut être appliquée à x pour calculer y).
- Le Machine Learning non supervisé dans lequel est effectué l’apprentissage du modèle à l’aide uniquement de valeurs de fonctionnalités (x) et de groupes (ou clusters) d’observations avec des fonctionnalités similaires.
Apprentissage automatique supervisé
Ce module se concentre sur le Machine Learning supervisé, car il s’agit du scénario le plus courant. Dans la définition large du Machine Learning supervisé, il existe deux types courants d’algorithmes de Machine Learning :
Algorithmes de régression dans lesquels l’étiquette est une valeur numérique, telle qu’un prix, une température, un montant ou une autre valeur pouvant être mesurée. Les algorithmes de régression produisent des modèles dans lesquels la fonction (f) fonctionne sur les fonctionnalités (x) pour calculer la valeur numérique de l’étiquette (y).
Par exemple, un algorithme de régression peut être utilisé pour effectuer l'apprentissage d’un modèle qui prédit le nombre attendu de glaces vendues par un kiosque dans un parc un jour donné en fonction de caractéristiques telles que le mois de l’année, le jour de la semaine, la température, l’humidité, etc.
Algorithmes de classification dans lesquels l’étiquette est une catégorie discrète (ou classe). Les algorithmes de classification produisent des modèles dans lesquels la fonction (f) fonctionne sur les caractéristiques (x) pour calculer une valeur de probabilité pour chaque classe possible et retourne l’étiquette (y) pour la classe avec la probabilité la plus élevée.
Par exemple, un algorithme de classification peut être utilisé pour effectuer l'apprentissage d’un modèle qui prédit si un patient souffre ou non de diabète en fonction de caractéristiques telles que le niveau d’insuline dans le sang, le poids, la taille, l’âge, etc. Un modèle de classification qui identifie l’une des deux classes possibles (par exemple, true ou false) est un exemple de classification binaire. Les algorithmes qui prédisent la probabilité pour plus de deux classes (par exemple, la différenciation entre les patients sans diabète, le diabète de type 1 ou le diabète de type 2) sont utilisés pour la classification multiclasse.
Apprentissage automatique non supervisé
La forme la plus courante d’apprentissage non supervisé est le clustering, dans lequel les caractéristiques des cas de données sont considérées comme un vecteur de points dans un espace multidimensionnel. L’objectif d’un algorithme de clustering est de définir des clusters qui regroupent les points afin que les cas avec des fonctionnalités similaires soient proches les uns des autres, mais que les clusters soient clairement séparés les uns des autres.
Le clustering est utile lorsque vous devez définir différentes catégories de données, mais que vous n’avez pas de catégories prédéfinies auxquelles les observations de données existantes sont déjà affectées. Par exemple, vous pouvez segmenter les clients en fonction des similarités dans leurs profils. Le clustering peut également être utilisé comme étape initiale dans la création d’une solution de classification. Essentiellement, vous utilisez le clustering pour déterminer les classes appropriées pour vos données.