Qu’est-ce que l’apprentissage par renforcement ? Types, Algorithms & Exemple

⚡ Résumé intelligent

L'apprentissage par renforcement est une méthode d'apprentissage automatique dans laquelle un agent logiciel apprend en agissant dans un environnement, en collectant des récompenses ou des pénalités, et en ajustant son comportement pour maximiser la récompense cumulative sur de nombreuses étapes.

  • (I.e. Boucle principale : Un agent observe un état, entreprend une action, reçoit une récompense et se retrouve dans un nouvel état.
  • ☑️ Trois approches : Les méthodes fondées sur les valeurs, les politiques et les modèles diffèrent par ce que l'agent apprend réellement.
  • Deux modèles d'apprentissage : Les processus de décision markoviens définissent le problème ; l'apprentissage par renforcement Q-learning le résout à partir de l'expérience.
  • 🧪 Non supervisé : Il n'existe pas de réponses étiquetées, seulement un signal de récompense différé que l'agent doit attribuer à des actions antérieures.
  • Où cela s'intègre : Robotique, jeux vidéo, pilotage d'aéronefs, tutorat adaptatif et planification stratégique d'entreprise.
  • ⚙️ Coûts connus : L'entraînement nécessite une puissance de calcul importante, la conception des récompenses est délicate et les environnements réels sont bruyants et non stationnaires.

Apprentissage par renforcement : algorithmes, types et exemples

Qu'est-ce que l'apprentissage par renforcement ?

Apprentissage par renforcement est une Machine Learning Cette méthode décrit comment les agents logiciels doivent agir dans un environnement. L'agent ne reçoit pas les réponses correctes ; il apprend de la récompense qu'il obtient et ajuste son comportement pour maximiser la récompense cumulée.

L'apprentissage par renforcement est une branche de l'apprentissage automatique à part entière, aux côtés de supervisé et sans surveillance apprentissage. Lorsque la politique ou la fonction de valeur de l'agent est représentée par un réseau neuronal, la combinaison est appelée apprentissage par renforcement profond — c’est ce couplage qui permet à un agent d’atteindre un objectif complexe ou de maximiser une dimension spécifique en plusieurs étapes.

Composantes importantes de la méthode d'apprentissage par renforcement

Avant de comprendre les algorithmes, il est utile d'identifier leurs composantes. Le schéma ci-dessous illustre comment l'agent, l'environnement, l'action et le signal de récompense s'articulent au sein d'une même boucle.

Boucle d'apprentissage par renforcement reliant l'agent, l'action, l'environnement, l'état et la récompense

Voici quelques termes importants utilisés dans l'apprentissage par renforcement :

  • Agent: L'entité qui effectue des actions dans un environnement pour obtenir une récompense.
  • Environnement (e) : Un scénario auquel un agent doit faire face.
  • Récompense (R) : Un rendement immédiat accordé à un agent lorsqu'il effectue une action ou une tâche spécifique.
  • États): L'État fait référence à la situation actuelle renvoyée par l'environnement.
  • Politique (π) : La stratégie appliquée par l'agent pour décider de la prochaine action en fonction de l'état actuel.
  • Valeur (V): Le rendement attendu à long terme, actualisé, par rapport à la récompense à court terme.
  • Fonction de valeur : Elle spécifie la valeur d'un état, c'est-à-dire le montant total de la récompense qu'un agent peut espérer accumuler à partir de cet état.
  • Modèle de l'environnement : Cela imite le comportement de l'environnement. Cela permet de tirer des conclusions et de déterminer comment l'environnement se comportera.
  • Méthodes basées sur des modèles : Méthodes qui résolvent les problèmes d'apprentissage par renforcement en apprenant ou en utilisant d'abord un modèle de l'environnement, puis en planifiant en fonction de celui-ci.
  • Valeur Q ou valeur d'action (Q) : La valeur Q est très similaire à la valeur. La seule différence entre les deux est qu'elle prend un paramètre supplémentaire : l'action en cours.

Comment fonctionne l’apprentissage par renforcement ?

Une analogie courante permet de comprendre le mécanisme avant même l'apparition de toute notation.

