La profondeur de l'apprentissage par renforcement de l'entrée au maître: l'exemple Cartpole d'introduire la stratégie et gradient Doom (Partie IV)

Cet article est une compilation de technologie blog AI Yanxishe, le titre original:

Une introduction à la politique Dégradés avec Cartpole et Doom

Auteur | Thomas Simonini

Traduction | Actes Ashmore

Relecture | sauce poire finale Fan | soeur d'ananas

Lien original:

https://medium.freecodecamp.org/an-introduction-to-policy-gradients-with-cartpole-and-doom-495b5ef2207f

La profondeur de l'apprentissage par renforcement de l'entrée au maître: l'exemple Cartpole d'introduire la stratégie et gradient Doom (Partie IV)

article environnement

Cet article fait partie de l'utilisation des cours d'apprentissage de renforcement en profondeur tensorflow. Cliquez ici pour voir le programme.

Au cours des deux derniers articles sur Q- apprentissage et l'apprentissage en profondeur Q, nous avons terminé un algorithme d'apprentissage de renforcement basée sur la valeur à apprendre. Dans un état donné, nous choisissons d'agir avec la valeur Q le plus élevé (récompense maximale prévue dans tous les états) de. Par conséquent, en fonction de la valeur de l'apprentissage, une politique existe que pour l'évaluation de la valeur de ces actions.

Aujourd'hui, nous allons apprendre la stratégie à base de gradient stratégies techniques dites d'apprentissage par renforcement. Nous utiliserons deux organismes de renseignement. On apprendra à maintenir le bois de l'équilibre.

Le second agent apprend la valeur de la vie et à la survie dans l'environnement hostile de la collecte de la série Doom dans.

Dans l'approche basée sur des règles, différentes de l'apprentissage Pouvez-vous nous dire l'état d'une fonction donnée et la valeur de la somme des actions au titre de la sentence arbitrale, afin que nous puissions apprendre la fonction politique de l'Etat directement mis en correspondance agir (ne choisissez pas de se déplacer dans la fonction de valeur).

Cela signifie que nous ne pas directement tentative par essai et stratégie d'optimisation de la fonction coût fonction d'erreur , paramétrique directe (ne choisissent pas de se déplacer dans la fonction de valeur).

Bien sûr, je peux être optimisé les paramètres de la politique en fonction de la valeur. Mais la fonction de valeur ne sera plus utilisée pour sélectionner l'action.

Cet article apprendra les éléments suivants:

  • Quelles sont les stratégies gradient, ses avantages et ses inconvénients;

  • Comment appliquer tensorflow.

Pourquoi utiliser la fonction politique

Deux types de stratégies: déterministes ou aléatoires.

Une stratégie définie peut être mis en correspondance avec le comportement de l'État. Entrer dans un état, le comportement de la fonction de rétroaction à exécuter.

Déterminer la stratégie utilisée dans certaines circonstances, la mise en uvre de l'action environnementale détermine le résultat, il n'y a pas d'incertitude. Par exemple, lorsque vous jouez aux échecs les soldats déplacés de A2 A3, êtes-vous sûr de vouloir déplacer des soldats A3.

D'autre part, un ensemble aléatoire de comportement de sortie de la politique d'une cession possible.

Cela signifie que le comportement n'est pas correct de choisir un, mais nous pouvons être en mesure de choisir un autre (par exemple 30% du possible, nous choisissons le sud).

tactiques aléatoires utilisés dans des conditions incertaines. Ce procédé est également appelé une partie mesurable du processus de décision de Markov (POMDP).

Dans la plupart des cas, nous utilisons le deuxième type de politique.

supériorité

Q étude approfondie a été très puissant, pourquoi la méthode d'apprentissage par renforcement des politiques?

étude approfondie a trois principaux avantages de l'utilisation du gradient de la politique:

convergence

