Existe-t-il un moyen d'enseigner l'apprentissage par renforcement dans des applications autres que les jeux?
Les seuls exemples que je peux trouver sur Internet sont des agents de jeu. Je comprends que VNC contrôle l'entrée des jeux via le réseau de renforcement. Est-il possible de configurer cela avec, disons, un logiciel de CAO?
reinforcement-learning
applications
Mark Markrowave Charlton
la source
la source
Réponses:
Un des exemples intéressants d'apprentissage par renforcement est un hélicoptère volant autonome. J'ai eu la chance d'apprendre certaines des choses faites par Andrew Ng et d'autres récemment. Voici l'article de recherche papier . Il existe également d'autres articles similaires. Vous pouvez les rechercher sur Google si vous souhaitez en savoir plus.
Vous pouvez également le voir en action dans cette vidéo youtube .
Voici apparemment une autre application complètement différente en finance.
la source
Vous verrez de nombreux exemples de jeux dans la littérature d'apprentissage par renforcement, car les environnements de jeux peuvent souvent être codés efficacement et s'exécuter rapidement sur un seul ordinateur qui peut ensuite contenir l'environnement et l'agent. Pour les jeux classiques, tels que le backgammon, les dames, les échecs, allez, alors il y a des experts humains avec lesquels nous pouvons comparer les résultats. Certains jeux ou environnements de jeu simplifiés sont couramment utilisés pour comparer différentes approches, tout comme les chiffres manuscrits du MNIST sont utilisés pour comparer des approches d'apprentissage supervisé.
Oui. De manière informelle, vous pouvez appliquer des approches d'apprentissage par renforcement chaque fois que vous pouvez définir un problème en tant qu'agent agissant dans un environnement où il peut être informé de l'état et d'une valeur de récompense influençant les objectifs. Plus formellement, la théorie de l'apprentissage par renforcement est basée sur des solutions aux processus de décision de Markov.Par conséquent, si vous pouvez adapter votre description de problème à un MDP, les différentes techniques utilisées en RL - telles que l'apprentissage Q, SARSA, REINFORCE - peuvent être appliquées. Cet ajustement à la théorie n'a pas besoin d'être parfait pour que le système résultant fonctionne, par exemple, vous pouvez souvent traiter un état inconnu ou imparfaitement observé comme étant effectivement aléatoire pour l'agent, et considérer cette partie d'un environnement stochastique.
Voici quelques exemples d'utilisations possibles de l'apprentissage par renforcement en dehors des jeux récréatifs:
Logique de contrôle pour robot motorisé, comme apprendre à retourner des crêpes et d'autres exemples . Ici, les mesures d'environnement sont effectuées par des capteurs physiques sur le robot. Les récompenses sont données pour la réalisation d'un objectif, mais peuvent également être ajustées pour la fluidité, l'utilisation économique de l'énergie, etc. L'agent choisit des actions de bas niveau telles que le couple moteur ou la position du relais. En théorie, il peut y avoir des agents imbriqués où ceux de niveau supérieur choisissent les objectifs pour ceux de niveau inférieur - par exemple, le robot peut décider à un niveau élevé entre effectuer l'une des trois tâches qui nécessitent de se déplacer vers des emplacements différents, et à un niveau inférieur peut être décisions sur la façon de contrôler les moteurs pour déplacer le robot vers son objectif choisi.
Voitures autonomes. Bien que l'accent soit mis sur l'interprétation des capteurs - voir les marquages routiers, les piétons, etc., un système de contrôle est nécessaire pour sélectionner l'accélérateur, le frein et la direction.
Trading financier automatisé. Peut-être un jeu pour certains, il y a des conséquences claires dans le monde réel. Le signal de récompense est assez simple cependant, et RL peut être ajusté pour préférer des gains à long ou à court terme.
En théorie oui, mais je ne sais pas ce qui pourrait être disponible pour le faire dans la pratique. Vous devez également avoir un ou plusieurs objectifs à l'esprit que vous codez dans l'agent (en tant que valeurs de récompense qu'il peut observer) avant de lui donner une souris virtuelle et de définir une tâche pour dessiner quelque chose. Les jeux informatiques sont livrés avec un système de récompenses intégré comme système de notation et fournissent des commentaires fréquents, de sorte qu'un agent peut acquérir rapidement la connaissance des bonnes et des mauvaises décisions. Vous devrez remplacer ce composant de notation par quelque chose qui représente vos objectifs pour le système basé sur la CAO.
La CAO n'a rien d'intégré approprié, bien que des outils de CAO avec des simulations, tels que divers moteurs physiques ou analyse par éléments finis, pourraient vous permettre de noter des conceptions basées sur une mesure physique simulée. D'autres possibilités incluent l'analyse de la déformation, l'utilisation sans gaspillage de matériau, quelles que soient les mesures que le système CAD / CAM peut fournir pour une conception partielle ou terminée. La partie la plus délicate consiste à contraindre une conception à son but ou à son objectif et à faire en sorte que cela soit récompensé ou à intégrer les contraintes dans l'environnement; donner à un agent RL un contrôle total et sans contrainte du processus de CAO et récompenser la souche la plus faible se traduira probablement par quelque chose de très inintéressant, comme un petit cube.
la source
Il existe certainement un moyen d'introduire ce que beaucoup appellent l'apprentissage renforcé dans les applications Web, mobiles et de poste de travail réelles.
Les organisations militaires le font, l'industrie du cinéma le fait, les entreprises centrées sur le logiciel le font, et je l'ai fait pour les entreprises du Fortune 500 et les petites entreprises. Il existe des composants d'apprentissage adaptatif dans toutes sortes de composants système intégrés dans des systèmes plus grands, allant des robots de reconnaissance faciale de FaceBook aux systèmes de reconnaissance de codes postaux USPS en passant par les systèmes de contrôle de vol et de trafic autonomes. Les logiciels de conception assistée par ordinateur (CAO) sont certainement une cible viable.
La base du renforcement
Considérons une série de vecteurs décrivant des événements. Imaginez qu'ils sont divisés en deux sous-séries A et B. Un réseau neuronal (artificiel ou biologique) pourrait être formé en utilisant A.
La formation pourrait être supervisée, ce qui signifie qu'une des dimensions du vecteur est considérée comme l'étiquette et donc la variable dépendante à prévoir de manière optimale. Les autres dimensions deviennent alors les faits ou signaux d'entrée et donc les variables indépendantes à utiliser pour la prédiction. La formation peut être non supervisée à l'aide de l'extraction de fonctionnalités.
Quoi qu'il en soit, lorsqu'il est fourni avec A avant B et devrait fonctionner en production (utilisation réelle) avant l'arrivée de B, l'arrivée tardive de B présente un choix.
Le choix n ° 3 est le meilleur choix dans de nombreux cas car il contient les avantages des choix n ° 1 et n ° 2. Mathématiquement, # 3 se fait en facilitant la préemption de ce qui a été appris de la série A d'une manière ou d'une autre. Les poids nets neuronaux et les ajustements des méta-paramètres doivent être susceptibles d'être corrigés, car une nouvelle expérience indique la nécessité de le faire. Une approche naïve peut être formulée mathématiquement la fonction exponentielle inverse, qui modélise la décroissance naturelle dans de nombreux phénomènes en physique, chimie et sciences sociales.
Dans le cas des sous-séries A et B, lorsque la formule ci-dessus est implémentée d'une manière ou d'une autre dans le mécanisme d'apprentissage, la formation de A placera moins de biais sur le résultat final après la formation continue en utilisant B car le t pour A est moins que le t pour B, indiquant au mécanisme que B est plus probablement pertinent.
Si nous divisons récursivement A et B en deux, créant des sous-séries de plus en plus granulaires, l'idée ci-dessus de laisser les informations précédentes se désintégrer progressivement reste à la fois valable et valable. Le biais du réseau vers les premières informations utilisées pour la formation est l'équivalent des concepts psychologiques d'étroitesse d'esprit. Les systèmes d'apprentissage qui ont évolué dans le cerveau des mammifères semblent oublier ou se désintéresser des choses passées pour encourager l'ouverture d'esprit, ce qui n'est rien de plus que de laisser le nouvel apprentissage préempter parfois l'apprentissage précédent si les nouvelles informations contiennent des schémas d'apprentissage plus solides.
Il y a DEUX raisons pour lesquelles les données d'exemple plus récentes l'emportent progressivement sur les données d'exemple plus anciennes.
Cette nécessité de laisser progressivement diminuer l'importance de l'information préalable à mesure que l'apprentissage se poursuit est l'un des deux aspects majeurs du renforcement. Le deuxième aspect est un ensemble de concepts correctifs construits sur l'idée de signalisation de rétroaction.
Rétroaction et renforcement
Un signal de rétroaction dans l'apprentissage renforcé est l'apprentissage automatique équivalent à des concepts psychologiques familiers comme la douleur, le plaisir, le contentement et le bien-être. Le système d'apprentissage reçoit des informations pour guider la formation au-delà de l'objectif d'extraction des caractéristiques, d'indépendance des groupements ou de recherche d'une matrice de poids net neuronal qui se rapproche de la relation entre les caractéristiques des événements d'entrée et leurs étiquettes.
Les informations fournies peuvent provenir en interne d'une reconnaissance de formes préprogrammée ou en externe d'une récompense et d'une punition, comme c'est le cas pour les mammifères. Les techniques et algorithmes développés en apprentissage automatique renforcé utilisent fréquemment ces signaux supplémentaires (en utilisant le découpage temporel dans le traitement) ou en utilisant en continu l'indépendance des unités de traitement des architectures de traitement parallèles.
Ce travail a été lancé au MIT par Norbert Wiener et présenté dans son livre Cybernetics (MIT Press 1948). Le mot Cybernétique vient d'un mot plus ancien qui signifie pilotage de navires . Le mouvement automatique d'un gouvernail pour maintenir le cap a peut-être été le premier système de rétroaction mécanique. Votre moteur de tondeuse à gazon en possède probablement un.
Applications adaptatives et apprentissage
Une adaptation simple en temps réel pour une position de gouvernail ou un accélérateur de tondeuse à gazon n'apprend pas. Une telle adaptation est généralement une forme de contrôle PID linéaire. La technologie d'apprentissage automatique en expansion aujourd'hui englobe l'évaluation et le contrôle de systèmes non linéaires complexes que les mathématiciens appellent chaotiques.
Par chaotique, ils ne signifient pas que les processus décrits sont frénétiques ou désorganisés. Les chaoticiens ont découvert il y a des décennies que de simples équations non linéaires pouvaient conduire à un comportement hautement organisé. Ce qu'ils signifient, c'est que le phénomène est trop sensible aux légères modifications pour trouver un algorithme ou une formule fixe pour les prédire.
La langue est comme ça. La même déclaration dit qu'avec une douzaine d'inflexions vocales différentes peut signifier une douzaine de choses différentes. La phrase anglaise «Vraiment» en est un exemple. Il est probable que les techniques de renforcement permettront aux futures machines de distinguer avec de fortes probabilités de succès les différentes significations de cette affirmation.
Pourquoi les jeux d'abord?
Les jeux ont un ensemble très simple et facilement défini de scénarios possibles. L'un des principaux contributeurs à l'avènement de l'ordinateur, John von Neumann, a fait valoir dans Theory of Games and Economic Behavior , un livre qu'il a co-écrit avec Oskar Morgenstern, que toute planification et prise de décision est en fait un jeu de diverses complexités.
Considérez les jeux comme l'ensemble d'exemples de formation de la collection de cerveaux qui, avec le temps, créeront des systèmes qui peuvent déterminer la signification d'une déclaration comme les personnes instruites peuvent partir de trois sources d'indices.
Au-delà des échecs et du jeu de go
Le long du chemin des jeux aux systèmes linguistiques avec une compréhension précise et des capacités d'écoute plus profondes, il existe plusieurs applications de l'apprentissage renforcé qui sont beaucoup plus importantes pour la terre et l'expérience humaine.
Ces quatre et bien d'autres sont bien plus importants que l'accumulation de richesses via des échanges automatisés à grande vitesse ou des compétitions de jeux gagnants, deux intérêts d'apprentissage automatique égocentriques qui n'ont qu'un impact sur une ou deux générations de la famille d'une seule personne.
La richesse et la renommée sont ce que l'on appelle en théorie des jeux un jeu à somme nulle . Ils produisent autant de pertes qu'il y a de gains si vous considérez la philosophie de la règle d'or supérieure que les autres et leurs familles sont d'égale importance pour nous.
Logiciel d'apprentissage renforcé pour la CAO (conception assistée par ordinateur)
La conception assistée par ordinateur est le précurseur naturel de la conception informatique (sans l'aide des humains), tout comme les bris antiblocage conduisent naturellement à des véhicules entièrement autonomes.
Considérez la commande: «Créez-moi un porte-savon pour ma douche qui maximise les chances que ma famille puisse saisir le savon du premier coup sans ouvrir les yeux et minimise la difficulté à garder le savon et les surfaces de douche propres. Voici les hauteurs de les membres de ma famille et quelques photos de la douche. " Ensuite, une imprimante 3D sortirait l'appareil, prêt à être connecté, avec les instructions d'installation.
Bien sûr, un tel système de CD (CAD sans le A) devrait être formé à l'entretien ménager, au comportement humain sans vision, aux moyens d'attacher des éléments à la tuile, aux outils et aux capacités d'entretien domestique du consommateur moyen, aux capacités de l'imprimante 3D et plusieurs autres choses.
De tels développements dans l'automatisation de la fabrication commenceraient probablement par un apprentissage renforcé de commandes plus simples telles que «Fixez ces deux pièces à l'aide de fixations produites en masse et des meilleures pratiques». Le programme de CAO sélectionnerait ensuite le matériel parmi les vis, les rivets, les adhésifs et d'autres options, posant peut-être au concepteur des questions sur la température de fonctionnement et les plages de vibrations. Le choix, la position et l'angle seraient ensuite ajoutés à l'ensemble approprié de pièces CAO, de dessins d'assemblage et de nomenclatures.
la source