Imaginez que vous essayez d'apprendre de nouveaux tours à votre chat.

  • Comme le chat ne comprend ni l'anglais ni aucune autre langue humaine, nous ne pouvons pas lui donner d'instructions directes. Nous adoptons donc une autre stratégie.
  • Nous simulons une situation, et le chat tente de réagir de différentes manières. Si sa réaction est celle que nous souhaitons, nous lui donnons du poisson.
  • Désormais, chaque fois que la chatte est confrontée à la même situation, elle reproduit le même geste avec encore plus d'enthousiasme, dans l'espoir d'obtenir une récompense plus importante (de la nourriture).
  • C’est ainsi que le chat apprend « ce qu’il faut faire » grâce à des expériences positives.
  • Parallèlement, le chat apprend aussi ce qu'il ne faut pas faire face à des expériences négatives.

Exemple d'apprentissage par renforcement

La figure ci-dessous transpose cette histoire de chat sur la boucle formelle, avec le foyer comme environnement et le poisson comme récompense.

Exemple de chat et de propriétaire transposé dans la boucle agent-environnement d'apprentissage par renforcement
Comment fonctionne l'apprentissage par renforcement

Dans ce cas,

  • Votre chat est un être vivant qui interagit avec son environnement, en l'occurrence votre maison. Par exemple, votre chat pourrait être assis et vous pourriez utiliser un mot spécifique pour l'inciter à se lever.
  • Notre agent réagit en effectuant une transition d’action d’un « état » à un autre « état ».
  • Par exemple, votre chat passe de la position assise à la marche.
  • La réaction d’un agent est une action, et la politique est une méthode de sélection d’une action étant donné un état dans l’attente de meilleurs résultats.
  • À l'issue de la transition, l'agent peut recevoir une récompense ou une pénalité.

Apprentissage par renforcement Algorithms

Il existe trois approches pour implémenter un algorithme d'apprentissage par renforcement, et elles diffèrent principalement par ce que l'agent stocke et apprend.

Basé sur la valeur

Dans une méthode d'apprentissage par renforcement basée sur la valeur, on cherche à maximiser une fonction de valeur V(s). Dans cette méthode, l'agent s'attend à un rendement à long terme des états actuels selon la politique π.

Basé sur des politiques

Dans une méthode d'apprentissage par renforcement basée sur une politique, on essaie d'élaborer une politique telle que l'action effectuée dans chaque état permette d'obtenir une récompense maximale à l'avenir.

Il existe deux types de méthodes basées sur des politiques :

  • Déterministe: Pour tout état, la même action est produite par la politique π.
  • Stochastique: Chaque action a une certaine probabilité, donnée par l'équation suivante.

Politique stochastique :

π(a|s) = P[At = a | St = s]

Basé sur un modèle

Dans cette méthode d'apprentissage par renforcement, on crée un modèle virtuel pour chaque environnement. L'agent apprend à se comporter dans cet environnement spécifique.

Caractéristiques de l’apprentissage par renforcement

Voici les caractéristiques importantes de l'apprentissage par renforcement :

  • Il n'y a pas de superviseur, seulement un vrai numéro ou un signal de récompense
  • Prise de décision séquentielle
  • Le temps joue un rôle crucial dans les problèmes de renforcement
  • Le retour d'information est souvent différé plutôt qu'instantané.
  • Les actions de l'agent déterminent les données ultérieures qu'il reçoit

Types d'apprentissage par renforcement

Le mot « renforcement » est emprunté à la psychologie comportementale et se présente sous deux formes :

Positive :

Il s'agit d'un événement qui se produit en raison d'un comportement spécifique. Il renforce et augmente la fréquence de ce comportement et influence positivement l'action entreprise par l'agent.

Ce type de renforcement permet d'optimiser les performances et de pérenniser le changement sur une période plus longue. Toutefois, un renforcement excessif peut conduire à une sur-optimisation de l'état, ce qui peut nuire aux résultats.

Négatif:

Le renforcement négatif se définit comme le renforcement d'un comportement induit par une situation négative qu'il aurait fallu stopper ou éviter. Il permet de définir un niveau de performance minimal. Cependant, cette méthode présente l'inconvénient de ne fournir que le strict minimum nécessaire pour atteindre ce niveau minimal.

