------ théorie de l'apprentissage de renforcement simple et pratique (a)

Cette série d'articles en renforçant de manière conviviale pour introduire les concepts de base de l'apprentissage, bien que la langue est commune, mais le contenu est encore très rigueur. La plupart des formules utilisées dans le texte, des formules mathématiques des maux de tête lecteurs pourraient être effrayés, mais si les lecteurs suivent, étape par étape vers le bas, vous trouverez la formule naturellement dérivée, une compréhension approfondie de ces concepts de base très utiles. En plus de la théorie, l'article décrit également le code de mise en uvre pour chaque algorithme, en profondeur des réponses à la clé chaque ligne de code. Que le lecteur à comprendre non seulement la théorie et les algorithmes, tout aussi savoir comment utiliser le code pour mettre en uvre. Grâce à une combinaison de la théorie et la pratique, plus en profondeur la compréhension des concepts appris. Les lecteurs ont besoin que des connaissances de base de la programmation Python, le texte de chaque algorithme a un code d'ordinateur portable Jupyter correspondant. (Source, blog Github Li Li)

annuaire

introduction

Markov processus de décision (MDP)

Et un environnement interactif

Objectifs et récompenses

Retour (retour)

propriété de Markov

Markov processus de décision (processus de décision de Markov)

Fonction Valeur (Fonction Valeur)

La fonction de meilleure valeur (Fonctions optimale Valeur)

OpenAI Gym Présentation

Run Environnement

Observation (Observations)

espaces

introduction

