Chez OpenAI, nous avons récemment commencé à utiliser Universe, notre logiciel de mesure et de formation d'agents IA, pour mener de nouvelles expériences RL. Parfois, ces expériences illustrent certains des problèmes de RL tels qu'ils sont actuellement pratiqués. Dans l'exemple suivant, nous mettrons en évidence ce qui se passe lorsqu'une fonction de récompense mal spécifiée encourage un agent RL à subvertir son environnement en donnant la priorité à l'acquisition de signaux de récompense par rapport aux autres mesures de succès.
Concevoir des systèmes d'IA sûrs nous obligera à concevoir des algorithmes qui n'essaient pas de le faire, et nous apprendra à spécifier et à façonner des objectifs de manière à ce qu'ils ne puissent pas être mal interprétés par nos agents d'IA.
L'un des jeux sur lesquels nous nous sommes entraînés est CoastRunners. Le but du jeu - tel qu'il est compris par la plupart des humains - est de terminer la course de bateaux rapidement et (de préférence) devant les autres joueurs. CoastRunners ne récompense pas directement la progression du joueur sur le parcours, mais le joueur obtient des scores plus élevés en atteignant des cibles disposées le long du parcours.
Nous avons supposé que le score obtenu par le joueur refléterait l'objectif informel de terminer la course, nous avons donc inclus le jeu dans un benchmark interne conçu pour mesurer les performances des systèmes d'apprentissage par renforcement sur les jeux de course. Cependant, il s'est avéré que les objectifs étaient définis de manière à ce que l'agent d'apprentissage par renforcement puisse obtenir un score élevé sans avoir à terminer le cours. Cela a conduit à un comportement inattendu lorsque nous avons formé un agent RL pour jouer au jeu.
L'agent RL trouve une lagune isolée où il peut tourner en un grand cercle et renverser à plusieurs reprises trois cibles, chronométrant son mouvement de manière à toujours renverser les cibles au moment où elles se repeuplent. Bien qu'il ait pris feu à plusieurs reprises, percuté d'autres bateaux et pris le mauvais chemin sur la piste, notre agent parvient à obtenir un score plus élevé en utilisant cette stratégie qu'il n'est possible en complétant le parcours de manière normale. Notre agent obtient en moyenne un score supérieur de 20 % à celui obtenu par les joueurs humains.
Bien qu'inoffensif et amusant dans le contexte d'un jeu vidéo, ce type de comportement met en évidence un problème plus général avec l'apprentissage par renforcement : il est souvent difficile ou impossible de capturer exactement ce que nous voulons qu'un agent fasse, et par conséquent nous terminons fréquemment en utilisant des proxies imparfaits mais facilement mesurables. Souvent, cela fonctionne bien, mais parfois cela conduit à des actions indésirables ou même dangereuses. Plus largement, cela contrevient au principe d'ingénierie de base selon lequel les systèmes doivent être fiables et prévisibles. Nous avons également exploré cette question plus en détail dans notre document de recherche Problèmes concrets sur la sécurité de l'IA.
Comment éviter de tels problèmes ? En plus d'être prudent dans la conception des fonctions de récompense, plusieurs directions de recherche qu'OpenAI explore peuvent aider à réduire les cas de récompenses mal spécifiées :
Apprendre des démonstrations nous permet d'éviter de spécifier directement une récompense et d'apprendre simplement à imiter la façon dont un humain accomplirait la tâche. Dans cet exemple, puisque la grande majorité des humains chercheraient à terminer l'hippodrome, nos algorithmes RL feraient de même.
En plus ou à la place des démonstrations humaines, nous pouvons également intégrer des commentaires humains en évaluant la qualité des épisodes ou même en partageant le contrôle avec l'agent de manière interactive. Il est possible qu'une très petite quantité de commentaires évaluatifs ait pu empêcher cet agent de tourner en rond.
Il peut être possible d'utiliser l'apprentissage par transfert pour s'entraîner sur de nombreux jeux similaires, et en déduire une fonction de récompense de "bon sens" pour ce jeu. Une telle fonction de récompense pourrait donner la priorité à la fin de la course en se basant sur le fait qu'un jeu typique a un tel objectif, plutôt que de se concentrer sur les idiosyncrasies de la fonction de récompense de ce jeu particulier. Cela ressemble plus à la façon dont un humain jouerait au jeu.
Ces méthodes peuvent avoir leurs propres défauts. Par exemple, l'apprentissage par transfert implique l'extrapolation d'une fonction de récompense pour un nouvel environnement basé sur les fonctions de récompense de nombreux environnements similaires. Cette extrapolation pourrait elle-même être défectueuse - par exemple, un agent formé sur de nombreux jeux vidéo de course où la sortie de route entraîne une petite pénalité, pourrait conclure à tort que sortir de la route dans un nouveau cadre d'enjeux plus élevés n'est pas un gros problème. Plus subtilement, si le processus d'extrapolation de la récompense implique des réseaux de neurones, des exemples contradictoires dans ce réseau pourraient conduire une fonction de récompense qui a des régions "non naturelles" de haute récompense qui ne correspondent à aucun objectif raisonnable du monde réel.
La résolution de ces problèmes sera complexe. Notre espoir est que l'univers nous permettra à la fois de découvrir et de traiter de nouveaux modes de défaillance à un rythme rapide, et éventuellement de développer des systèmes dont nous pouvons vraiment avoir confiance en leur comportement.