Modèles d’apprentissage du renforcement

Il existe deux modèles d’apprentissage importants dans l’apprentissage par renforcement :

  • Processus de décision de Markov
  • Apprentissage Q

Processus de décision de Markov

Les paramètres suivants sont utilisés pour obtenir une solution :

  • Ensemble d'actions – A
  • Ensemble d'états – S
  • Récompense – R
  • Politique – π
  • Valeur – V

L'approche mathématique pour la carteping En apprentissage par renforcement, une solution est formalisée sous forme de processus de décision markovien (MDP). Le schéma ci-dessous illustre l'intégration de ces cinq paramètres au sein d'un même cycle agent-environnement.

Schéma d'un processus de décision markovien avec états, actions, récompense et politique

Q-Learning

L'apprentissage Q est une méthode basée sur les valeurs qui fournit des informations indiquant à un agent quelle action entreprendre.

Pour mieux comprendre cette méthode, prenons l'exemple suivant :

  • Il y a cinq pièces dans un bâtiment qui sont reliées par des portes.
  • Chaque chambre est numérotée de 0 à 4.
  • L'extérieur du bâtiment peut être considéré comme un grand espace extérieur (5)
  • Les portes numéro 1 et 4 mènent au bâtiment depuis la salle 5

Le plan ci-dessous numérote ces pièces et indique les portes qui les relient.

Plan d'un bâtiment de cinq pièces avec pièces numérotées et espace extérieur 5

Ensuite, vous devez associer une valeur de récompense à chaque porte :

  • Les portes qui mènent directement au but ont une récompense de 100
  • Les portes qui ne sont pas directement reliées à la pièce cible ne rapportent aucune récompense.
  • Comme les portes sont à double sens, deux flèches sont attribuées à chaque pièce.
  • Chaque flèche de l'image ci-dessus correspond à une valeur de récompense instantanée

Explication: Sur cette image, chaque pièce représente un état, et le déplacement de l'agent d'une pièce à l'autre représente une action.

Dans le graphique ci-dessous, un état est représenté par un nœud, tandis que les flèches indiquent les actions disponibles et la récompense associée à chacune d'elles.

Graphique d'état des cinq salles avec des valeurs de récompense de 0 et 100 à chaque transition

Par exemple, un agent se déplace de la pièce numéro 2 à la pièce numéro 5 :

  • État initial = état 2
  • État 2 -> état 3
  • État 3 -> état (2,1,4)
  • État 4 -> état (0,5,3)
  • État 1 -> état (5,3)
  • État 0 -> état 4

Apprentissage par renforcement vs apprentissage supervisé

La manière la plus claire de situer l'apprentissage par renforcement est de le mettre en parallèle avec le paradigme que la plupart des lecteurs connaissent déjà.

Paramètres Apprentissage par renforcement Apprentissage supervisé
Style de décision L'apprentissage par renforcement vous aide à prendre vos décisions de manière séquentielle. Dans cette méthode, une décision est prise sur la donnée donnée au début.
Fonctionne sur Fonctionne en interagissant avec l'environnement. Fonctionne sur des exemples ou des exemples de données donnés.
Dépendance à la décision Dans la méthode RL, chaque décision d'apprentissage dépend des précédentes, c'est donc la séquence complète de décisions qui est évaluée. In enseignement supervisé Les décisions étant indépendantes les unes des autres, une étiquette est attribuée à chaque décision.
Le mieux adapté Il est plus performant et mieux adapté à l'IA, où l'interaction humaine est prédominante. Il fonctionne principalement avec un système logiciel ou des applications interactifs.
Exemple Jeu d'échecs Reconnaissance d'objets

Applications de l'apprentissage par renforcement

Voici les applications de l’apprentissage par renforcement :

  • Robotique pour l'automatisation industrielle.
  • Planification de la stratégie commerciale
  • Apprentissage automatique et traitement des données
  • Il vous aide à créer des systèmes de formation qui fournissent un enseignement et des supports personnalisés en fonction des besoins des étudiants.
  • Contrôle des avions et contrôle des mouvements des robots

Pourquoi utiliser l'apprentissage par renforcement ?