Devant nous l'apprentissage supervisé, apprentissage supervisé se caractérise par un « professeur » pour nous « surveiller » et nous dire quels sont les résultats corrects sont. Dans notre petite, il y aura un enseignant pour nous enseigner, l'apprentissage supervisé est essentiellement un transfert de connaissances, mais ne peut pas découvrir de nouvelles connaissances. Pour l'humanité dans son ensemble, le vrai (ou même la seule) source de connaissance est la pratique - qui est, l'apprentissage de renforcement. Par exemple, Shen Nong goûté une centaine d'herbes, les premiers humains ne savaient pas ce que l'herbe peut guérir, mais en essayant, seront en mesure d'apprendre de nouvelles connaissances. connaissances acquises enregistrées par la langue, transmise de génération en génération, de manière à maintenir l'ensemble des progrès de la société humaine. L'apprentissage supervisé et différent, pas un « enseignant » nous « superviser ». Tels que les échecs, personne ne nous dira ce que la situation actuelle la meilleure méthode est d'aller seulement à la fin du jeu que nous connaissons le résultat final, nous avons besoin de re-définir leur propre (l'apprentissage) qui est une bonne étape de déplacement par étape qui est très bon aux échecs . La nature est la même, il ne dit pas si nous devrions coopérer avec les autres, mais la survie des plus aptes, et, finalement, à « dire » notre société sera plus compétitive avec l'autre aide. Supervisé et avant l'apprentissage non supervisé, il y a une grande différence par rapport au point: l'apprentissage par renforcement agent qui peut affecter l'environnement par action - tous nos mouvements étape va changer la situation, il peut également être changé pour le mieux peut aller mal.

Il est de résoudre le problème de base est donné un état, nous devons déterminer sa valeur (valeur). Valeur et récompense (récompense) sont les deux concepts les plus fondamentaux de l'apprentissage de renforcement. Pour un agent (apprentissage amélioré le sujet) il, récompense est immédiatement disponible, même droit de naissance inhérente. Dans un tel état de la faim, manger récompensera. La valeur est retardée, la nécessité de calculer et un examen attentif. Par exemple, faim de voler quelque chose à manger peut avoir une récompense, mais de la valeur (valeur) de l'angle (probablement) n'est pas une bonne action. Pourquoi pas? Bien que les humains sont encadrés d'apprentissage, tels que les sages nous disent que ce n'est pas éthique, pas un bon comportement. Mais nous l'avons dit, les êtres humains sont la source ultime de l'apprentissage de renforcement des connaissances, les sages Où avez-vous entendu? Certaines personnes pensent que vient de Dieu ou de la nature humaine, tels que « la nature de l'homme est bon, » nous allons discuter de la question de la philosophie dans le dernier chapitre. Si d'expliquer d'un point de vue de l'évolution, les êtres humains qui jouent en fait un jeu de « survie », les gens doivent suivre l'éthique et ne pas suivre la foule, la nature « dire » notre résultat final par la survie des plus aptes, et finalement l'école nos Sages à « (en fait, a été choisi) cette éthique, et ces normes transmises par l'éducation (apprentissage supervisé) de génération en génération.

Les modèles d'apprentissage plus de renforcement commun - processus de décision de Markov (MDP)

Markov processus de décision (processus de décision de Markov) est de renforcer le modèle le plus commun de l'apprentissage. Nous présentons ce modèle pour renforcer certains des concepts de base de l'apprentissage.

  • Et un environnement interactif

Renforcer la nature de l'apprentissage se fait par interaction avec l'environnement pour apprendre comment atteindre un objectif. Cet organe de l'apprentissage et de décision appelé l'agent. Interaction Agent Object est l'environnement (Environnement), l'environnement peut être très flexible, pour asseoir la grenouille au ralenti, son environnement est que la bouche mince, alors que pour l'homme, et même la planète entière dans le système solaire sont notre objet d'étude. Agent et continuera à interagir avec l'environnement, selon l'état actuel du comportement de sélection (action), alors que le nouvel environnement donnera le statut d'agent et de récompense. Le processus d'interaction ensemble ci-dessous.

Figure: renforcer et environnement d'apprentissage interactif où l'agent

Interaction Agent et Hypothesis l'environnement est un temps t = 0,1, .... A l'instant t, agent dans certains StS de l'Etat, où SS est l'ensemble de tous les états possibles, qui, l'espace d'état. Il peut choisir un comportement AtA (St), où A (St) est l'état ensemble de toutes les actions St peut être sélectionné. Après avoir sélectionné le comportement à l'environnement sera la suivante (t + 1) temps à l'agent un nouvel état St + 1 et + récompense Rt 1RR.

Que ce soit une valeur réelle assez de récompense? Héléniens, il est la poursuite de nombreux aspects, tels que la prise en compte du travail et de la famille. Bien sûr, la meilleure façon est de mettre deux buts (objectif) somme pondérée, mais ce changement semble être le bon poids, de sorte que les humains ont un seul but, alors que d'autres objectifs sont la représentation extérieure? Nous ne sommes pas ici pour discuter de cette question, mais pour la tâche réelle, il est généralement suffisant. Tels que les échecs, il est le résultat, le jeu jeu Atari est d'obtenir le meilleur score.

A chaque instant t, l'agent sera choisi en fonction de l'état actuel du comportement St différent à, appelé la méthode de la stratégie de choix (politique), il est généralement admis qu'une distribution de probabilité (stratégie déterminée est son cas particulier) t (A | St ), si le processus aléatoire est stationnaire (fixe), de sorte que notre stratégie est généralement aussi indépendante du temps, à savoir t (a | St) = (a | St). Bonne et mauvaise stratégie, cible l'agent est la meilleure stratégie pour apprendre (s'il y a un problème théorique est de renforcer l'apprentissage, mais nous pensons généralement il y a, il y a quelques théories peuvent être prouvés si le système répond à certaines hypothèses, la stratégie optimale est là ).

  • Objectifs et récompenses

Chaque fois que t, l'environnement donnera un agent RewardRt, et l'objectif agent (objectif) est de maximiser la récompense obtenue et tout. Ici, l'implication est: Notre objectif n'est pas récompense à court terme, récompense, mais l'accumulation à long terme. En général, à l'école peut être fatigué d'apprendre, peut être heureux de travailler dur sera rentable à terme, si le court terme, la faim à jouer. Ceci est appelé « Récompense si »: nous appelons objectif (objectif) ou de destination (But) peut éventuellement être considéré comme un signal de maximize récompense la valeur accumulée.

Comme l'a dit avant, avec une valeur numérique pour décrire l'ensemble de la cible agent (en particulier les personnes tel complexe biologique) ne semble pas assez, agent Posons dans certaines tâches spécifiques (tâches) jusqu'à regarder semblait assez. Par exemple, nous faisons une souris pour échapper au labyrinthe (labyrinthe), si elle ne trouve pas nos exportations vers sa récompense -1, de sorte que cet objectif d'apprentissage est le plus rapidement possible pour échapper au labyrinthe. Tels que les échecs, si vous gagnez, nous lui donnons une récompense, si Shu Qi est -1, un tirage au sort est 0. Un autre exemple est le robot de nettoyage, si elle est de collecter les ordures, puis donnez-lui une récompense, alors son objectif est de collecter autant de déchets.

Note: Nous définissons l'objectif est de dire à l'agent ce que nous nous attendons à faire est (Quoi?), Plutôt que de dire qu'il comment faire (Comment). Par exemple, quand manger les uns les autres pièces d'échecs est une stratégie gagnante (comment faire), nous ne pouvons pas donner à l'enfant de manger récompense, ou il peut être la stratégie apprise est de manger les enfants, parce que nous savons que, parfois, doivent sacrifier pour gagner pion son propre.

  • Retour (retour)

Agent objectif est de maximiser récompense à long terme la valeur accumulée, nous allons prendre une définition formelle de la valeur accumulée - en retour. Récompense après prise de temps t est Rt, Rt + 1, ..., et nous nous attendons à la plus grande de ces récompenses. Étant donné que l'environnement (pourrait) être aléatoire, et une stratégie agent aussi (probablement) au hasard, de sorte que le but est de maximiser l'agent Accumuler de récompense et les attentes. retour Gt est défini comme suit:

Gt = Rt + 1 + 2 + Rt + Rt + 3 + ... + RT

Où T est le dernier moment. Certaines tâches seront une fin de l'état, de l'état initial de la tâche à l'état final, nous l'appelons un épisode. Tels que les échecs, jeu d'échecs depuis le début au vainqueur final (ou un match nul) la fin d'un jeu est appelé un épisode. Si nous commençons un nouvel épisode, comme un jeu d'échecs de redémarrage, puis le statut de l'agent sera remise à l'état initial, et un nouveau bureau et le bureau n'est pas une relation. En plus de l'épisode de la tâche, la tâche ne se termine pas qu'il y ait un état, toujours continuer, qui est, T = .

En raison de l'incertitude quant à l'avenir, nous avons généralement un futur rabais de récompense (remise). Ceci est bien compris, la récompense immédiate est décidée à se faire à nouveau nos mains, trop d'incertitudes futures de récompense, donc être réduit. Par conséquent, nous pouvons définir le retour (Discounted retour) après remise comme suit:

Où est un paramètre, 0101, appelé le taux d'actualisation (Ratio Discount). Si

propriété de Markov

Dans l'apprentissage de renforcement où, l'agent selon l'état de décider quel genre de comportement, et l'état est un signal de l'environnement (Signal). Agent peut être dérivé du capteur de mesure (état mesures sensorielles), ou peut être un processus complexe de ces mesures brutes. Le signal du capteur peut être l'heure actuelle, il peut être inclus avant le signal. Idéal, nous nous attendons à être en mesure de compression de signal d'état compact toutes les informations dans le passé, il est en mesure de conserver toutes les informations pertinentes que possible pour éliminer les informations non pertinentes. Cela nécessite généralement l'état du signal comprend non seulement l'heure actuelle, peuvent également contenir certaines informations avant, bien sûr, ne sont généralement pas besoin de toutes les informations passées. Si un signal d'état contient toutes les informations pertinentes, puis appelez avec la propriété de Markov (Propriété de Markov). Tels que les échecs, la situation actuelle (y compris l'emplacement de toutes les pièces et qui vont le prochain mouvement) contient toutes les informations. Que ce soit la voiture, puis aller à pied ou superficielle rapide de la première voiture, bref, ils ont atteint la même situation. Ainsi, la propriété de Markov généralement pas normalement associée à un particulier « chemin ». Soit la définition formelle des propriétés de Markov.

Nous partons du principe que Ali- environnement (dynamique) est un processus aléatoire comme suit:

C'est dans le passé, lorsque toutes les informations historiques (S0, A0, R1, ..., St-1, A-1, Rt), agent en adoptant nouvel état après la rétroaction de l'environnement à l'état St est l et rewward est r distribution de probabilité conjointe. Si le système répond à la propriété de Markov, puis tout le passé des informations d'historique est comprimé à St nouveau, et donc rien à voir avec une histoire passée de St dans les conditions données, de sorte que le système d'alimentation pour répondre à la propriété de Markov du système peut être simplifié dans la formule suivante :

Si l'environnement a la propriété de Markov, puis dans les conditions étant donné l'état actuel et le comportement que nous pouvons utiliser l'équation suivante pour prédire (probabilité) un état et la récompense. En utilisant cette formule constante itération, nous pouvons (avec précision) pour calculer le rendement attendu sur l'état actuel.

Figure: jeu Atari Broke

Par exemple, la figure de jeu Atari Broke est d'utiliser ce qui suit baffle le dos de rebond de la balle et a frappé le haut de la grille, chaque grille aura frappé un signe plus (récompense), si tous sont assommés la grille ou chicane il n'a pas reçu tomber la balle dans le bas de l'écran, même si le jeu se termine. L'objectif du joueur est d'obtenir plus scoring.

Si nous analysons l'environnement du jeu, si l'on met l'image image actuelle que l'état actuel, que ce soit une Markov il? Il ne semble pas, car une seule image de l'information d'aujourd'hui, il peut y avoir deux états différents de la même image, mais la balle est probable. Nous pouvons mettre l'image courante et l'image de trame précédente comme l'état actuel, en supposant un mouvement linéaire uniforme de la bille (en l'absence de collision est telle), la vitesse peut être calculée en fonction de la deuxième position de la balle. Cela peut penser à peu près, il a des propriétés de Markov.

Markov processus de décision (processus de décision de Markov)

Rencontrez propriété de Markov de l'apprentissage de renforcement est appelé processus de décision de Markov, si l'espace d'état et de l'espace d'action est limité, il est donc appelé processus de décision de Markov finie. Un processus de décision de Markov est complètement déterminé par l'état actuel de l'environnement, nous le répétons encore une fois que cette formule importante:

Avec la formule ci-dessus, nous pouvons calculer toute information sur l'environnement (environnement qui est complètement déterminée par cette formule). Par exemple, nous pouvons calculer les caractéristiques des attentes et le comportement d'un État d'une récompense est la suivante:

La formule ci-dessus est directement dérivée de la définition que nous avons souhaité de celui-ci, ici d'une simple dérivation de celui-ci, similaire à l'arrière où sautée.

De même, nous pouvons obtenir les probabilités de transition d'état:

Et compte tenu des s actuelles, lorsqu'un courant désiré et condition suivante s Récompense:

  • Fonction Valeur (Fonction Valeur)

Beaucoup méthode d'apprentissage de renforcement impliquera la recherche fonction de valeur d'état (ou la fonction de coût de l'État-Action). Cette fonction calcule l'agent dans cet état (ou agent dans le comportement de l'État et de prendre un xingw) à la fin comment bon. Tels que jouer aux échecs quand nous penserons à la fin est bon ou mauvais, si nous sommes dans une situation (position), afin de prendre des mesures pour guider le développement de la situation ou d'une mauvaise situation pour éviter cette situation mieux. Ici, les « bons » signifie dans ce attentes de l'Etat de retour d'agent, bien sûr, les attentes sont étroitement liées à la politique Agent (politique), et donc la valeur de la fonction se réfère à la valeur d'une fonction à une certaine stratégie.

Rappelons que est une politique des sS de l'Etat, Action aA (s) à la de probabilité (a | s) cartographie. Nous apprécions la stratégie lorsque l'état s, est l'agent dans l'état s, et en utilisant de la politique, il peut y avoir des attentes de rendement, définis comme v (s). Sa définition officielle est:

La valeur attendue d'une variable aléatoire au cours E au nom de l'agent politique d'utilisation d'adopter le comportement ici. Si un état de terminaison, on définit la fonction de valeur est égale à zéro. Nous avons appelé la fonction politique v fonction de la valeur d'état (Fonction valeur d'état).

De même, nous pouvons définir q (s, a), en prenant la valeur d'action a dans l'état s, ce qui est formellement défini comme suit:

Nous q appelé fonction de la valeur du comportement de la stratégie (valeur d'action de la fonction).

fonction Valued v et q peuvent être estimés de l'expérience (expérience) dans. Par exemple, nous pouvons être estimées comme suit: Si l'agent utilise la simulation à plusieurs reprises d'une stratégie, peut être estimée en moyenne une valeur, si le nombre de simulations tend vers l'infini, cette méthode pour obtenir une estimation de v ^ (s) converge vers le vrai v (s)). Ceci est la méthode Monte Carlo (Monte Carlo), cette méthode peut également être utilisée pour estimer q (s, a) de. Si l'espace d'état est très grand, on peut supposer v (s) ou q (s, a) est une v fonction paramétrées (modèle) (s; w), ou q (s, a, w), c'est la méthode d'approximation . Nous pouvons utiliser la profondeur des réseaux de neurones pour atteindre v (s; w) ou q (s, a, w), que l'on appelle la profondeur de l'apprentissage par renforcement (apprentissage en profondeur de renfort).

fonction Valued un effet très important est qu'il satisfait une sorte de nature récurrente, ce qui dans l'apprentissage de renforcement et de la programmation dynamique sera fréquemment utilisé. La formule de récurrence est Bellman (Bellman équation), j'espère que les lecteurs puissent comprendre et d'en tirer l'équation suivante (si certaines étapes ne peuvent pas être déduites, et au moins lu ce qu'il dit et être capable de « reconnaître » l'équation, lu cent fois son ce qui signifie de la voir, vraiment je ne comprends pas plus que deux fois la copie sera également de l'aide).

Regardons Bellman, il est défini de manière récursive --v (s) par v (s) défini, pour quelques questions simples, nous pouvons v résolu le problème en résolvant les équations basées sur cette formule.

Nous combinons les graphiques pour analyser la formule ci-dessus. L'état actuel est s, selon le de la politique, nous prenons la probabilité de comportement a est (a | s), et nous à l'état d'un et de rétroaction le comportement, l'environnement r et s de la probabilité est p (r, s ' | s, a), possible (a, r, s') exige des compositions et, pour ainsi donner

, Dans chaque trajet (chaque s, r, s combinaison) Rt + 1 est R, peuvent être obtenus

. Dans le cas du trajet donné, s, r, s pour, r, s 'sont fixes, de sorte que s' est fixe, alors que, selon la propriété de Markov, Gt + 1GT + 1 t + 1 avec seulement État temps St + 1 = s'St + 1 = s', et donc le second terme devient

  • La fonction de meilleure valeur (Fonctions optimale Valeur)

La résolution des tâches d'apprentissage de renforcement, grosso modo, il est de trouver une stratégie pour faire la récompense à long terme, autant que possible. Tout d'abord, nous définissons ce qui est une politique « bonne (ou bien), désigné par » qu'une autre stratégie . définition formelle est 'sS, v (s) v « (s). Peut prouver (sauter ici) il y a un (peut-être multiple) optimale $ \ Pi_, qui sont « mieux » que toutes les autres politiques. Pour un fonctionnement optimal de la valeur stratégique est appelée la fonction de valeur optimale, notée v_ (s) $:

Pour la même raison, il y a un comportement optimal du comportement de la fonction de coût:

$ Q_ (s, a), et et v_ (s) $ a la relation suivante:

On peut interpréter cette formule: s et après une détermination, il entrera dans l'état St + 1 et donner la récompense Rt + 1, qui est la probabilité du processus est donc en face d'un E. souhaité Mais cela n'a rien à faire et l'agent, et le comportement liés à l'agent dans le temps t + 1, si vous voulez obtenir le meilleur q (s, a), il doit être fondé sur la politique optimale * v calculé à l'instant t + 1 ( St + 1), et est donc v * (St + 1).

Note: L'équation ci-dessus est juste une variable aléatoire Rt + 1RT + 1, qui consiste environnement p (r, s'| s, a) est déterminée, et v * (s) et Q * (s, a) sont deux constantes ( s donné, dans le cas de a).

OpenAI Gym Présentation

OpenAI Gym est un outil utilisé pour développer et renforcer les algorithmes d'apprentissage comparer. Agent y parvenir sans aucune contrainte, de sorte que vous pouvez utiliser tensorflow ou tout autre outil pour atteindre Agent. Il Environnement fournit une interface unifiée, vous pouvez utiliser cette interface pour définir une tâche d'apprentissage de renforcement en béton, en outre, il fournit également de nombreuses tâches courantes, telles que de nombreux jeux Atari.

Run Environnement

Tout d'abord, nous introduisons un jeu très simple CartPole-v0, comme indiqué ci-dessous.

Figure: Capture d'écran CartPole-v0 exécution

Ce jeu a une voiture, une force peut être appliquée à -1 ou +1 (accélération) de la voiture, la voiture a un poteau, notre objectif est nécessaire entre la position de la voiture -2,4 à 2,4, et un angle par rapport au pôle vertical entre -15 ° et 15 °. Si une analyse du point de vue physique, il a quatre variables d'état, la vitesse angulaire de la position angulaire du véhicule, la vitesse du véhicule, la tige, barre. La force exercée nous changerons la vitesse de la voiture, et donc indirectement changer la position de la voiture. Nous pouvons utiliser quelques lignes de code à exécuter CartPole-v0 ce jeu:

Le code est très simple, tout d'abord créer un environnement CartPole-v0 la cible env, une remise à zéro (RESET) rendre l'environnement dans l'état initial. Ensuite, le cycle 1000 fois, chaque fois que le premier de l'état actuel du jeu à tirer (render), puis choisir au hasard un env.action_space.sample d'action, puis appeler la fonction réelle env.step « exécution » d'action.

Observation (Observations)

MDP est observée dans l'état (Etat), Environnement la valeur de retour de l'étape 4:

  • un objet d'observation qui représente l'observation d'objets de différents environnements sont différents retour.

  • flotteur de récompense représente Récompense.

  • Fait type bool représente la tâche est terminée. Pour la tâche Episode classe sera la fin de l'Etat, dans l'état final appelé après l'étape n'a pas de sens, vous devez d'abord faire appel à reset

  • Quelques informations pour le débogage d'info

  • Nous pouvons utiliser le code suivant pour imprimer des informations sur les:

    • espaces

    Les objets de l'environnement, il y a deux espaces (espace): espace d'état (état espace) et de l'espace comportemental (espace d'action), qui définit tous les états possibles et le comportement. Nous pouvons voir CartPole-v0 de l'espace:

    Comme on peut le voir à la sortie, discrète (2) indique que la tâche a sélectionné deux action (distribution représente déplacé vers la gauche et la droite), Box (4,) montre un état représenté par un vecteur 4 dimensions, la signification physique de la voiture sont relativement origine position et la vitesse, l'angle de la tige et de la vitesse angulaire par rapport à la direction verticale. Nous pouvons vérifier la plage de valeurs avec le code suivant:

    Un gâchis d'une bonne main, cherchent la mort du roi H1Z1 est de savoir comment étape par étape dans l'abîme de leur propre
    Précédent
    Vous avez bien entendu, la nouvelle machine de Sony polarisées! L'exposition Full HD
    Prochain
    Plus de Virgil Abloh x Air Jordan 1, chaussures de liste Shawn récents sur les pieds!
    « SPL · loup » de tragédie inacceptable à la fin, avec Louis Koo agissant pour soutenir le box-office
    Une gamme complète de test sulfureuse nouvelle Mercedes-Benz E300 Coupé
    Cette vague peut me faire sauter une année pour célébrer le RNG obtenir championnat MSI 2018
    « SPL · loup » en première box-office considérable, éclatement agissant Louis Koo, se termine par la tragédie était Tucao
    2017 Chengdu Salon de l'auto exploration Pavillon: la nouvelle Volkswagen Golf GTI
    [Mars] plusieurs unités monobloc doit-voir le film, vous devez la cocher!
    « Après Wolf 2 » chaud «Dunkerque » ce feu de brûler, ce que les faibles forte?
    2017 Chengdu Salon de l'auto exploration Pavillon: la nouvelle Golf R-line
    L'une des plus belle étoile, sentant le Golf le Fleur x Converse pieds!
    Version Battle Royale de l'aube du spectateur? La nouvelle possession tour de la terreur ou mourir un peu moyenne
    « Épée » surprise remake encore, les amis: C'est le « pas cher clair », j'ai aussi Li Yunlong!