Technologie

Optimisation de la région de confiance et de la stratégie proximale – Sergios Karagiannakos – Moyenne

Optimisation de la région de confiance et de la stratégie proximale - Sergios Karagiannakos - Moyenne


Photo de Deepmind

Bienvenue dans un autre voyage visant à dévoiler les secrets de l’apprentissage par renforcement. Cette fois, nous allons faire un pas en arrière et revenir à l’optimisation des politiques afin d’introduire deux nouvelles méthodes: l’optimisation des stratégies de région de confiance (TRPO) et l’optimisation des politiques proximales (PPO). N'oubliez pas que dans les techniques de gradients de stratégie, nous essayons d'optimiser une fonction d'objectif de stratégie (la récompense accumulée attendue) à l'aide de la descente de gradient. Les gradients de politique sont parfaits pour les grands espaces continus mais souffrent de certains problèmes.

  • Variance élevée (que nous abordons avec les modèles Acteur-critique)
  • Problème de récompense retardée
  • Exemple d'inefficacité
  • Le taux d'apprentissage affecte fortement la formation

Le dernier, en particulier, a perturbé les chercheurs pendant assez longtemps, car il est très difficile de trouver un taux d’apprentissage adapté à l’ensemble du processus d’optimisation. Un faible taux d'apprentissage peut provoquer la disparition de gradients, tandis qu'un taux élevé peut entraîner une explosion du gradient. En général, nous avons besoin d'une méthode pour modifier la politique, pas trop mais aussi pas trop et même mieux pour toujours améliorer notre politique. Un document fondamental dans cette direction est:

Optimisation de la stratégie de région de confiance (TRPO)

Pour que la stratégie ne bouge pas trop loin, nous ajoutons une contrainte à notre problème d’optimisation: nous nous assurons que la stratégie mise à jour se trouve dans une région de confiance. Les régions de confiance sont définies comme la région dans laquelle les approximations locales de la fonction sont exactes. Ok, mais qu'est-ce que ça veut dire? Dans les régions de confiance, nous déterminons la taille maximale des étapes, puis le maximum local de la stratégie dans la région. En poursuivant le même processus de manière itérative, nous trouvons le maximum global. Nous pouvons également agrandir ou réduire la région en fonction de la qualité de la nouvelle approximation. De cette façon, nous sommes certains que les nouvelles politiques peuvent être dignes de confiance pour ne pas conduire à une dégradation dramatique des politiques. Nous pouvons exprimer mathématiquement la contrainte ci-dessus en utilisant la divergence de KL (que vous pouvez considérer comme une distance entre deux distributions de probabilités):

La divergence KL entre la nouvelle et l'ancienne politique doit être inférieure au delta (δ), delta étant la taille de la région. Je pourrais faire quelques calculs, mais je pense que cela ne fera que compliquer les choses plutôt que de les clarifier. Donc, essentiellement, nous avons juste un problème d'optimisation contraint.

La question est maintenant de savoir comment résoudre un problème d’optimisation sous contrainte. Utilisation de la méthode du gradient conjugué. Nous pouvons, bien sûr, résoudre le problème de manière analytique (descente de gradient naturelle), mais le calcul est inefficace. Si vous en extrayez de vos connaissances en mathématiques numériques, vous vous souviendrez peut-être que la méthode du gradient conjugué fournit une solution numérique à un système d'équations. C'est beaucoup mieux d'un point de vue informatique. Il suffit donc d'approximer linéairement la fonction objectif et quadratiquement la contrainte et de laisser le gradient conjugué faire son travail.

Pour tout résumer, l'algorithme comporte les étapes suivantes:

  • Nous courons un ensemble de trajectoires et collectons les politiques
  • Estimer les avantages à l'aide d'un algorithme d'estimation des avantages
  • Résoudre le problème d'optimisation sous contrainte en utilisant un gradient conjugué
  • Répéter

De manière générale, les régions de confiance sont considérées comme des méthodes assez standard pour aborder les problèmes d'optimisation. La difficulté consiste à les appliquer dans un contexte d’apprentissage par renforcement de manière à offrir un avantage par rapport aux gradients de politique simples.