fonction meilleure politique de convergence. fonction de valeur il y a un problème qui est un grand choc lors de l'entraînement. En effet, le comportement de la sélection de la valeur estimée du comportement peut être des baisses spectaculaires.

D'autre part, l'utilisation du gradient de stratégies, nous suivons tout le gradient de trouver la meilleure valeur. Une mise à jour lisse se produit à chaque étape.

Depuis trouver le meilleur suivi de la valeur de gradient, nous nous assurons que Converge à un maximum local (dans le pire des cas) ou le maximum global (meilleur cas).

Stratégie gradient est plus efficace dans l'espace de grande dimension

Le second avantage est un gradient de stratégie plus efficace dans l'espace de grande dimension ou d'une action continue.

Q apprentissage d'un problème de profondeur est qu'il se voit attribuer un score pour chaque possible compte tenu de l'état actuel de comportement dans toutes les étapes de prédiction (prédire l'avenir afin de maximiser la récompense).

Mais si les possibilités infinies d'action?

Par exemple, lorsque le pilote automatique, dans chaque état, il peut y avoir un comportement de choix quasi illimité. (Réglage de roues 15 °, 17,2 °, 19,4 °, sifflet ...). Nous avons besoin de produire une valeur Q pour chaque action.

D'autre part, la fonction politique, pour régler directement les paramètres (vous devez comprendre ce qui est la valeur maximale), plutôt que la valeur maximale à chaque étape des estimations.

gradient stratégie peut apprendre des tactiques aléatoires

Le troisième avantage est la politique gradient peut apprendre la stratégie aléatoire, alors que la valeur de la fonction ne peut pas. Cela conduit aussi à deux résultats.

Tout d'abord, on n'a pas besoin de peser l'exploration et le développement des applications. Une politique aléatoire permet à l'agent dans l'état plutôt que l'exploration spatiale a utilisé le même comportement. En effet, il émet un comportement sur l'ensemble des distributions de probabilité. En conséquence, il traitera de l'exploration et l'exploitation des compromis plutôt que codés en dur.

Nous enlevons les problèmes de confusion perçus, il est aussi que nous regardons deux (ou en fait) dans le même état, mais nécessitent un comportement différent.

Par exemple, nous avons un aspirateur intelligent, son objectif est d'éviter siphonner les hamsters de poussière et de tuer.

Cet exemple est David Silver de cours fines conduit à: http: //www0.cs.ucl.ac.uk/staff/d.silver/web/Teaching_files/pg.pdf

Notre aspirateur ne peut détecter où les murs.

Question: Deux carrés rouges ressemble à l'état parce que l'agent peut percevoir et sur les deux côtés de la partie de paroi.

Pour déterminer la stratégie dans un état rouge, l'agent choisir soit à droite ou à gauche, peut conduire l'agent et ne peut pas être bloqué nettoyage.

En renforçant l'algorithme fondé sur la valeur, nous apprenons une stratégie qualitative précise (? Stratégie Greedy). En conséquence, l'agent a trouvé la poussière avant qu'elle ne prenne beaucoup de temps.

D'autre part, une stratégie d'optimisation stochastique de façon aléatoire au réseau gris gauche ou à droite. En conséquence, l'agent ne sera pas bloqué, et peut atteindre l'état cible au maximum possible.

défavorisé

Il existe un gradient politique naturel gros désavantage. Dans la plupart des cas, il converge vers un maximum local plutôt que le maximum global.

étape stratégie par la convergence de la convergence de gradient étape est très lent, prend beaucoup de temps à former, ce qui est différent des mêmes efforts pour trouver un apprentissage de profondeur maximale globale Q.

Néanmoins, nous verrons une solution au problème.

stratégies

Répartition de probabilité paramètres de la politique de jeu d'action de sortie de .

Compte tenu de l'état de S, pris avec la probabilité d'un paramètre de mesure

La chose effrayante est de savoir comment nous savons que notre stratégie est une bonne stratégie?

Rappelez-vous la politique peut être considérée comme des problèmes d'optimisation. Nous devons trouver le meilleur paramètre () pour maximiser la fonction score J ().

Il y a deux étapes:

  • Stratégie en utilisant la fonction de notation J () est mesurée en masse [pi] (politique) de.

  • En utilisant l'ascension du gradient pour trouver les paramètres de stratégie optimale pour améliorer .

L'idée principale est ici comment J () pour dire notre stratégie . l'ascension du gradient stratégie nous aidera à trouver la meilleure stratégie pour optimiser les opérations d'échantillonnage de bons paramètres.

La première étape: la fonction de notation Stratégie J ()

Pour évaluer dans quelle mesure notre stratégie, nous utilisons la fonction objective (ou les fonctions politiques) pour calculer la stratégie de récompense attendue.

Il existe trois façons équivalentes à des stratégies d'optimisation. Sélectionnez ne dépend que de l'environnement et des objectifs.

Tout d'abord, dans un scénario d'environnement, on prend une valeur de départ, et de calculer la valeur moyenne de la première étape (G1) à partir des commentaires. Ceci est la récompense de la cumulative à tarif réduit toute la scène.

L'idée est simple, qui est, si je dois partir de l'état s1, le prix global de l'Etat du début à l'état final est combien?

Nous cherchons à maximiser la stratégie G1 car elle est la stratégie optimale peut être trouvée dans le premier article explique les hypothèses de prix.

Par exemple, dans un jeu d'évasion, mon nouveau jeu un jeu, mais je détruit après 20 briques balle perdue (jeu plus). Le nouveau scénario commence toujours par le même état.

J'utilise J1 () pour calculer le score. Hit 20 tuiles déjà bonne, mais je veux améliorer score. Pour ce faire, je dois passer le réglage des paramètres de distribution de probabilité pour améliorer mon comportement. Ceux-ci font dans une deuxième étape. Dans un environnement continu, parce que nous ne pouvons pas compter sur un état de démarrage spécifique, afin que nous puissions utiliser la moyenne. Chaque valeur d'état pondérée par la probabilité d'état correspondant se produit (puisque certains sont plus susceptibles de se produire).

En troisième lieu, la prime moyenne pour chaque étape afin que chaque pas que nous devons obtenir la plus haute récompense.

Deuxième étape: ascension du gradient Stratégies

Nous avons une fonction de notation de stratégie nous raconte comment une bonne stratégie. Maintenant, nous voulons trouver le paramètre maximisent la fonction de notation. Maximiser les moyens de fonction de score de trouver la politique optimale.

Afin de maximiser la fonction score J (), nous devons faire l'ascension de dégradé sur les paramètres de la politique.

La hausse gradient de descente de gradient est inversé. Rappelez-vous toujours pointer vers les plus raides des changements de gradient.

En descente de gradient, on choisit la direction de descente plus raide dans la fonction. De même, lorsque la montée de gradient, nous choisissons la direction de montée plus raide dans la fonction.

Pourquoi ne pas l'ascension du gradient de descente de gradient? Parce que nous voulons utiliser pour la descente de gradient minimum dans la mauvaise fonction.

Mais la fonction de score n'est pas une fonction d'erreur, ce qui nécessite le maximum, nous utilisons donc l'ascension du gradient.

L'idée est de trouver le gradient approprié, de sorte que la politique actuelle tc plus des paramètres de mise à jour incrémentielle dans la direction d'itération.

Maintenant, le contenu mathématique let, un peu difficile ici, mais cela est la base pour comprendre comment obtenir la formule de gradient.

Nous voulons trouver le paramètre meilleur * pour maximiser score:

Notre fonction de score peut être défini comme suit:

Il est prévu d'attribuer la somme à une stratégie donnée.

Maintenant, parce que nous devons faire l'ascension gradient, donc nous allons à la fonction différentielle score J (). Il peut également être défini comme suit:

Nous écrivons la fonction de cette façon de montrer les problèmes auxquels nous sommes confrontés.

