Le machine learning utilise essentiellement des algorithmes pour créer des prévisions plus précises. Ces algorithmes peuvent être :
- utilisation de données pour interpréter ce qui s'est passé
- utilisation des données pour prévoir les évènements
- utilisation des données pour suggérer des actions à entreprendre
Les algorithmes se composent de trois parties :
- Processus décisionnel. La plupart du temps, les algorithmes de machine learning sont utilisés pour deviner et organiser des données entrantes. À partir des données fournies, l’algorithme va créer une prédiction concernant un motif présent dans celles-ci.
- Fonction d'erreur. Cette partie de l’algorithme évalue la prédiction du modèle. Si des exemples ont déjà été analysés, une fonction d’erreur peut établir une comparaison afin d’évaluer la précision du modèle.
- Processus d’optimisation du modèle. Si le modèle peut s’ajuster plus facilement aux points de données de l’ensemble d’entraînement, les poids seront ajustés afin de réduire tout écart entre l’exemple étudié et la prédiction du modèle. Ce processus est réitéré par l’algorithme, qui met à jour les poids jusqu’à ce que le seuil de précision soit franchi.
Il existe différentes façons d'enseigner à ces algorithmes comment utiliser les données. Voyons les quatre principales approches du machine learning.
Apprentissage supervisé
Cette sous-catégorie du machine learning utilise des jeux de données étiquetés pour entraîner les algorithmes et suit des instructions basées sur les données qui lui sont fournies.
Les machines sont autorisées à deviner les résultats en fonction des instructions fournies. Le jeu de données étiqueté identifie les paramètres d'entrée et de sortie déjà définis, et la machine est entraînée à partir des entrées et des sorties correspondantes.
L’apprentissage supervisé se divise lui-même en deux grandes catégories :
- Classification. Ces algorithmes répondent aux problèmes de classification lorsque la composante de sortie est catégorique. Par exemple, « oui ou non » ou « vrai ou faux ». Un exemple de classification utilisé au quotidien est la fonctionnalité de filtrage dans les applications de messagerie électronique, c’est-à-dire choisir les messages destinés à la boîte de réception principale ou ceux classés comme spam. Parmi les algorithmes de classification reconnus figurent la régression logistique, les machine à vecteurs de support (SVM) et les forêts aléatoires.
- Régression. Ces algorithmes gèrent les problèmes de régression où les variables d'entrée et de sortie ont une relation linéaire. Ils prédisent quelles seront les valeurs continues des variables de sortie. On peut citer comme exemple une analyse des tendances du marché ou des prévisions météorologiques. Parmi les algorithmes de régression connus figurent la régression linéaire simple, la régression Lasso et la régression multivariée.
Apprentissage non supervisé
L'apprentissage non supervisé est utilisé pour analyser et regrouper des jeux de données non étiquetés afin de déceler des motifs sans intervention humaine.
Un programme de machine learning non supervisé va rechercher des données non étiquetées et identifier des motifs qui ne sont pas spécifiquement recherchés. Par exemple, un programme de machine learning non supervisé peut identifier les principaux segments de clientèle d'une boutique internet. Parmi les approches connues d’apprentissage non supervisé figurent la méthode du plus proche voisin et les cartes auto-organisées.
L’avantage de l’apprentissage non supervisé est sa capacité à dégager des similitudes et des différences entre des groupes de données, sans intervention humaine. Cet algorithme peut regrouper des jeux de données non triés en fonction des motifs, des différences et des similitudes.
L'apprentissage non supervisé comporte quelques sous-classifications.
- Clustering. Cette approche regroupe les objets selon des critères tels que leurs différences ou leurs similarités. Par exemple, la clientèle peut être regroupée selon les produits qu'elle achète.
- Association. Cette technique identifie les relations standard entre des variables dans un vaste jeu de données. Elle détermine la dépendance des éléments de données et représente graphiquement les variables associées.
Apprentissage semi-supervisé
Comme son nom l’indique, cette approche fusionne les aspects du machine learning supervisé et non supervisé.
L’apprentissage semi-supervisé utilise des jeux de données étiquetés et non étiquetés pour entraîner ses algorithmes. La combinaison de ces deux jeux de données élimine les problèmes liés à l’utilisation de chacun d’eux séparément. De plus, l’approche d’apprentissage semi-supervisé utilise de petits jeux de données étiquetés pour guider et gérer de vastes jeux de données non étiquetés. Les jeux de données sont généralement regroupés de cette manière parce que les données non étiquetées demandent moins d’efforts et sont moins coûteuses à acquérir.
Songez à la relation d’apprentissage des élèves avec leurs profs. Si les élèves reçoivent des informations de leurs profs, cela peut être considéré comme un apprentissage supervisé. En étudiant de manière autonome à la maison, les élèves apprennent sans la supervision des profs. Mais si les élèves revoient les leçons apprises précédemment avec leurs profs en classe, cela peut correspondre à un apprentissage semi-supervisé.
Dans la vie quotidienne, une webcam qui identifie les visages est un bon exemple de machine learning semi-supervisé.
Apprentissage par renforcement
L'apprentissage par renforcement s’appuie sur des systèmes de récompense. Il apprend par tâtonnements au fur et à mesure, les résultats positifs renforçant ses recommandations. L’apprentissage par renforcement ne s’appuie sur aucune données étiquetées, contrairement à la technique d’apprentissage supervisé. Ce type de machine learning fonctionne selon un processus de boucles de rétroaction et apprend par l’expérience,
ce qui lui permet de prendre les mesures les plus appropriées en adaptant ses actions en conséquence. Des récompenses sont attribuées pour les actions correctes effectuées et des pénalités pour les actions incorrectes. Ainsi, le système apprend quelles actions correctes entreprendre.
L’apprentissage par renforcement est couramment utilisé dans les jeux vidéo, la robotique et la navigation. Dans les jeux vidéo, par exemple, le jeu définit l’environnement, et chaque mouvement effectué par l’agent d’apprentissage par renforcement détermine l’état actuel de l’agent. L’agent reçoit du feedback sous forme de récompenses et de pénalités, ce qui a une incidence sur le score du jeu.
Il existe deux types d'algorithmes d'apprentissage par renforcement :
- Apprentissage par renforcement positif. Ce type d’apprentissage par renforcement implique l’envoi d’un feedback positif ou d’une récompense après que l'agent a eu un bon comportement, ce qui l’encourage à le reproduire à l’avenir.
- Apprentissage par renforcement négatif. Ce type de renforcement consiste à supprimer une condition négative afin d’augmenter les chances qu’un comportement particulier se reproduise, ou à renforcer un comportement particulier qui permettra d’éviter un résultat négatif.