Pourquoi l'apprentissage par renforcement profond est-il instable?


13

Dans l'article de DeepMind de 2015 sur l'apprentissage par renforcement profond, il déclare que «les tentatives précédentes de combiner RL avec des réseaux de neurones ont échoué en grande partie en raison d'un apprentissage instable». L'article énumère ensuite certaines causes de cela, en fonction des corrélations entre les observations.

S'il vous plaît quelqu'un pourrait-il expliquer ce que cela signifie? S'agit-il d'une forme de sur-ajustement, où le réseau neuronal apprend une structure présente dans l'entraînement, mais qui peut ne pas être présente lors des tests? Ou cela signifie-t-il autre chose?


Le document peut être trouvé: http://www.nature.com/nature/journal/v518/n7540/full/nature14236.html

Et la section que j'essaie de comprendre est:

L'apprentissage par renforcement est connu pour être instable ou même diverger lorsqu'un approximateur de fonction non linéaire tel qu'un réseau de neurones est utilisé pour représenter la fonction de valeur d'action (également connue sous le nom de Q). Cette instabilité a plusieurs causes: les corrélations présentes dans la séquence des observations, le fait que de petites mises à jour de Q peuvent changer de manière significative la politique et donc changer la distribution des données, et les corrélations entre les valeurs d'action et les valeurs cibles.

Nous abordons ces instabilités avec une nouvelle variante de Q-learning, qui utilise deux idées clés. Premièrement, nous avons utilisé un mécanisme d'inspiration biologique appelé réexécution d'expérience qui randomise les données, supprimant ainsi les corrélations dans la séquence d'observation et lissant les changements dans la distribution des données. Deuxièmement, nous avons utilisé une mise à jour itérative qui ajuste les valeurs d'action (Q) vers des valeurs cibles qui ne sont mises à jour que périodiquement, réduisant ainsi les corrélations avec la cible.


Pour vous assurer que vous formez votre agent sur les données non corrélées, vous ne devez pas mettre à jour la mémoire de l'agent à chaque étape, corrigez une étape de stockage pour effectuer une décorrélation dans les données.
narjes karmani

Réponses:


11

Le principal problème est que, comme dans de nombreux autres domaines, DNN peut être difficile à former. Ici, un problème est la corrélation des données d'entrée: si vous pensez à un jeu vidéo (ils les utilisent en fait pour tester leurs algorithmes), vous pouvez imaginer que les captures d'écran prises étape par étape sont fortement corrélées: le jeu évolue "en continu". Cela, pour les NN, peut être un problème: effectuer de nombreuses itérations de descente de gradient sur des entrées similaires et corrélées peut conduire à les suréquiper et / ou à tomber dans un minimum local. C'est pourquoi ils utilisent la relecture d'expérience: ils stockent une série d '«instantanés» du jeu, puis les mélangent et les choisissent quelques étapes plus tard pour suivre une formation. De cette façon, les données ne sont plus corrélées. Ensuite, ils remarquent comment pendant la formation les valeurs Q (prédites par le NN) peuvent changer la politique en cours,


Par données «mélangées», voulez-vous dire des expériences aléatoires et hors séquence échantillonnées dans un mini-lot? Comment cela correspond-il à une "récompense future actualisée", qui semble impliquer des expériences dans la séquence?
isobretatel
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.