Nous savons comment influencer le comportement des paramètres politiques sont sélectionnés, qui est, quel genre de récompense que nous recevons, nous verrons quel genre d'état, à quelle fréquence.

Par conséquent, rechercher afin d'assurer un changement de politique amélioration peut être un défi. En effet, la performance dépend de la sélection du comportement et choisissez l'état après avoir fait la distribution. toutes deux sont soumis à des paramètres de la politique d'influence. Influencer les paramètres de la politique sur le comportement est très facile à trouver, mais comment trouver l'impact de la politique dans le cas de la distribution de l'État? environnement La fonction est inconnue.

Par conséquent, nous sommes confrontés à la question suivante: Lorsque le gradient dépend de l'impact inconnu des changements de politique à la distribution de l'État, nous utilisons la stratégie correspondante pour évaluer la façon dont le gradient.

La solution consiste à utiliser des stratégies principe gradient. Les stratégies impliquent l'utilisation des différences [theta] ne comprend pas l'état de la distribution, est de fournir un J Analytique () (en performance) du gradient Fig.

, Nous avons calculé comme suit donc:

Rappelez-vous, nous sommes dans le cas de la politique aléatoire. Cela signifie que notre sortie de la politique d'une distribution de probabilité (; ). Il sortie la probabilité de prendre des mesures (s0, a0, ...) r0 quand donné le paramètre courant .

Cependant, à la fonction de probabilité différentielle, il est plus difficile, à moins que nous pouvons le convertir dans un journal. Cela rendra la fonction de probabilité peut être facilement différenciée.

Ici, nous allons venir à remplacer une partie des résultats de la probabilité d'utilisation dans le journal du rapport de vraisemblance.

Maintenant, la somme de let sera converti en un choix:

Comme vous pouvez le voir, il suffit de calculer la dérivée de la fonction politique du journal.

Nous avons fait beaucoup de dérivation, maintenant, nous pouvons tirer la stratégie de gradient de conclusion:

Ce gradient de stratégie nous dit que si vous voulez obtenir un score plus élevé en changeant le paramètre devrait être la façon de changer la stratégie de distribution.

R (tau) valeurs scalaires telles que:

Si R (tau) élevé, cela signifie que nous prenons l'action moyenne de cas conduirait à des récompenses plus élevées. Nous voulons promouvoir la probabilité de comportement observable (augmenter la probabilité de prendre ces actions).

D'autre part, si R (tau) est faible, nous devons réduire la probabilité d'un comportement observable.

paramètres de stratégie gradient conduisent à se déplacer dans la direction du rendement le plus élevé sur la plupart des mesures de soutien.

gradient de stratégies Monte Carlo

Dans les notes, compte tenu de notre tâche peut être divisée en plusieurs étapes, nous allons utiliser la méthode de Monte Carlo pour concevoir des stratégies algorithme gradient.

initialize pour chaque épisode = S0, A0, R1, S1, ..., ST: T 1 à T-1: = theta (log (St, A, )) Gt = + Pour chaque épisode: A chaque étape de temps dans cet épisode: Calculer les probabilités d'journaux produits par notre politique fonction. Multipliez-le par la fonction de score. Mettre à jour les poids

Mais nous sommes confrontés à un problème lors de l'utilisation de cet algorithme. Parce que nous calculons que la valeur de R à la fin de chaque étape, nous allons tous le comportement moyen. Même si une partie du comportement est très mauvais, si nos scores sont très élevés, de sorte que toutes les actions seront en moyenne à bonne.

Avoir une bonne politique, nous avons besoin d'un grand nombre d'échantillons, ce qui entraînera l'apprentissage très lent.

Comment améliorer le modèle?

Nous verrons les améliorations suivantes dans l'article suivant:

évaluateur du comportement: un mélange d'algorithmes de valeur et des algorithmes de stratégies.

stratégie proximale gradient: une stratégie pour assurer l'écart proche est relativement faible.

