Dans cet article, on vous explique avec des exemples concrets la différence entre algorithme supervisé et non-supervisé.
Comme vu dans le premier cours sur les bases du Machine Learning, ce-dernier est basé sur des algorithmes, aussi appelé modèles.
Cependant chaque modèle ne s’applique pas n’importe comment.
Le contexte jouera sur le type d’algorithme qu’on utilisera.
Ce contexte, on le distingue en 3 catégories principales :
- Supervisés
- Non-supervisés
- Renforcement
Et c’est ce que nous allons voir dans cet article !
Machine Learning Supervisé
Les problèmes dits supervisés sont des problèmes ou l’homme apporte un soutient a l’algorithme utilisé, et donc le supervise dans le sens ou les données en entrée sont labellisées.
Mais que veut donc dire labellisé? Il s’agit de données préalablement identifiées qui vont être utilisées lors de l’application du programme. L’Homme a donc un impact direct sur la labellisation des données et donc par conséquent sur le résultat.
Prenons pour exemple cette banque d’image contenant des chiens et chats, chaque image est « labellisée », c’est-a-dire que l’on sait ce qu’elle représente.
L’algorithme supervisé va alors travailler en sachant que la première image en haut a gauche est un chien, que la suivante est un chat etc…
Lorsque l’on testera notre modèle sur une nouvelle image, l’algorithme essayera alors de deviner s’il s’agit d’un chat ou d’un chien.
Différents algorithmes permettent d’entraîner ce genre de modèle supervisés, ils sont classifiés en deux catégories. En voici une liste non-exhaustive:
- Régression (Régression linéaire, régression de poisson…)
- Classification (Régression logistique, réseau de neurone, arbre de décision…)
Machine Learning Non-Supervisé
Les problèmes dits non-supervisés, a l’inverse des problèmes dits supervisés sont des problèmes ou l’homme n’apporte aucun soutient a l’algorithme utilisé. Les données en entrée sont donc non-labellisées.
Les données non-labellisées sont-elles donc simplement des données non identifiées? C’est exact! Il s’agit en effet de données non identifiées qui vont être utilisées lors de l’application du programme. L’utilisateur possède ces données mais ne peut comprendre exactement ce a quoi elles correspondent.
Pas encore tout a fait clair? Pas de soucis, l’exemple qui suit va surement vous aider a mieux cerner ce concept.
Au fait, si ton objectif est d'apprendre le Deep Learning - j’ai préparé pour toi le Plan d’action pour Maîtriser les Réseaux de neurones.
7 jours de conseils gratuits d’un ingénieur spécialisé en Intelligence Artificielle pour apprendre à maîtriser les réseaux de neurones à partir de zéro :
- Planifie ton apprentissage
- Structure tes projets
- Développe tes algorithmes d’Intelligence Artificielle
J’ai basé ce programme sur des faits scientifiques, des approches éprouvées par des chercheurs mais également mes propres techniques que j'ai conçues au fil de mes expériences dans le domaine du Deep Learning.
Pour y accéder, clique ici :
À présent, on peut revenir à ce que je mentionnais précédemment.
Dans cet exemple cette banque d’image, contrairement au dernier exemple, les images ne sont pas « labellisées ». L’algorithme ne sait pas ce qu’elles représentent et c’est la son avantage.
En effet, en regardant ces images, il parait évident que les 2 catégories sont les éléphants et les rhinocéros.
Contrairement à nous, l’algorithme ne va pas se restreindre a cela.
En effet grâce aux similitudes d’images différentes il va créer ses propres catégories.
Ainsi un algorithme simple trouvera sans doute 2 catégories tout comme vous et moi.
Cependant un algorithme plus performant séparera les images en 4 catégories: l’éléphant d’Asie, l’éléphant d’Afrique, le rhinocéros noir et enfin le rhinocéros blanc.
C’est la que les algorithmes non-supervisés démontre leur avantage.
Voici une fois de plus une courte liste d’algorithmes non-supervisés, eux aussi divisés en 2 catégories:
- Clustering (k-mean clustering, hierarchical clustering…)
- Dimensionality Reduction (Variance thresholds, genetic algorithms…)
Les problèmes de ML dits de renforcement
Cette dernière catégorie diffère quelque peu, en effet il ne s’agit plus de prédire mais de renforcer.
Ici, l’algorithme fonctionne sur la base d’un agent (programme, robot…) qui doit effectuer une tache. En fonction de sa performance, il reçoit des punitions ou récompenses. Cet agent n’a nullement besoin de l’homme pour fonctionner, et il apprend et s’améliore grâce à l’algorithme de renforcement.
Contrairement aux problèmes supervisés et non-supervisés où l’on implémente les données uniquement au début, cet algorithme s’adapte en fonction d’une arrivée constante de données.
Cette catégorie du machine learning est en constant développement et mériterait un article à part entière. Un des exemples qui vous parlera peut-être est l’intelligence artificielle appliquée aux jeux d’échecs !
Un article à venir sera dédié aux problèmes dits de renforcement afin de mieux comprendre ce qui se cache derrière ce système de récompense.
À bientôt sur Inside Machine Learning ! 😉
sources :
- Photo by Nathanaël Desmeules on Unsplash
Un dernier mot, si tu veux aller plus loin et apprendre le Deep Learning - j’ai préparé pour toi le Plan d’action pour Maîtriser les Réseaux de neurones.
7 jours de conseils gratuits d’un ingénieur spécialisé en Intelligence Artificielle pour apprendre à maîtriser les réseaux de neurones à partir de zéro :
- Planifie ton apprentissage
- Structure tes projets
- Développe tes algorithmes d’Intelligence Artificielle
J’ai basé ce programme sur des faits scientifiques, des approches éprouvées par des chercheurs mais également mes propres techniques que j'ai conçues au fil de mes expériences dans le domaine du Deep Learning.
Pour y accéder, clique ici :