Intelligence Artificielle : les avancées du deep reinforcement learning
Le Deep Reinforcement Learning : quand deux domaines de l’IA communiquent //
Le Deep Reinforcement Learning (DRL) est un domaine de l’Intelligence Artificielle (IA) qui focalise de plus en plus l’univers de la prise de décision. Il permet notamment de remarquables avancées dans différents domaines de notre vie quotidienne : voiture autonome, système d’aide au diagnostic médical, traducteur linguistique vocal, etc.
Mais derrière ces progrès, comment fonctionne le concept de DRL ? De ses deux composantes assemblées, le Deep Learning (DL) et le Reinforcement Learning (RL), dépendent de nombreuses évolutions de notre monde.
Les avancées du Deep Learning //
Dans le domaine de l’Intelligence Artificielle, les réseaux de neurones sont des outils utilisés couramment. L’idée est de simuler de manière très simplifiée le fonctionnement de neurones humains par une machine. En connectant ces neurones artificiels entre eux, on obtient ce réseau de neurones. Des données peuvent lui être fournies afin que celui-ci simule (ou approxime) un traitement sur ces données en vue de produire le résultat attendu.
Mais ces réseaux ont vite fait face à une limite : la capacité de calcul des ordinateurs. À partir de 2010, l’IA a connu un rebond suite à l’apparition de nouveaux types de processeur : les GPUs. Ces derniers ont permis de fournir des puissances de calcul plus adaptées au fonctionnement des réseaux de neurones artificiels. Ceux-ci sont ainsi devenus davantage complexes, avec plus de neurones et plus d’interconnexions entre eux. Cela a permis de simuler des traitements beaucoup plus élaborés. Cette technique est appelée le Deep Learning (abrévié DL).
Légende de l’image : Exemple d’une structure d’un réseau de neurones à 6 couches. Le nombre de connexions entre les neurones augmente de manière exponentielle en fonction du nombre de neurones et de couches. La puissance de calcul nécessaire au fonctionnement du réseau de neurones grandit compte tenu de leur complexité.
L’apport du Reinforcement Learning (RL) //
Parmi les différents domaines de l’Intelligence Artificielle, se trouve le Machine Learning (abrévié ML). Son but est qu’une machine puisse généraliser une connaissance à partir d’expériences passées, en un mot : « apprendre ». Le Machine Learning utilise fréquemment les réseaux de neurones pour les apprentissages dits « supervisés » (supervised learning). Cela permet à la machine d’entraîner un réseau de neurones à apprendre à partir de jeux de données conçus pour cette phase d’apprentissage. Dès le réseau de neurones entraîné, il peut généraliser son apprentissage sur des données jamais vues. Ce type d’apprentissage a certains inconvénients et ne peut être appliqué à tous les problèmes. La création de jeux de données pour l’entraînement nécessite notamment un travail humain conséquent (labellisation de milliers voire millions de données), et le modèle qui doit être appris peut évoluer au cours du temps.
Un autre domaine du Machine Learning a connu un regain d’intérêt récemment : le Reinforcement Learning (abrévié RL). Au lieu d’entraîner une machine avec des données afin que celle-ci puisse généraliser par la suite, la machine apprend en se comportant comme un agent évoluant dans un environnement. C’est-à-dire que l’agent observe l’environnement, prend une décision, et agit sur celui-ci. L’environnement évoluera en fonction des actions prises par l’agent, et lui donnera une récompense en fonction de l’impact de ses actions.
Légende de l’image : Fonctionnement d’un réseau de neurones en apprentissage supervisé (Supervised Learning) vs apprentissage renforcé (Reinforcement Learning)
Le Deep Reinforcement Learning (DRL) //
Pour illustrer le concept de Reinforcement learning, prenons l’exemple de Starcraft, le jeu vidéo de stratégie créé sur le modèle récolter (des ressources présentes dans l’univers de jeu), construire (des unités et des bâtiments) et conquérir (l’univers en dominant ses ennemis). L’agent est le joueur. L’environnement est l’écran du joueur : la carte avec les différentes unités et bâtiments des différents joueurs. L’agent observe la carte, prend une décision et agit sur l’environnement (en sélectionnant des unités, construisant des bâtiments, etc.). L’environnement fournit à l’agent un score qui lui permet de savoir si ses actions sont favorables ou non. Le but de l’agent ne sera pas de maximiser les récompenses à court terme, mais de choisir une stratégie qui maximisera des récompenses à long terme, tout en permettant d’adapter sa stratégie à des environnements changeants.
Si l’agent était une machine, en le couplant à un réseau de neurones artificiels, il serait capable de prendre des décisions et d’approximer des comportements plus complexes. Cette association d’un agent reposant sur des réseaux de neurones est appelée le Deep Reinforcement Learning (abrévié DRL).
L’agent fournit l’environnement en entrée du réseau de neurones et obtient en sortie une action à exécuter. Les réseaux de neurones étant de plus en plus complexes, il va permettre à l’agent d’explorer des environnements de plus en plus complexes et d’élaborer des stratégies aussi complexes. Celui-ci ne se contentera pas d’une stratégie à court terme, mais définira des stratégies bénéfiques sur le long terme. Notre agent Starcraft ne se contentera pas d’attaquer un ennemi à vue. Il sera capable de s’adapter à ses ennemis : il établira des stratégies d’attaque, de défense, d’amélioration des unités, etc.
L’état de l’art du Deep Reinforcement Learning //
Dans le secteur des jeux de stratégie en temps réel, des machines sont maintenant entraînées pour battre les meilleurs joueurs au monde (Google DeepMind AlphaStar). Le DRL est également étudié sur des jeux de plateaux. Par exemple, le jeu de Go est un jeu de plateau dont l’espace des possibilités ne peut et ne pourra probablement jamais être stocké dans un ordinateur (250^150 possibilités de parties, soit beaucoup plus que le nombre d’atomes dans la galaxie). Ce jeu est ainsi réputé non fini, et le Deep Reinforcement Learning trouve alors tout son intérêt. Ainsi AlphaGo (toujours développé par Google DeepMind), un agent de type DRL, peut maintenant battre les meilleurs joueurs du monde au jeu de Go.
Mais le Deep Reinforcement Learning a surtout des applications industrielles. Voici quelques applications connues :
- Les voitures autonomes ;
- Les traducteurs automatiques ;
- La reconnaissance vocale (Amazon Alexa, Ok Goole, Siri, etc.) ;
- L’optimisation de la mise à l’échelle pour des clusters de serveurs (système de refroidissement des datacenters)
- Le développement de robots pouvant se déplacer de manière efficace dans un environnement non connu
Contrairement aux années 1950, lorsque la communauté scientifique pensait pouvoir créer des robots aussi « intelligents » que l’humain dans les 20 années suivantes, cette même communauté a aujourd’hui conscience des limitations de la machine et de la complexité du cerveau humain. Néanmoins, le DRL a ouvert une nouvelle voie dans le domaine de l’Intelligence Artificielle. Il s’agit d’un domaine de recherche active, avec des applications industrielles prometteuses.
Pour compléter, quelques liens Youtube intéressants :