Application dans Cartpole et Doom dans

Nous avons pris une vidéo, l'utilisation tensorflow stratégie application de jeu Doom agent gradients dans le mode de la mort:

Politique Dégradés jouant Doom deathmatch ?? avec tensorflow (tutoriel)

Vous pouvez accéder directement notes: prise en pension d'apprentissage profond renforcement du cours.

En résumé, vous avez créé un apprentissage peut survivre dans l'environnement de l'agent Doom. Puissant lui!

Ne pas oublier d'utiliser personnellement chaque partie du code, ce qui est très important. Essayez l'âge, changer l'architecture, de modifier le taux d'apprentissage, en utilisant un meilleur environnement matériel et ainsi de suite, en profiter!

Dans le prochain article, je vais discuter des dernières améliorations en matière d'apprentissage de la profondeur Q:

  • Double DQN

  • Réseau de la concurrence

  • valeur fixe Q

  • Répétez la priorité de l'expérience

Je veux continuer à voir les articles liens et références connexes?

Appuyez sur et cliquez pour ouvrir un lien ou cliquez sur le fond de la profondeur de l'apprentissage de renforcement [de l'entrée à maîtriser: l'exemple Cartpole pour présenter la stratégie et gradient Doom (Partie IV)]:

https://ai.yanxishe.com/page/TextTranslation/1406

AI Yanxishe contenu passionnant mis à jour quotidiennement, la visualisation de contenu plus excitant: Lei Feng Lei Feng Lei réseau de réseau de réseau Feng

PyTorch que nous faisons avec la détection d'objet et le suivi

l'apprentissage de la machine doit faire avec des collections de bibliothèques importantes Python

Comment les débutants étude sur la migration Keras

Un article que vous lisez avec un WaveNet: assistant Google synthétiseur sonore

En attendant vous interprétez:

Apprentissage par renforcement: menant à un système axé sur le comportement émotionnel

Comment construire un modèle LSTM Keras, et le réglage des paramètres

DQNs Senior: Tirer profit de la profondeur de l'apprentissage de renforcement pour jouer au jeu Pac-Man

réseau de contrôle structuré pour la profondeur de l'apprentissage de renforcement (papiers ICML expliquent)

Miller a expliqué feuille soleil vieilles photos, avec le désir Xi Yi éperlan mille que beau, utilisateur: moitié - moitié
Précédent
Pourquoi est-il appelé « La vie gagnant » est le S-classe Mercedes-Benz, plutôt que l'autre voiture?
Prochain
"Non-East West": Love Letters à l'idéalisme
Les mots les plus féroces Sao! Dit dans un clan V5 interview ADC, serrer la main après le match saluait les anciens
Chi-hwan prendre moteur 1.4L 100 km La consommation de carburant combinée est inférieure à K2
La profondeur de l'apprentissage par renforcement de l'entrée au maître: Doom, par exemple pour lire l'article avec votre apprentissage profondeur Q (Partie III - sur)
routeur mil nuage Jinshan ensemble pour créer AI vitesse expérience Internet
La technologie de simulation à l'étape, il peut aider à conduire une voiture copier automatiquement un raccourci?
équipe SKT a changé son nom! SKT acheter meilleures équipes du groupe de médias du monde entier, puisqu'aucun SKTFaker
Nouvelles lente · voir | plus chaude transfrontalière: la police « école » professeur « garde »
Non seulement engagé le BAPE, READYMADE sera jusqu'à six marque et d'élargir la coopération commune? !
La Pologne a dit l'arrestation de citoyens chinois n'a rien à voir avec Huawei, hôte CCTV a quitté les gros titres aujourd'hui, Apple a HomePod vendredi vente | Lei Feng Matin
adversaires Mlle Dong ont votre climatiseur en ligne: Mi climatisation Internet est devenu de plus en plus 23 Juillet
Liste | Top Ten 2017 Film Soundtrack