Algorithmes, Éthique

Apprentissage par renforcement

Dans de précédents articles, je vous ai présenté les méthodes d’apprentissage supervisé et non supervisé. Il faut savoir qu’il existe une autre méthode d’apprentissage, appelée...

Écrit par Ilyes Talbi · 2 min lecture >
Apprentissage par renforcement


Dans de précédents articles, je vous ai présenté les méthodes d’apprentissage supervisé et non supervisé. Il faut savoir qu’il existe une autre méthode d’apprentissage, appelée « apprentissage par renforcement » (reinforcement learning). Dans le cadre de l’apprentissage par renforcement l’IA apprend toute seule, mais le mode d’apprentissage est différent de celui observé en non supervisé.

Principe et analogie avec l’apprentissage humain ou animal


L’apprentissage par renforcement, est un mode d’apprentissage statistique, inspiré de l’apprentissage humain et animal. En tant qu’humain, nous expérimentons certaines choses (pas très intelligente parfois haha).

Lorsqu’elles ont un résultat positif et induisent des récompenses, on conclut que ces expériences sont positives et qu’elles doivent être réitérées. Inversement, si le résultat de l’expérience n’est pas concluant, on le mémorise pour ne plus faire la même erreur.

Ainsi, dans le cadre d’un apprentissage par renforcement, l’IA veut maximiser ses « récompenses ». Exactement de la même façon qu’un étudiant veut maximiser ses notes, par exemple.

Cette notion de ‘’récompenses’’ dépend du contexte. L’IA de YouTube ou celle de Facebook, voudra maximiser le temps que vous passez sur sa plateforme. L’IA d’Amazon voudra vous faire dépenser le maximum d’argent. La récompense est illustré par une fonction, cette fonction dépend de ce que l’on souhaite faire avec notre modèle.


Une IA qui apprend à passer un mur grâce à l'apprentissage par renforcement
Une IA apprend à passer un mur


En biologie comportementale, le concept de ‘’conditionnement opérant’’, étudié par Skinner notamment, s’intéresse à cette notion d’apprentissage par renforcement chez les êtres vivants.

Un comportement récompensé aura tendance à être plus adopté qu’un comportement punit. Skinner a expérimenté cela sur des pigeons. Lorsque le pigeon exécute ce qui lui a été demandé, il reçoit une récompense.

L’objectif de l’expérience était d’apprendre au pigeon la signification du mot ‘’Turn’’. Si le pigeon tourne lorsque ce mot lui est montré, on lui donne une récompense. On observe une amélioration des résultats au fur et à mesure des récompenses.

Expérience de « conditionnement opérant », Skinner

Fonctionnement de l’apprentissage par renforcement sur des machines


Contrairement à l’apprentissage supervisé, en apprentissage par renforcement on ne fournit pas de données d’entrainement à l’algorithme. Il acquiert ces données directement au contact de son environnement et il les mémorise.

A chaque pas de temps, l’algorithme fait certaines actions qui vont modifier son état et lui apporter une ‘’récompense locale’’. Le cumul des récompenses est donné par une fonction de valeur. C’est cette fonction que l’algorithme doit maximiser.

Ainsi, lorsque l’on met en place un algorithme d’apprentissage par renforcement, il faut que cet algorithme agisse conformément à ce qu’il a mémorisé, tout en changeant parfois de stratégie pour améliorer son score. On parle de dilemme exploration- exploitation.

Apprentissage par renforcement : illustration de cette technique
Mécanisme d’apprentissage par renforcement, interactions entre l’environnement et l’agent

Q-Learning


Le Q-Learning est l’algorithme principalement utilisé. Il est basé sur le calcul de l’action optimale. C’est celle qui maximise l’espérance des récompenses des prochains états, en prenant en compte un facteur d’actualisation.

Brièvement, le facteur d’actualisation est une constante comprise entre 0 et 1 qui donne une idée de l’importance des états futurs dans notre étude. S’il vaut 0, on ne considère que les états présents. S’il vaut 1 on donne plus d’importance à des étapes futurs.

La vitesse de l’apprentissage est donnée à l’aide du facteur d’apprentissage (learning rate). Il nous indique à quel point l’état est modifié entre deux étapes (je vous laisse le lien d’un cours sur ce sujet).

Les méthodes d’apprentissages par renforcement sont terriblement efficaces. C’est grâce à ce type d’algorithmes (amélioré avec du deep learning), qu’une machine a battu au jeu de Go le champion du monde, Lee Sedol. On lui a seulement fourni les règles du jeu. L’algorithme a appris les stratégies en simulant des millions de parties. En quelques heures il a atteint le niveau du champion du monde.

Les notions mathématiques sous-jacentes, reposent principalement sur les processus de décisions Markovien, qui font intervenir des méthodes de calculs de probabilités et de calcul stochastique (ce que les maths proposent de plus beau !).

L’analogie faite avec l’apprentissage est a relativiser. En tant qu’humain, on se base aussi sur le travail des autres pour réussir et pas seulement sur ce que l’on vit au quotidien, car « les ambitions individuelles servent la communauté ».

L’apprentissage humain semble plus se rapprocher d’un mélange entre apprentissage supervisé et apprentissage par renforcement. Lhumain ne sera jamais dépassé par la machine et c’est une des raisons principales.

One Reply to “Apprentissage par renforcement”

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *