Marketing & Intelligence Artificielle

Futur du Deep Learning ? Le Reinforcement Learning !

google-deepmind-artificial-intelligence

Le sujet est complexe, si tu veux du pragmatique, je te conseille de lire le dernier paragraphe. Bonne lecture 🙂

Le cerveau humain vs Reinforcement Learning

Les humains sont excellents dans la résolution d’une grande variété de problèmes, en plus leur cerveau consomme peu d’énergie. L’objectif chez DeepMind est de créer des agents artificiels qui peuvent atteindre un niveau de performance similaire.

Comme un être humain, leurs agents apprennent eux-mêmes pour parvenir à des stratégies efficaces qui mènent aux plus grandes récompenses à long terme. Ce paradigme de l’apprentissage par essais et d’erreurs, est connu comme l’apprentissage par renforcement (Reinforcement Learning).

En outre, comme un être humain, ces agents construisent et apprennent de leurs connaissances directement à partir de matières brutes. Telles que la vision et sans fonctionnalités d’ingénierie codée préalablement à la main ou du domaine heuristique. Cet objectif est atteint par l’apprentissage en profondeur (Deep Learning j’en parle ici) des réseaux de neurones.

Au DeepMind, ils ont mis au point la combinaison de ces approches – le deep reinforcement learning (DRL) – pour créer les premiers agents artificiels à atteindre une performance de niveau humain dans de nombreux domaines jugés difficiles.

L’IA doit faire des erreurs pour apprendre

Les agents doivent continuellement faire des jugements de valeur de manière à sélectionner les bonnes actions des plus mauvaises. Cette connaissance est représentée par un Q-réseau qui estime la récompense totale qu’un agent peut espérer recevoir après avoir pris une action particulière.

Il y a deux ans, ils ont crée avec succès l’algorithme sur l’apprentissage par renforcement profond (Deep Reinforcement Learning). L’idée principale était d’utiliser des réseaux de neurones profonds pour représenter le Q-réseau, et de former ce Q-réseau pour prédire la récompense totale. Les précédentes tentatives pour combiner RL avec les réseaux neuronaux ont largement échoué en raison de l’apprentissage instable.

Pour répondre à ces instabilités, les Q-réseaux profonds (DQN) stocke toutes les expériences de l’agent. Puis au hasard, il pioche des échantillons et rejoue ses expériences pour fournir des données de formation diverses et décorrélés. Ils ont appliqué le DQN dans l’apprentissage des jeux sur la console Atari 2600.

A chaque pas, l’agent observe les pixels bruts sur l’écran, un signal de récompense correspondant au score de jeu, et sélectionne une direction du joystick. Dans l’article de Nature, ils ont formé des agents DQN différents pour 50 jeux différents Atari, sans aucune connaissance préalable des règles du jeu.

Comparison of the DQN agent with the best reinforcement learning methods in the literature. Comparaison of the DQN agent with the best reinforcement learning methods in the literature.

Étonnamment, DQN atteint des performances de niveau humain dans près de la moitié des 50 matchs auxquels il a été appliqué; bien au-delà de toute méthode précédente. Le code source DQN et émulateur Atari 2600 sont librement accessibles à tous ceux qui souhaitent expérimenter eux-mêmes.

Toujours plus performant

Ils ont par la suite amélioré l’algorithme DQN à bien des égards ; stabiliser davantage les apprentissage dynamique ; hiérarchiser les  expériences relus ; normalisation, agrégation et remise à l’ échelle des sorties. La combinaison de plusieurs de ces améliorations conduit à une progression de 300% du score moyen pour les jeux Atari; des performances de niveau humain ont été réalisé dans presque tous les jeux Atari.

Les ingénieurs peuvent même former un réseau neuronal unique pour en apprendre davantage sur plusieurs jeux Atari. Deep Mind a également construit un système en open source, connu sous le nom Gorila, qui utilise la plate-forme Google Cloud pour accélérer le temps de formation ; ce système a été appliqué dans la recommandation dans les systèmes de Google.

