Sauter au menu Sauter au contenu
PraedictIA

Comment fonctionne l’apprentissage automatique (machine learning) ?

Pour illustrer les mécanismes de fonctionnement de l’apprentissage machine, considérons la création d’un programme informatique capable de reconnaître un chat dans une image, selon deux approches différentes :

    • L’approche sans apprentissage machine : l’introduction d’un ensemble de caractéristiques et de règles dans le programme informatique qui permettra de distinguer un chat dans une image. Grosso modo, à titre illustratif, le visage est relativement rond, les oreilles pointues, il possède quatre pattes, etc., donc l’image ressemble à celle d’un chat. Il est facile de déduire que cette approche est quelque peu limitée puisque beaucoup plus de caractéristiques peuvent éventuellement correspondre à un chat (selon le chat en soi, la position de la caméra, la position du chat, etc.).
    • L’approche apprentissage machine : l’utilisation informatique d’un algorithme d’apprentissage machine alimenté par une multitude d’images variées de chats. En tenant compte de la similarité entre les chats sur les différentes images, le programme intelligent sera en mesure d’extraire les caractéristiques communes à ces images et de les associer à l’entité « chat ». Une approche donc plus efficace.

La création d’un programme informatique en apprentissage machine nécessite les phases suivantes :

  • La phase d’entraînement qui consiste à alimenter le programme d’apprentissage machine en données d’entraînement pour lui permettre d’en extraire les caractéristiques nécessaires afin d’alimenter sa base de connaissances à propos d’une forme (pattern) particulière. Par exemple, entraîner un algorithme d’apprentissage machine à reconnaître un chat sur une image nécessitera des données d’entraînement regroupant une collection d’images de chats prises selon des perspectives différentes. Ces images permettront à l’algorithme d’identifier les caractéristiques communes à attribuer à un chat.
  • La phase de test qui implique de vérifier la précision de l’algorithme en utilisant des données de test. Une nouvelle collection d’images de chats est introduite dans l’algorithme d’apprentissage machine pour évaluer son apprentissage précédent. Ces images doivent impérativement être différentes de celles qui ont été utilisées lors de l’entraînement. Cela permettra d’évaluer objectivement la capacité de l’algorithme à performer dans des conditions réelles et avec des images jamais vues auparavant.
  • La phase d’inférence fait allusion à l’exécution d’une opération de déduction basée sur un apprentissage précédent, dans des conditions réelles.

Il existe différentes approches pour entraîner un algorithme d’apprentissage machine. Leur utilisation dépend de la nature des données disponibles à l’entraînement et du but à atteindre.

L’apprentissage supervisé

Dans l’apprentissage supervisé, les données d’entraînement sont accompagnées d’annotations. L’annotation (appelée aussi label ou étiquette) est le résultat précis que nous aimerions que l’algorithme associe à chaque image. Prenons par exemple la classification d’une collection d’images (exercice de classification) entre une classe « chat » et une classe « chien ». Les données d’entraînement seront un ensemble d’images de chats accompagnées d’annotations qui font référence à l’entité « chat ». Les données d’entrée pour cet algorithme seront donc des ensembles image + annotation, p. ex. image X, annotation : chat ; image Y, annotation : chien, etc.

APPRENTISSAGE SUPERVISÉ : LES 4 ÉTAPES – ML#2

L’apprentissage non-supervisé

Dans l’apprentissage non supervisé, les données d’entraînement ne sont pas accompagnées d’annotations. L’algorithme d’apprentissage machine procèdera à un exercice de regroupement (clustering) où il rassemblera les données en plusieurs groupes distincts en se basant sur la similarité entre les données. En d’autres termes, à défaut de supervision, l’algorithme rassemblera les données en sous-groupes distincts qui sont souvent prédéfinis à l’avance.

Qu’est-ce que l’apprentissage supervisé et non supervisé ?

L’apprentissage semi supervisé

Dans l’apprentissage semi supervisé, l’entraînement d’un algorithme d’apprentissage machine se fait à l’aide d’un petit nombre de données annotées et d’un plus grand nombre de données non annotées. Les données annotées sont souvent rares, donc insuffisantes pour entraîner l’algorithme, une problématique que l’apprentissage semi supervisé peut résoudre.

L’apprentissage par transfert

Dans l’apprentissage par transfert, on réutilise un algorithme déjà entraîné (p. ex. la réutilisation d’un algorithme de reconnaissance d’objets d’ordre général) afin d’entraîner de nouveau l’algorithme à effectuer une tâche similaire telle que la reconnaissance de véhicules spécifiques. Ce type d’apprentissage permet d’améliorer la performance et la précision lorsque le nombre de données annotées pour un cas spécifique est insuffisant.

L’apprentissage par renforcement

Dans l’apprentissage par renforcement, une forme d’apprentissage machine, on alimente l’algorithme par un signal de correction au moment où il exécute une tâche particulière. En apprentissage par renforcement il n’y a pas de jeux de données. Il est souvent utilisé en robotique, en simulation et en jeux vidéo.

Apprentissage par renforcement #1 : Introduction

Différentes approches et stratégies permettent d’entraîner un algorithme d’apprentissage machine. Le choix se fait selon la nature du problème à résoudre, les données disponibles (données annotées ou non annotées) et la performance obtenue après chaque expérience.