Voici les principales raisons d’utiliser l’apprentissage par renforcement :

  • Cela vous aide à identifier la situation qui nécessite une action.
  • Vous aide à découvrir quelle action rapporte le plus sur le long terme.
  • L'apprentissage par renforcement fournit également à l'agent apprenant une fonction de récompense
  • Cela permet également à l'agent de déterminer la meilleure méthode pour obtenir des récompenses importantes.

Quand ne pas utiliser l’apprentissage par renforcement ?

Il n'est pas possible d'appliquer un modèle d'apprentissage par renforcement dans toutes les situations. Voici quelques cas où son utilisation est déconseillée.

  • Lorsque vous disposez de suffisamment de données étiquetées pour résoudre le problème à l'aide d'une méthode d'apprentissage supervisé
  • L'apprentissage par renforcement est gourmand en ressources de calcul et prend beaucoup de temps, en particulier lorsque l'espace d'actions est vaste.

Les défis de l’apprentissage par renforcement

Voici les principaux défis auxquels vous serez confrontés lors de la mise en œuvre de l'apprentissage par renforcement :

  • La conception des fonctionnalités et des récompenses, qui peut être très complexe.
  • Les paramètres peuvent affecter la vitesse d’apprentissage.
  • Les environnements réalistes peuvent avoir une observabilité partielle.
  • Un renforcement excessif peut entraîner une surcharge d'états, ce qui peut diminuer les résultats.
  • Les environnements réalistes peuvent être non stationnaires.

FAQ

L'exploitation consiste à répéter l'action jugée la plus efficace ; l'exploration, quant à elle, tente d'autres approches pour en découvrir de meilleures. L'algorithme epsilon-greedy gère ce phénomène en agissant aléatoirement avec une probabilité ε et de manière gourmande dans le cas contraire, puis en réduisant cette probabilité de ε à mesure que l'expérience s'accumule.

Le coefficient gamma pondère les gains futurs par rapport aux gains immédiats. Une valeur proche de 0 indique que l'agent est à courte vue et avide de gains instantanés ; une valeur proche de 1 indique qu'il est suffisamment patient pour accepter une petite perte immédiate en vue d'un gain plus important ultérieurement.

L'apprentissage par renforcement Q-learning est hors stratégie : il s'actualise en fonction de la meilleure action suivante possible, indépendamment de l'action réelle de l'agent. SARSA, quant à lui, est sur stratégie et s'actualise en fonction de l'action réellement effectuée, ce qui le rend plus prudent face aux situations à risque.

Un réseau Q profond remplace la table Q par un réseau neuronal, permettant ainsi d'évaluer des états jamais vus lors de l'entraînement. La relecture d'expérience et un réseau cible distinct sont ajoutés pour assurer la stabilité du signal d'entraînement.

Les agents sans modèle, comme ceux qui apprennent par renforcement (Q-learning), apprennent uniquement à partir d'expériences échantillonnées. Les agents basés sur un modèle construisent d'abord un modèle de la dynamique de l'environnement et adaptent leur stratégie en conséquence ; ils nécessitent beaucoup moins d'interactions réelles, mais sont vulnérables lorsque le modèle est erroné.

L'apprentissage par renforcement à partir des retours humains entraîne un modèle de récompense basé sur le classement des préférences humaines, puis ajuste le modèle de langage en fonction de cette récompense. C'est pourquoi les assistants construits sur ce modèle sont si performants. l'apprentissage en profondeur Suivez les instructions plutôt que de simplement prédire le texte.

Copilote GitHub est performant pour les tâches répétitives : wrappers d'environnement, tampons de relecture, boucles d'entraînement et graphiques. Récompense shaping et le choix des hyperparamètres nécessite toujours un jugement, car une récompense incorrecte, même de manière imperceptible, produit un agent qui s'entraîne avec enthousiasme mais se comporte mal.

Gymnasium fournit les environnements d'entraînement standard, Stable-Baselines3 fournit des implémentations d'algorithmes testées, et TensorFlow ou PyTorch alimente les réseaux. Commencez par un monde en grille tabulaire avant de vous intéresser à l'un d'eux.

Résumez cet article avec :