Le Reinforcement Learning asynchrone

Cependant, Q-réseaux profonds ne sont qu’un moyen de résoudre le problème de RL profonde. Ils ont récemment introduit une méthode encore plus pratique et efficace basée sur un RL asynchrone. Cette approche exploite les capacités de multit-reading de CPU standard.

L’idée est d’exécuter de nombreux exemples à leur agent en parallèle, mais en utilisant un modèle partagé. Cela fournit une alternative viable à l’expérience de rediffusion.

Leur algorithme acteur-critique asynchrone, A3C , combine un DQN avec un réseau pour la sélection des actions. Il obtient des résultats state-of-the-art, en utilisant une fraction du temps de formation des DQN et une fraction de la consommation des ressources de Gorila.

En construisant de nouvelles approches de la motivation intrinsèque et la planification dans le temps abstrait , ils ont également obtenu des résultats exceptionnels dans les jeux les plus notoirement sur les jeux difficiles Atari, tels que la vengeance de Montezuma.

Asynchronous RL effectue également bien dans ces domaines et, lorsqu’il est complété par une stratégie de contrôle hiérarchique, peut résoudre des problèmes difficiles sans aucune connaissance préalable.

Alors que les jeux Atari démontrent un large degré de diversité, ils sont limités à la 2D. Google a récemment introduit Labyrinth : une navigation 3D plus difficile avec des environnements de résolution d’énigmes. Encore une fois, l’agent observe des entrées à base de pixels dans son champ de vision, et doit comprendre la carte pour découvrir et exploiter des récompenses.

Étonnamment, l’algorithme de A3C réalise des performances au niveau humain, sur de nombreuses tâches de labyrinthe. Une autre approche basée sur la mémoire épisodique a également fait ses preuves. Labyrinth sera également publié en open source dans les prochains mois.

Des applications de tous les jours ?

Ils ont également développé un certain nombre de méthodes de RL profond pour les problèmes de contrôle en continu telles que la manipulation robotique et la locomotion (automobile). Leur algorithme Deterministic Policy Gradient Algorithmss (DPG) fournit un analogue aux DQN. Et surtout chez Google et Facebook, le RL es utilisé pour créer des nouvelles IA !

Concrètement, une voiture autonome apprend à conduire sans que nous l’avons programmé pour cela. Le réseau de neurone créer alors des “expériences” qu’il conserve et transmet aux autres voitures. Ainsi chaque voiture dans le monde possède les mêmes expériences simultanément. D’ailleurs Intel a fait conduire ses voitures autonomes sur le jeu GTA V.

Le jeu de Go est le plus difficile des jeux classiques. Malgré des décennies d’efforts, les méthodes antérieures avaient seulement atteint des performances de niveau amateur. Deep Mind a développé un algorithme de RL profond qui apprend à la fois un réseau de valeur (qui prédit le gagnant) et un réseau de politique (qui sélectionne les actions) à travers des jeux. AlphaGo, programme ses réseaux neuronaux profonds avec une recherche “state-of-the-art”.

Finalement en Octobre 2015, AlphaGo est devenu le premier programme à vaincre un joueur humain professionnel . En Mars 2016, AlphaGo défait Lee Sedol (le joueur le plus fort de la dernière décennie avec 18 titres mondiaux) par 4 jeux à 1, dans un match qui a été regardé par environ 200 millions de téléspectateurs.

Par ailleurs, ils ont également développé un jeu theorique par approches RL profonde , aboutissant à un joueur super-humain de poker en heads-up au No Limit Texas Hold’em.

De Atari à Labyrinthe, de l’automobile par la manipulation au poker et même le jeu de Go, les agents d’apprentissage de renforcement profond ont démontré des progrès remarquables sur une grande variété de tâches difficiles. Leur objectif est de continuer à améliorer les capacités de ces agents, et de les utiliser pour avoir un impact positif sur la société, dans des applications importantes telles que les soins et la santé.