Deep Q-learning
Citas bibliográficas
Enlace de Referencia
Autores
Director
Jurado
Autor corporativo
Recolector de datos
Otros/Desconocido
Director audiovisual
Editor/Compilador
Fecha
Resumen en español
Hemos estudiado e implementado una clase de algoritmos conocidos como deep Q-learning, inspirados en la mezcla entre el aprendizaje reforzado y el aprendizaje profundo. El objetivo principal de estos algoritmos es resolver un problema de decisión de Markov en un espacio de estados muy grande, donde los algoritmos clásicos de aprendizaje por refuerzo no tienen éxito. Primero, presentamos las ideas básicas de programación dinámica y aprendizaje reforzado y algunos ejemplos de PDMs que se resuelven utilizando algoritmos model-free. Luego, presentamos y motivamos las redes neuronales. A continuación, discutimos los diferentes optimizadores, funciones de costo y arquitecturas que se suelen elegir en deep learning. Posteriormente, mezclamos estos dos conceptos y mencionamos cómo los investigadores han abordado los principales problemas que surgen al fusionar estas dos áreas, como el entrenamiento de una red neuronal con datos correlacionados. Con la ayuda de varias bibliotecas, como Gym, Tensorflow 2.0 y Keras-rl2, implementamos varios agentes DQN. Comenzamos entrenando a un agente DQN simple en un problema de control óptimo llamado Acrobot, donde la función Q se aproxima usando una red neuronal con dos capas ocultas de 32 nodos. Después de esto, implementamos tres variantes del agente DQN para tres entornos Atari diferentes. Estos nueve agentes diferentes fueron entrenados con 10 millones de pasos usando la misma arquitectura para el agente DQN. Finalmente, decidimos entrenar más a un agente de DQN, aquel usado para el juego de Breakout, y lo entrenamos por otros 5 millones de pasos. Después de hacer esto, los pesos del agente cambiaron de mínimo local, lo que le dio al agente una recompensa mucho más alta que antes. Además, los vectores de características de la última capa oculta se estudiaron utilizando un mapa tSNE en diferentes etapas de entrenamiento del entrenamiento para visualizar la representación de múltiples estados a lo largo del proceso de aprendizaje.
Resumen en inglés
We have studied and implemented a class of algorithms known as deep Q-learning, inspired by the mixture between reinforcement learning and deep learning. The main goal of these algorithms is to solve a discounted Markov decision problem in a high-dimensional state space, where classical reinforcement learning algorithms cannot succeed. First, we introduce the basic ideas of dynamic programming and reinforcement learning and some examples of MDPs that are solved using model-free algorithms. Then, we present and motivate neural networks. Next, we discuss and study the different optimizers, loss functions, and architectures that can be chosen to fit a given data set. Ultimately, we mix these two concepts together and mention how researchers have dealt with the main problems that arise when merging these two areas, such as training a neural network with correlated data. Using the aid of multiple libraries, such as Gym, Tensorflow 2.0, and Keras-rl2, we implemented numerous DQN agents. We began by training a simple DQN agent on an optimal control problem called Acrobot, where the Q function is approximated using a neural network with two 32-node hidden layers. After this, we implemented three variants of the DQN agent (DQN, double DQN (DDQN), and dueling DQN) for three different Atari environments: Pong, SpaceInvaders, and Breakout. These nine different agents were trained for 10 million steps using the same architecture for the DQN agent. Finally, we decided to take one DQN agent further, the DQN agent for the Atari breakout game and trained it for another 5 million steps. After doing this, the agent's weights changed from a local minimum to a lower local minimum, giving the agent a much higher reward than before. In addition, the feature vectors of the last hidden layer of several states were plotted using a tSNE map on different training stages of the training to visualize the representation of multiple states throughout the learning process.