Bien que TRPO soit un algorithme très puissant, il pose un problème important: cette contrainte sanglante, qui ajoute une charge supplémentaire à notre problème d'optimisation. Je veux dire que cela nous oblige à utiliser la méthode du gradient conjugué et nous déroute avec des approximations linéaires et quadratiques. Ne serait-il pas intéressant de pouvoir inclure la contrainte directement dans notre objectif d'optimisation? Comme vous l'avez peut-être deviné, c'est exactement ce que l'optimisation de la politique proximale fait.

Optimisation de politique proximale (PPO)

Cette idée simple nous a donné un algorithme plus simple et plus intuitif que TRPO. Et il s'avère que cette technique surpasse la plupart des techniques existantes la plupart du temps. Ainsi, au lieu d’ajouter une contrainte séparément, nous l’incorporons à l’intérieur de la fonction objectif sous forme de pénalité (nous soustrayons la divergence KL multipliée par une constante C de la fonction).

Dès que nous le faisons, il n’est pas nécessaire de résoudre un problème contraint et nous pouvons utiliser une simple descente de gradient stochastique dans la fonction ci-dessus. Et l'algorithme est transformé comme suit:

  • Nous courons un ensemble de trajectoires et collectons les politiques
  • Estimer les avantages à l'aide d'un algorithme d'estimation des avantages
  • Effectuer une descente de gradient stochastique sur la fonction objectif pour un certain nombre d'époques
  • Répéter

Une petite mise en garde est qu'il est difficile de choisir le coefficient C de manière à ce que cela fonctionne bien sur l’ensemble de l’optimisation. Pour résoudre ce problème, nous mettons à jour le coefficient en fonction de la taille de la divergence de KL. Si KL est trop élevé, nous l'augmentons ou, s'il est trop bas, nous le diminuons.

Alors c'est ça? C’est la fameuse optimisation proximale de la politique? En fait non. Désolé pour ça. Il s'avère que la fonction décrite ci-dessus n'est pas la même que celle du papier d'origine. Les auteurs ont trouvé un moyen d'améliorer cette version pénalisée en une nouvelle fonction objectif plus robuste.

Hé hé, attends. Que s'est-il passé ici? En fait, pas grand chose. Laisse-moi expliquer. Une chose que j’ai intentionnellement laissée de côté jusqu’à présent est cette fraction de probabilités là-bas, qui semble également apparaître dans TRPO. Eh bien, cela s'appelle un échantillonnage d'importance. Nous avons essentiellement une nouvelle politique que nous voulons estimer et une ancienne que nous utilisons pour collecter les échantillons. Avec échantillonnage d'importance, nous pouvons évaluer une nouvelle politique avec les échantillons de l’ancienne et améliorer leur efficacité. Le rapport indique la différence entre les deux politiques et est r (thêta).

En utilisant ce rapport, nous pouvons construire une nouvelle fonction objectif pour couper l'avantage estimé si la nouvelle politique est loin de l'ancienne. Et c’est exactement ce que fait l’équation ci-dessus. Si une action est beaucoup plus probable dans le cadre de la nouvelle politique que dans l’ancienne, nous ne voulons pas exagérer la mise à jour de l’action, nous avons donc coupé la fonction objectif. Si cela est beaucoup moins probable dans le cadre de la nouvelle politique que dans l’ancienne, l’action objective est aplatie pour éviter d’exagérer de nouveau la mise à jour.

C’est peut-être juste moi, mais je pense que je n’ai pas trouvé d’algorithme d’apprentissage du renforcement plus simple et plus propre depuis un moment.

Si vous voulez entrer dans le terrier du lapin, consultez le code de base de OpenAI, qui vous donnera une image claire de tout l'algorithme et résoudra toutes vos questions. Bien sûr, ce serait bien mieux d'essayer de le mettre en œuvre de toutes pièces. Ce n'est pas la tâche la plus facile, mais pourquoi pas.

Je pense que c’est tout pour le moment. Continue d'apprendre…

Show More

SupportIvy

SupportIvy.com : Un lieu pour partager le savoir et mieux comprendre le monde. Meilleure plate-forme de support gratuit pour vous, Documentation &Tutoriels par les experts.

Related Articles

Laisser un commentaire

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

Close
Close